2006-04-07 Sebastien Pouliot * FileIOPermission.cs: Ensure the "bad" path characters match the OS ones. Reworked the code to avoid the modifiable array trap present in Fx 1.x and to be more precise in the 2.0 profile. 2005-11-14 Carlos Alberto Cortez * IsolatedStoragePermission.cs: Updated FromXml with the latest signature modifications to Parse methods inside System ns. 2005-11-09 Sebastien Pouliot * EnvironmentPermissionAccess.cs: Added missing [Serializable] (2.0). * FileIOPermissionAccess.cs: Added missing [Serializable] (2.0). * PermissionState.cs: Added missing [Serializable] (2.0). * ReflectionPermissionFlag.cs: Added missing [Serializable] (2.0). * RegistryPermissionAccess.cs: Added missing [Serializable] (2.0). * UIPermissionClipboard.cs: Added missing [Serializable] (2.0). * UIPermissionWindow.cs: Added missing [Serializable] (2.0). 2005-09-22 Sebastien Pouliot * ReflectionPermissionAttribute.cs: TypeInformation is obsolete. * SecurityAction.cs: *Choice security actions are removed in 2.0 RC. 2005-06-22 Sebastien Pouliot * FileIOPermission.cs, IsolatedStorageFilePermission.cs, KeyContainerPermission.cs, RegistryPermission.cs: better comments on remaining TODO (all 2.0 related) to ease grepping. 2005-06-16 Sebastien Pouliot * PrincipalPermission.cs: Fixed IsSubsetOf method when permission is empty. 2005-06-10 Sebastien Pouliot * StrongNamePublicKeyBlob.cs: Reduce casts in Equals. 2005-06-09 Sebastien Pouliot * all: Added ComVisible(true) and some Obsolete attributes for NET_2_0 2005-06-07 Sebastien Pouliot * IsolatedStorageFilePermission.cs: Removed unrequired TODO on ctor. Added ComVisible for NET_2_0. * GacIdentityPermissionAttribute.cs: Removed FIXME. Added ComVisible for NET_2_0. 2005-05-18 Sebastien Pouliot * HostProtectionAttribute.cs: Fixes flag cleaning logical operation (found by Jordi). * SecurityPermissionAttribute.cs: Fixes flag cleaning logical operation (this is the original sinner ;-). 2005-05-16 Sebastien Pouliot * IsolatedStoragePermission.cs: Added UserQuota attribute in XML. 2005-05-12 Atsushi Enomoto * PermissionSetAttribute.cs : MiniParser->SmallXmlParser changes. 2005-04-26 Sebastien Pouliot * IBuiltInPermission.cs: Fixed index values for GacIdentityPermission and KeyContainerPermission. Removed DataProtectionPermission. * IsolatedStorageContainment.cs: Fixed ApplicationIsolationByUser value to 0x15. * UrlIdentityPermission.cs: Fixed differences between 1.x and 2.0. 2005-03-24 Sebastien Pouliot * FileIOPermission.cs: Now use InsecureGetFullPath to add paths to it's lists (as GetFullPath is more restricted than the permission). Removed unrequired use of GetFullPath in union and subset ops. * IsolatedStoragePermission.cs: Added InheritanceDemand for ControlEvidence and ControlPolicy on class. 2005-03-17 Sebastien Pouliot * IsolatedStorageContainment.cs: Add missing BOOTSTRAP_NET_2_0 to new enum values. Fix bug #73046. 2005-03-17 Martin Baulig * SecurityAction.cs: Use `#if NET_2_0 || BOOTSTRAP_NET_2_0'. 2005-02-24 Sebastien Pouliot * GacIdentityPermission.cs: Fixed warning. * StrongNameIdentityPermission.cs: Added support for multiple entries for NET_2_0 profile (required for SecurityAction.*DemandChoice). 2005-01-24 Sebastien Pouliot * FileIOPermission.cs: Removed old commented code and a LAMESPEC (as current documentation has been corrected). 2005-01-19 Sebastien Pouliot * SiteIdentityPermission.cs: Fix case were the wildcard '*' is present but not the first character of the site. 2005-01-11 Sebastien Pouliot * PermissionSetAttribute.cs: Throw proper exception if XML cannot be decoded. Actually load (not just creates) the XML permissions. 2005-01-08 Sebastien Pouliot * PermissionSetAttribute.cs: Implemented Hex property (2.0) now that it is documented. * RegistryPermission.cs: Added text to MonoTODO, i.e. lack of access control support. * KeyContainerPermissionFlags.cs: Fixed values for ViewAcl and ChangeAcl (a hole as been left). This also corrects AllFlags. 2005-01-05 Sebastien Pouliot * DataProtectionPermission.cs: Moving to System.Security assembly. * DataProtectionPermissionAttribute.cs: Moving to System.Security.dll. * DataProtectionFlags.cs: Moving to System.Security assembly. * KeyContainerPermissionFlags.cs: Added ViewAcl and ChangeAcl (added after beta1). Corrected AllFlags (with new entries). 2004-11-26 Sebastien Pouliot * FileIOPermission.cs: * IsolatedStorageFilePermission.cs: * PrincipalPermission.cs: Added ComVisible attributes to match 2.0 October Preview. 2004-10-15 Sebastien Pouliot * PrincipalPermission.cs: Fixed bug in Intersect (thanks to Alain Normandin). Changed XML tag to "Permission" (not "IPermission"). 2004-10-05 Sebastien Pouliot * PrincipalPermission.cs: Fixed bug where a change to a permission (e.g. Copy, Union) could affect multiple instances. Fixed FromXml to clear existing entries. 2004-09-16 Sebastien Pouliot * SiteIdentityPermission.cs: Fixed warning (l4) for unused variable. * StrongNameIdentityPermissionAttribute.cs: Fixed warning (l4)... 2004-09-04 Sebastien Pouliot * FileIOPermission.cs: Reworked to support partial paths, non-c14n paths (like ..) and PathDiscovery in XML. Now runs MSDN sample. * RegistryPermission.cs: Removed unrequired variable. 2004-09-03 Sebastien Pouliot * EnvironmentPermission.cs: Fixed Unrestricted in FromXml. * RegistryPermission.cs: Completed implementation wrt Fx 1.1. 2004-09-03 Sebastien Pouliot * EnvironmentPermission.cs: Fixed GetPathList which has little differences between Fx 1.1 and 2.0. Required to run the MSDN samples. * FileDialogPermission.cs: Fixed IsSubsetOf and Intersect. * RegistryPermission.cs: Fixed ToXml to avoid NullReferenceException. Required to run the MSDN library samples. * SecurityPermission.cs: Return null for an empty intersection. Required to run the MSDN library samples. * SiteIdentityPermission.cs: Implemented wildcard support in Intersect, IsSubsetOf and Union. * StrongNameIdentityPermission.cs: Implemented wildcard support in Intersect, IsSubsetOf and Union. Fixed ToXml to pass the MSDN samples. * UrlIdentityPermission.cs: Implemented wildcard support in Intersect, IsSubsetOf and Union. Fixed difference between Fx1.1 and 2.0 in Copy. 2004-09-02 Sebastien Pouliot * SiteIdentityPermission.cs: Updated to match latest unit tests, i.e. match Fx 1.1 on NET_1_1 and Fx 2.0 (beta 1) in NET_2_0. * StrongNameIdentityPermission.cs: Updated to match latest unit tests, i.e. match Fx 1.1 on NET_1_1 and Fx 2.0 (beta 1) in NET_2_0. * UrlIdentityPermission.cs: Updated to match latest unit tests, i.e. match Fx 1.1 on NET_1_1 and Fx 2.0 (beta 1) in NET_2_0. 2004-09-01 Sebastien Pouliot * ZoneIdentityPermission.cs: Do not include "Zone" attribute in XML if zone == NoZone (so the permission can be considered as empty). 2004-08-20 Sebastien Pouliot * SiteIdentityPermission.cs: Basic (without wildcards) implementation for Intersect, IsSubsetOf and Union. Fixed to pass all new unit tests. * UrlIdentityPermission.cs: Basic (without wildcards) implementation for Intersect, IsSubsetOf and Union. Fixed to pass all new unit tests. 2004-08-19 Sebastien Pouliot * CodeAccessSecurityAttribute.cs: Namespace clean-up (removing System.) * EnvironmentPermission.cs: Common exception for flags validation. Fixed Fx 2.0 return values (String.Empty not null). * EnvironmentPermissionAttribute.cs: Namespace clean-up. * FileIOPermission.cs: Updated to use the common template. Added Fx 2.0 properties. * FileIOPermissionAttribute.cs: Added Fx 2.0 properties. * HostProtectionAttribute.cs: Namespace clean-up (removing System.) * IsolatedStoragePermissionAttribute.cs: Namespace cleanup. * KeyContainerPermissionAttribute.cs: Added default values. Removed unrequired flags validations. Can now create unrestricted permissions. * PermissionSetAttribute.cs: Added new Fx 2.0 Hex property. * PrincipalPermission.cs: Updated to use the common template. * PrincipalPermissionAttribute.cs: Namespace cleanup. * PublisherIdentityPermissionAttribute.cs: Namespace cleanup. * RegistryPermission.cs: Updated to use the common template. * RegistryPermissionAttribute.cs: Added Fx 2.0 properties. * SecurityAttribute.cs: Namespace clean-up (removing System.) * SecurityPermission.cs: Updated to use the common template. Now pass all unit tests. * SiteIdentityPermission.cs: Updated to use the common template. * SiteIdentityPermissionAttribute.cs: Move unrestricted responsability check to SiteIdentityPermission constructor. * StrongNamePermissionAttribute.cs: Move unrestricted responsability check to StrongNameIdentityPermission constructor. * UrlIdentityPermission.cs: Updated to use the common template. * UrlIdentityPermissionAttribute.cs: Move unrestricted responsability check to UrlIdentityPermission constructor. * ZoneIdentityPermissionAttribute.cs: Move unrestricted responsability check to ZoneIdentityPermission constructor. 2004-08-18 Sebastien Pouliot * IsolatedStorageContainment.cs: Added new enums values for NET_2_0. * IsolatedStorageFilePermissionAttribute.cs: Removed unrequired using clause. * IsolatedStorageFilePermission.cs: Updated to use the common template. Completed TODOs and now pass all unit tests. * IsolatedStoragePermission.cs: Updated to use the common template. Completed TODOs and now pass all unit tests. * GacIdentityPermission.cs: Update to use the common template. Now pass all unit tests. * GacIdentityPermissionAttribute.cs: Added FIXME comment. 2004-08-17 Sebastien Pouliot * StrongNameIdentityPermission.cs: Update to use the common template. Completed TODOs and now pass all unit tests. * StrongNamePermissionAttribute.cs: Fixed public key convertion (as it wasn't base64 encoded). * StrongNamePublicKeyBlob.cs: Made static FromString() more robust. * ZoneIdentityPermission.cs: Update to use the common template. Now pass all unit tests. 2004-08-17 Sebastien Pouliot * DataProtectionPermission.cs: New permission for NET_2_0. Use common permission template. * DataProtectionPermissionAttribute.cs: New security attribute for NET_2_0. * DataProtectionPermissionFlags.cs: New flags for NET_2_0. * HostProtectionAttribute.cs: New security attribute for NET_2_0. * HostProtectionPermission.cs: New internal permission for NET_2_0. Use common permission template. * KeyContainerPermission.cs: New permission for NET_2_0. Use common permission template. * KeyContainerPermissionAccessEntry.cs: New class for NET_2_0. * KeyContainerPermissionAccessEntryCollection.cs: New for NET_2_0. * KeyContainerPermissionAccessEntryEnumerator.cs: New for NET_2_0. * KeyContainerPermissionAttribute.cs: New security attrib for NET_2_0. * KeyContainerPermissionFlags.cs: New flags for NET_2_0. 2004-08-17 Sebastien Pouliot * EnvironmentPermission.cs: Updated to use the common template. * FileDialogPermission.cs: Updated to use the common template. * PublisherIdentityPermission.cs: Updated to use the common template. * ReflectionPermission.cs: Updated to use the common template. 2004-08-17 Sebastien Pouliot * IBuiltInPermission.cs: Added a new internal enum to store the index of all corlib's permissions (as the index can changes in newer versions of the framework, e.g. 2.0). * SecurityAttribute.cs: Removed the validation when setting the Action property to match MS implementation. * UIPermission.cs: Update to use the common template. Completed TODOs and now pass all unit tests. 2004-08-05 Sebastien Pouliot * PrincipalPermission.cs: Added Equals/GetHashCode for NET_2_0. * SecurityPermissionAttribute.cs: Added new BindingRedirects property for NET_2_0. 2004-08-04 Sebastien Pouliot * GacIdentityPermission.cs: New. for NET_2_0 * GacIdentityPermissionAttribute.cs: New. for NET_2_0 * SecurityAction.cs: Added new "Choice" enums for NET_2_0. Removed old and empty XML comments. * ZoneIdentityPermission.cs: NoZone is a subset of all SecurityZone. 2004-08-03 Sebastien Pouliot * ZoneIdentityPermission.cs: Reordered attributes in ToXml and added missing Zone attribute. Fixed buglets wrt new unit tests. Added globalization to exceptions. 2004-07-14 Sebastien Pouliot * HostProtectionResource.cs: New enum for Fx 2.0. 2004-07-07 Sebastien Pouliot * FileDialogPermission.cs: Removed the unrequired override ToString from the NET_2_0 profile. 2004-06-10 Gert Driesen * StrongNameIdentityPermission.cs: removed extra useless finalizer to fix public API signature 2004-04-25 Andreas Nahr * StrongNamePublicKeyBlob: Call invariant Char.ToLower 2004-03-22 Sebastien Pouliot * PublisherIdentityPermission.cs: Now use CryptoConvert for Hexadecimal convertions. * PublisherIdentityPermissionAttribute.cs: Now use CryptoConvert for Hexadecimal convertions. 2004-01-27 Sebastien Pouliot * FileIOPermission.cs: Added missing ArgumentNullException to constructors. 2004-01-26 Sebastien Pouliot * PermissionSetAttribute.cs: Implemented CreatePermissionSet. 2003-12-29 Sebastien Pouliot * EnvironmentPermission.cs: Fixed return value to match unit tests. * EnvironmentPermissionAttribute.cs: Updated CreatePermission for Unrestricted permission. Updated AttributeUsage using 1.2 documentation. * FileDialogPermissionAttribute.cs: Updated CreatePermission for Unrestricted permission. Updated AttributeUsage using 1.2 documentation. * FileIOPermissionAttribute.cs: Updated CreatePermission for Unrestricted permission. Updated AttributeUsage using 1.2 documentation. * IsolatedStorageFilePermissionAttribute.cs: Implemented CreatePermission method. Updated AttributeUsage using 1.2 documentation. * IsolatedStoragePermissionAttribute.cs: Updated AttributeUsage using 1.2 documentation. * PermissionSetAttribute.cs: Prepared CreatePermissionSet. Updated AttributeUsage using 1.2 documentation. * PrincipalPermissionAttribute.cs: Updated CreatePermission for Unrestricted permission. Fixed AttributeUsage (more limited than others). * PublisherIdentityPermissionAttribute.cs: Updated CreatePermission to throw ArgumentException for Unrestricted permission. Updated AttributeUsage using 1.2 documentation. * ReflectionPermissionAttribute.cs: Updated CreatePermission for Unrestricted permission. Updated AttributeUsage using 1.2 documentation. * RegistryPermission.cs: Implemented IsUnrestricted for unit tests. * RegistryPermissionAttribute.cs: Implemented CreatePermission method. Updated AttributeUsage using 1.2 documentation. * SecurityAttribute.cs: m_Action is now assigned in constructor. * SecurityPermission.cs: Completed class. * SecurityPermissionAttribute.cs: Updated CreatePermission for Unrestricted permission. Added missing [Serializable] attribute and UnmanagedCode property. Changed -= to &= to preserve flags (e.g. setting a flags to false more than one time). * SecurityPermissionFlag.cs: Cleanup unused XML tags. * SiteIdentityPermission.cs: Fixed exception for constructor and Site property to match unit tests. * SiteIdentityPermissionAttribute.cs: Updated CreatePermission for Unrestricted permission. Updated AttributeUsage using 1.2 documentation. * StrongNameIdentityPermission.cs: Fixed default values for Name and Version to match unit tests. * StrongNamePermissionAttribute.cs: Updated CreatePermission to throw ArgumentException for Unrestricted permission. Updated AttributeUsage using 1.2 documentation. * UIPermission.cs: Fixed default values in constructor to match unit tests. * UIPermissionAttribute.cs: Updated CreatePermission to throw ArgumentException for Unrestricted permission. Fixed strange case for null URL. Updated AttributeUsage using 1.2 documentation. * UrlIdentityPermission.cs: Url property now throws an exception to match unit tests. * UrlIdentityPermissionAttribute.cs: Updated CreatePermission to throw ArgumentException for Unrestricted permission. Updated AttributeUsage using 1.2 documentation. * ZoneIdentityPermissionAttribute.cs: Updated CreatePermission to throw ArgumentException for Unrestricted permission. Updated AttributeUsage using 1.2 documentation. 2003-08-05 Duncan Mak * FileIOPermission.cs (GetTokenIndex): Add implementation for IBuiltInPermission for Sebastien. * IsolatedStorageFilePermission.cs: * RegistryPermission.cs: * SecurityPermission.cs * SiteIdentityPermission.cs: * UIPermission.cs: * UrlIdentityPermission.cs: (FromXml); (ToXml): Implemented. 2003-08-04 Duncan Mak * StrongNamePublicKeyBlob.cs (FromString): Added new internal factory method to create a new blob from a string. 2003-08-03 Sebastien Pouliot * IBuiltInPermission.cs: New. Undocumented interface used by most <*>Permission classes. * EnvironmentPermission.cs: Added IBuiltInPermission.GetTokenIndex. Returns 0. * FileDialogPermission.cs: Added IBuiltInPermission.GetTokenIndex. Returns 1. * IsolatedStorageFilePermission.cs: Added IBuiltInPermission. GetTokenIndex. Returns 3. * PrincipalPermission.cs: Added IBuiltInPermission.GetTokenIndex. Returns 8. * PublisherIdentityPermission.cs: Added IBuiltInPermission. GetTokenIndex. Returns 9. * ReflectionPermission.cs: Added IBuiltInPermission.GetTokenIndex. Returns 4. * RegistryPermission.cs: Added IBuiltInPermission.GetTokenIndex. Returns 5. * SecurityPermission.cs: Added IBuiltInPermission.GetTokenIndex. Returns 6. * SiteIdentityPermission.cs: Added IBuiltInPermission.GetTokenIndex. Returns 10. * StrongNameIdentityPermission.cs: Added [Serializable] and IBuiltInPermission.GetTokenIndex. Returns 11. * UIPermission.cs: Added IBuiltInPermission.GetTokenIndex. Returns 7. * UrlIdentityPermission.cs: Added IBuiltInPermission.GetTokenIndex. Returns 12. * ZoneIdentityPermission.cs: Added IBuiltInPermission.GetTokenIndex. Returns 13. 2003-07-01 Sebastien Pouliot * ReflectionPermission.cs: Fixed compilation warning. * PrincipalPermission.cs: Completed class implementation. * PrincipalPermissionAttribute.cs: Completed class implementation. 2003-06-29 Sebastien Pouliot * ReflectionPermission.cs: Completed class implementation. * ReflectionPermissionAttribute.cs: Completed class implementation. 2003-06-28 Sebastien Pouliot * CodeAccessSecurityAttribute.cs: Added [Serializable] to class. * EnvironmentPermission.cs: Completed class implementation. * EnvironmentPermissionAttribute.cs: Corrected 1.1 signature and completed class implementation. * FileDialogPermission.cs: New. Complete implementation. * FileDialogPermissionAttribute.cs: Completed class implementation. * FileIOPermissionAttribute.cs: Corrected 1.1 signature and completed class implementation. * IsolatedStorageFilePermission.cs: New. Stubbed missing class. * PrincipalPermission.cs: New. Stubbed missing class. * PublisherIdentityPermission.cs: Completed class implementation. * PublisherIdentityPermissionAttribute.cs: New. Complete implementation. * RegistryPermission.cs: New. Stubbed missing class. * SecurityPermission.cs: Added missing MonoTODO attributes. * SecurityPermissionFlag.cs: Added new BindingRedirects flag for .NET 1.1 compatibility. * SiteIdentityPermission.cs: New. Stubbed missing class. * SiteIdentityPermissionAttribute.cs: Completed class implementation. * StrongNamePermissionAttribute.cs: Completed class implementation. * UIPermission.cs: New. Stubbed missing class. * UIPermissionAttribute.cs: Completed class implementation. * UrlIdentityPermission.cs: New. Stubbed missing class. * UrlIdentityPermissionAttribute.cs: Completed class implementation. * ZoneIdentityPermission.cs: Added [Serializable] to class. * ZoneIdentityPermissionAttribute.cs: Completed class implementation. 2002-12-16 Sebastien Pouliot * StrongNamePublicKeyBlob.cs: New. Implemented. * StrongNameIdentityPermission.cs. New. Stubbed (required for StrongName class). 2002-12-15 Sebastien Pouliot * PublisherIdentityPermission.cs. New. Stubbed (required for Publisher class). 2002-08-03 Gonzalo Paniagua Javier * ZoneIdentityPermission.cs: New file. Implemented. 2002-07-22 Tim Coleman * ReflectionPermission.cs: * EnvironmentPermission.cs: bad place for an override keyword :( 2002-07-22 Tim Coleman * ReflectionPermission.cs: * EnvironmentPermission.cs: Stubbs added because these are referenced in System.Web. 2002-07-13 Jonathan Pryor * ResourcePermissionBase.cs: Stubbed out * ResourcePermissionBaseEntry.cs: Implemented. 2002-03-12 Duncan Mak * SiteIdentityPermissionAttribute.cs: * UIPermissionAttribute.cs: These should inherit from CodeAccessSecurityAttribute, not IsolatedStoragePermissionAttribute. 2002-02-17 Duncan Mak * FileDialogPermissionAccess.cs: Add in namespace declaration, so that this one little unique enum wouldn't show up in the System namespace when we ildasm corlib.dll ;-) Oops, my bad. 2002-02-13 Dan Lewis * SecurityPermission.cs, IsolatedStoragePermissionAttribute.cs: New files 2002-01-23 Duncan Mak * FileDialogPermissionAccess.cs: Add to CVS. 2002-01-20 Duncan Mak * *Attribute.cs: Implemented all the properties in the attributes and removed the relevent MonoTODO attributes. * *Attribute.cs: Fixed indentation. 2002-01-18 Duncan Mak * EnvironmentPermissionAttribute.cs: * FileDialogPermissionAttribute.cs: * FileIOPermissionAttribute.cs: * IsolatedStorageAttribute.cs: * IsolatedStorageFilePermissionAttribute.cs: * PermissionSetAttribute.cs: * PrinciplePermissionAttribute.cs: * ReflectionPermissionAttribute.cs: * RegistryPermissionAttribute.cs: * SiteIdentityPermissionAttribute.cs: * StrongNamePermissionAttribute.cs: * UIPermissionAttribute.cs: * UrlIdentityPermissionAttribute.cs: * ZoneIdentityPermissionAttribute.cs: New files. Stubbed out with MonoTODOs * Note: These are all the Attributes in the System.Security.Permissions namespace. The only missing one is PublishIdentityPermissionAttribute.cs because we don't have anything for the X509Certificate class. 2002-01-14 Nick Drochak * FileIOPermission.cs: New file. Implemented. 2002-01-08 Nick Drochak * CodeAccessSecurityAttribute.cs, SecurityAttribute.cs, SecurityPermissionAttribute.cs: New Files * SecurityPermissionFlag.cs: Add missing enum values 2002-01-02 Nick Drochak * IUnrestrictedPermission.cs: Added missing interface class 2001-07-18 Michael Lambert * EnvironmentPermissionAccess.cs, FileIOPermissionAccess.cs, ReflectionPermissionFlag.cs: Add.