From: <fli...@us...> - 2009-10-24 23:19:26
|
Revision: 271 http://structuremap.svn.sourceforge.net/structuremap/?rev=271&view=rev Author: flimflan Date: 2009-10-24 23:19:17 +0000 (Sat, 24 Oct 2009) Log Message: ----------- Resolved Code Access Security issue when running under ASP.NET attempting to read default config file (reported by Eric Sowell). - When configuration your container, you must specify IgnoreDefaultFile = true Modified Paths: -------------- trunk/Source/StructureMap/Configuration/ConfigurationParserBuilder.cs trunk/Source/StructureMap/Emitting/DynamicAssembly.cs Modified: trunk/Source/StructureMap/Configuration/ConfigurationParserBuilder.cs =================================================================== --- trunk/Source/StructureMap/Configuration/ConfigurationParserBuilder.cs 2009-10-19 02:59:11 UTC (rev 270) +++ trunk/Source/StructureMap/Configuration/ConfigurationParserBuilder.cs 2009-10-24 23:19:17 UTC (rev 271) @@ -126,9 +126,10 @@ private void addConfigurationFromStructureMapConfig(ICollection<ConfigurationParser> list) { -// Pick up the configuration in the default StructureMap.config - string pathToStructureMapConfig = GetStructureMapConfigurationPath(); - if (shouldUseStructureMapConfigFileAt(pathToStructureMapConfig)) + if (_ignoreDefaultFile) return; + // Pick up the configuration in the default StructureMap.config + var pathToStructureMapConfig = GetStructureMapConfigurationPath(); + if ((_useAndEnforceExistenceOfDefaultFile || File.Exists(pathToStructureMapConfig))) { _log.Try(() => { @@ -138,14 +139,7 @@ } } - private bool shouldUseStructureMapConfigFileAt(string pathToStructureMapConfig) - { - return - (_useAndEnforceExistenceOfDefaultFile || - File.Exists(pathToStructureMapConfig)) && !_ignoreDefaultFile; - } - public static ConfigurationParser[] GetParsers(XmlNode node, GraphLog log) { var builder = new ConfigurationParserBuilder(log); Modified: trunk/Source/StructureMap/Emitting/DynamicAssembly.cs =================================================================== --- trunk/Source/StructureMap/Emitting/DynamicAssembly.cs 2009-10-19 02:59:11 UTC (rev 270) +++ trunk/Source/StructureMap/Emitting/DynamicAssembly.cs 2009-10-24 23:19:17 UTC (rev 271) @@ -16,7 +16,6 @@ private AssemblyBuilder _assemblyBuilder; private bool _isCompiled; private ModuleBuilder _module; - private string DLLName; public DynamicAssembly(string name) { @@ -46,14 +45,9 @@ assemName.CultureInfo = new CultureInfo("en"); assemName.SetPublicKeyToken(null); - DLLName = Name + ".dll"; - _assemblyBuilder = AppDomain.CurrentDomain.DefineDynamicAssembly(assemName, AssemblyBuilderAccess.RunAndSave); - //_assemblyBuilder = AppDomain.CurrentDomain.DefineDynamicAssembly(assemName, AssemblyBuilderAccess.Run); + _assemblyBuilder = AppDomain.CurrentDomain.DefineDynamicAssembly(assemName, AssemblyBuilderAccess.Run); - _module = _assemblyBuilder.DefineDynamicModule(Name, DLLName); - - - //_module = _assemblyBuilder.DefineDynamicModule(Name); + _module = _assemblyBuilder.DefineDynamicModule(Name); } @@ -84,13 +78,8 @@ newClass.Bake(); } - //_assemblyBuilder.Save(_name + ".dll"); - - //assemBuilder.Save(DLLName); - //Assembly assem = AppDomain.CurrentDomain.Load(this.Name); _isCompiled = true; return _assemblyBuilder; - //return assem; } } } \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |