Bug 18184 - Username with backslash causes Compiler Error: CS0006: Metadata file `/tmp/<DOMAIN/>/<username/>-temp-aspnet-0/5ed74d00/App_global.asax_34cccb99.dll' could not be found
Summary: Username with backslash causes Compiler Error: CS0006: Metadata file `/tmp/<D...
Status: NEW
Alias: None
Product: Class Libraries
Classification: Mono
Component: System.Web (show other bugs)
Version: 3.2.x
Hardware: PC Linux
: --- normal
Target Milestone: Untriaged
Assignee: Bugzilla
URL:
Depends on:
Blocks:
 
Reported: 2014-03-05 08:38 UTC by Tim Banchi
Modified: 2014-03-05 09:24 UTC (History)
1 user (show)

See Also:
Tags:
Is this bug a regression?: ---
Last known good build:


Attachments

Description Tim Banchi 2014-03-05 08:38:24 UTC
If a backslash exists in the username (eg when likewise-open is used) a Compiler Error occurs:

Compiler Error Message: CS0006: Metadata file `/tmp/<domain/>/<username/>-temp-aspnet-0/5ed74d00/App_global.asax_34cccb99.dll' could not be found
/Default.aspx

Version information: Mono Runtime Version: 2.10.8.1 (Debian 2.10.8.1-5ubuntu2); 
ASP.NET Version: 4.0.30319.1
Distribution: Ubuntu 13.10 32bit

most likely reason for the bug: 
the backslash in the username is translated into a forward slash when looking for the dll in the tmp directory

reproduce bug:
1) login with a user which has a backslash in its username (eg likewise-open creates a username consisting of <domain/>\<username/>)
2) in monodevelop create empty C# ASP.NET Web Application
3) compile and run 
--> Comilation Error:
Server Error in '/' Application
Compilation Error

Description: Error compiling a resource required to service this request. Review your source file and modify it to fix this error.

Compiler Error Message: CS0006: Metadata file `/tmp/<domain/>/<username/>-temp-aspnet-0/5ed74d00/App_global.asax_34cccb99.dll' could not be found
/Default.aspx

Show Detailed Compiler Output:
dmcs /target:library /lib:"/home/likewise-open/<DOMAIN/>/<username/>/Documents/test9999/test9999/bin" /debug+ /optimize- /warn:4 /out:"/tmp/<DOMAIN/>\<username/>-temp-aspnet-0/5ed74d00/App_Web_17ca7bdd.dll" /r:"/usr/lib/mono/4.0/mscorlib.dll" /r:"/usr/lib/mono/gac/Microsoft.CSharp/4.0.0.0__b03f5f7f11d50a3a/Microsoft.CSharp.dll" /r:"/usr/lib/mono/gac/System/4.0.0.0__b77a5c561934e089/System.dll" /r:"/usr/lib/mono/gac/System.Configuration/4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll" /r:"/usr/lib/mono/gac/System.Web/4.0.0.0__b03f5f7f11d50a3a/System.Web.dll" /r:"/usr/lib/mono/gac/System.Data/4.0.0.0__b77a5c561934e089/System.Data.dll" /r:"/usr/lib/mono/gac/System.Web.Services/4.0.0.0__b03f5f7f11d50a3a/System.Web.Services.dll" /r:"/usr/lib/mono/gac/System.Xml/4.0.0.0__b77a5c561934e089/System.Xml.dll" /r:"/usr/lib/mono/gac/System.Drawing/4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll" /r:"/usr/lib/mono/gac/System.EnterpriseServices/4.0.0.0__b03f5f7f11d50a3a/System.EnterpriseServices.dll" /r:"/usr/lib/mono/gac/System.IdentityModel/4.0.0.0__b77a5c561934e089/System.IdentityModel.dll" /r:"/usr/lib/mono/gac/System.Runtime.Serialization/4.0.0.0__b77a5c561934e089/System.Runtime.Serialization.dll" /r:"/usr/lib/mono/gac/System.Xaml/4.0.0.0__b77a5c561934e089/System.Xaml.dll" /r:"/usr/lib/mono/gac/System.ServiceModel/4.0.0.0__b77a5c561934e089/System.ServiceModel.dll" /r:"/usr/lib/mono/gac/System.ServiceModel.Web/4.0.0.0__31bf3856ad364e35/System.ServiceModel.Web.dll" /r:"/usr/lib/mono/gac/System.Core/4.0.0.0__b77a5c561934e089/System.Core.dll" /r:"/usr/lib/mono/gac/System.Web.Extensions/4.0.0.0__31bf3856ad364e35/System.Web.Extensions.dll" /r:"/usr/lib/mono/gac/System.Data.DataSetExtensions/4.0.0.0__b77a5c561934e089/System.Data.DataSetExtensions.dll" /r:"/usr/lib/mono/gac/System.Xml.Linq/4.0.0.0__b77a5c561934e089/System.Xml.Linq.dll" /r:"/usr/lib/mono/gac/System.ComponentModel.DataAnnotations/4.0.0.0__31bf3856ad364e35/System.ComponentModel.DataAnnotations.dll" /r:"/usr/lib/mono/gac/System.Web.DynamicData/4.0.0.0__31bf3856ad364e35/System.Web.DynamicData.dll" /r:"/usr/lib/mono/gac/System.Data.Linq/4.0.0.0__b77a5c561934e089/System.Data.Linq.dll" /r:"/usr/lib/mono/gac/System.Web.ApplicationServices/4.0.0.0__31bf3856ad364e35/System.Web.ApplicationServices.dll" /r:"/home/likewise-open/<DOMAIN/>/<username/>/Documents/test9999/test9999/bin/test9999.dll" /r:"/tmp/<domain/>/<username/>-temp-aspnet-0/5ed74d00/App_global.asax_34cccb99.dll"  /nowarn:0169 /d:DEBUG  -- "/tmp/<DOMAIN/>\<username/>-temp-aspnet-0/5ed74d00/App_Web_17ca7bdd_0.cs" 


bypass bug:
1) copy directory /tmp/<domain/>\<username/>-temp-aspnet-0/5ed74d00/ to /tmp/<domain/>/<username/>-temp-aspnet-0/
2) in the browser press F5 to refresh the website
Comment 1 Marek Safar 2014-03-05 08:47:06 UTC
Please upgrade to recent mono, preferably 3.2.8 or newer and test it again
Comment 2 Tim Banchi 2014-03-05 09:17:44 UTC
Hello Marek,

I updated to 3.2.8 and still the same issue. 

I get:
System.Web.Compilation.CompilationException
CS0006: Metadata file `/tmp/<domain/>/<username/>-temp-aspnet-0/63b7d575/App_global.asax_bf3eb0e.dll' could not be found

Description: Error compiling a resource required to service this request. Review your source file and modify it to fix this error.

Details: CS0006: Metadata file `/tmp/<domain/>/<username/>-temp-aspnet-0/63b7d575/App_global.asax_bf3eb0e.dll' could not be found

Error origin: Compiler

Error source file: /Default.aspx
Exception stack trace:
at System.Web.Compilation.AssemblyBuilder.BuildAssembly (System.Web.VirtualPath virtualPath, System.CodeDom.Compiler.CompilerParameters options) [0x00365] in /usr/src/packages/BUILD/mcs/class/System.Web/System.Web.Compilation/AssemblyBuilder.cs:853 at System.Web.Compilation.AssemblyBuilder.BuildAssembly (System.Web.VirtualPath virtualPath) [0x00000] in /usr/src/packages/BUILD/mcs/class/System.Web/System.Web.Compilation/AssemblyBuilder.cs:731 at System.Web.Compilation.BuildManager.GenerateAssembly (System.Web.Compilation.AssemblyBuilder abuilder, System.Web.Compilation.BuildProviderGroup group, System.Web.VirtualPath vp, Boolean debug) [0x00264] in /usr/src/packages/BUILD/mcs/class/System.Web/System.Web.Compilation/BuildManager.cs:846 at System.Web.Compilation.BuildManager.BuildInner (System.Web.VirtualPath vp, Boolean debug) [0x0011c] in /usr/src/packages/BUILD/mcs/class/System.Web/System.Web.Compilation/BuildManager.cs:469 

Version Information: 3.2.8 (tarball Thu Feb 20 17:38:41 UTC 2014); ASP.NET Version: 4.0.30319.17020

bypass bug:
Again, if I copy the compiled dlls to the directory without backslash:
cp -R <domain/>\\<username/>-temp-aspnet-0/63b7d575/ <domain/>/<username/>-temp-aspnet-0/

the application works.

Note You need to log in before you can comment on or make changes to this bug.