diff options
author | Sebastien Pouliot <sebastien@ximian.com> | 2009-05-02 18:22:17 +0400 |
---|---|---|
committer | Sebastien Pouliot <sebastien@ximian.com> | 2009-05-02 18:22:17 +0400 |
commit | 348617482b380275d7057e547e806c9be05bdb72 (patch) | |
tree | def7b4e354ae350c35cb3631d3cae170dd698c93 | |
parent | aef787c83a78399dce15a4cf52a15e5239b15b36 (diff) |
In System.Security:moon-1.9.1
2009-05-02 Sebastien Pouliot <sebastien@ximian.com>
* CodeAccessPermission.cs (ThrowSecurityException): Don't include
CAS-specific information when throwing a SecurityException in
NET_2_1
In System:
2009-05-02 Sebastien Pouliot <sebastien@ximian.com>
* Console.cs: Remove Windows-specific p/invokes and SSC code
from the NET_2_1 build.
In System.Security.Cryptography.X509Certificates:
2009-05-02 Sebastien Pouliot <sebastien@ximian.com>
* X509Certificate.cs: Remove code to initialize from an handle
in NET_2_1 since this is only possible from Windows and would be
SC anyway.
In System.Reflection:
2009-05-02 Sebastien Pouliot <sebastien@ximian.com>
* Assembly.cs: Exclude CAS-specific code for NET_2_1
svn path=/trunk/mcs/; revision=133384
8 files changed, 42 insertions, 1 deletions
diff --git a/mcs/class/corlib/System.Reflection/Assembly.cs b/mcs/class/corlib/System.Reflection/Assembly.cs index 07a74f9fee6..39995323dd8 100644 --- a/mcs/class/corlib/System.Reflection/Assembly.cs +++ b/mcs/class/corlib/System.Reflection/Assembly.cs @@ -794,6 +794,7 @@ namespace System.Reflection { } #endif +#if !NET_2_1 // Code Access Security internal void Resolve () @@ -874,5 +875,6 @@ namespace System.Reflection { } } } +#endif } } diff --git a/mcs/class/corlib/System.Reflection/ChangeLog b/mcs/class/corlib/System.Reflection/ChangeLog index 5af04cb86cb..7507c93fd75 100644 --- a/mcs/class/corlib/System.Reflection/ChangeLog +++ b/mcs/class/corlib/System.Reflection/ChangeLog @@ -1,3 +1,7 @@ +2009-05-02 Sebastien Pouliot <sebastien@ximian.com> + + * Assembly.cs: Exclude CAS-specific code for NET_2_1 + 2009-04-30 Sebastien Pouliot <sebastien@ximian.com> * Module.cs: Exclude GetSignerCertificate (Authenticode related) diff --git a/mcs/class/corlib/System.Security.Cryptography.X509Certificates/ChangeLog b/mcs/class/corlib/System.Security.Cryptography.X509Certificates/ChangeLog index 5835c3fb6e2..558105ad7c2 100644 --- a/mcs/class/corlib/System.Security.Cryptography.X509Certificates/ChangeLog +++ b/mcs/class/corlib/System.Security.Cryptography.X509Certificates/ChangeLog @@ -1,3 +1,9 @@ +2009-05-02 Sebastien Pouliot <sebastien@ximian.com> + + * X509Certificate.cs: Remove code to initialize from an handle + in NET_2_1 since this is only possible from Windows and would be + SC anyway. + 2009-04-30 Sebastien Pouliot <sebastien@ximian.com> * X509Certificate.cs: Remove CreateFromSignedFile from NET_2_1 diff --git a/mcs/class/corlib/System.Security.Cryptography.X509Certificates/X509Certificate.cs b/mcs/class/corlib/System.Security.Cryptography.X509Certificates/X509Certificate.cs index 0722b818517..e7a71dc0b5a 100644 --- a/mcs/class/corlib/System.Security.Cryptography.X509Certificates/X509Certificate.cs +++ b/mcs/class/corlib/System.Security.Cryptography.X509Certificates/X509Certificate.cs @@ -174,9 +174,16 @@ namespace System.Security.Cryptography.X509Certificates { if (handle == IntPtr.Zero) throw new ArgumentException ("Invalid handle."); #endif +#if NET_2_1 + // this works on Windows-only so it's of no use for Moonlight + // even more since this ctor is [SecurityCritical] + throw new NotSupportedException (); +#else InitFromHandle (handle); +#endif } +#if !NET_2_1 [SecurityPermission (SecurityAction.Demand, UnmanagedCode = true)] private void InitFromHandle (IntPtr handle) { @@ -189,6 +196,7 @@ namespace System.Security.Cryptography.X509Certificates { } // for 1.x IntPtr.Zero results in an "empty" certificate instance } +#endif public X509Certificate (System.Security.Cryptography.X509Certificates.X509Certificate cert) { diff --git a/mcs/class/corlib/System.Security/ChangeLog b/mcs/class/corlib/System.Security/ChangeLog index 12d563cf7db..c3a449658dc 100644 --- a/mcs/class/corlib/System.Security/ChangeLog +++ b/mcs/class/corlib/System.Security/ChangeLog @@ -1,3 +1,9 @@ +2009-05-02 Sebastien Pouliot <sebastien@ximian.com> + + * CodeAccessPermission.cs (ThrowSecurityException): Don't include + CAS-specific information when throwing a SecurityException in + NET_2_1 + 2009-05-01 Sebastien Pouliot <sebastien@ximian.com> * SecurityCriticalAttribute.cs: Add simpler version NET_2_1 diff --git a/mcs/class/corlib/System.Security/CodeAccessPermission.cs b/mcs/class/corlib/System.Security/CodeAccessPermission.cs index 47d9ed0a657..c97d080a587 100644 --- a/mcs/class/corlib/System.Security/CodeAccessPermission.cs +++ b/mcs/class/corlib/System.Security/CodeAccessPermission.cs @@ -391,11 +391,15 @@ namespace System.Security { internal static void ThrowSecurityException (object demanded, string message, SecurityFrame frame, SecurityAction action, IPermission failed) { +#if NET_2_1 + throw new SecurityException (message); +#else Assembly a = frame.Assembly; throw new SecurityException (Locale.GetText (message), a.UnprotectedGetName (), a.GrantedPermissionSet, a.DeniedPermissionSet, frame.Method, action, demanded, failed, a.UnprotectedGetEvidence ()); +#endif } } } diff --git a/mcs/class/corlib/System/ChangeLog b/mcs/class/corlib/System/ChangeLog index b18cedbecff..8ba6b04c24f 100644 --- a/mcs/class/corlib/System/ChangeLog +++ b/mcs/class/corlib/System/ChangeLog @@ -1,3 +1,8 @@ +2009-05-02 Sebastien Pouliot <sebastien@ximian.com> + + * Console.cs: Remove Windows-specific p/invokes and SSC code + from the NET_2_1 build. + 2009-05-01 Sebastien Pouliot <sebastien@ximian.com> * AppDomainManager.cs: Fix base class for NET_2_1 and implement diff --git a/mcs/class/corlib/System/Console.cs b/mcs/class/corlib/System/Console.cs index 1611bcca74d..8eec60a3822 100644 --- a/mcs/class/corlib/System/Console.cs +++ b/mcs/class/corlib/System/Console.cs @@ -48,6 +48,7 @@ namespace System #endif class Console { +#if !NET_2_1 private class WindowsConsole { [DllImport ("kernel32.dll", CharSet=CharSet.Auto, ExactSpelling=true)] @@ -67,7 +68,7 @@ namespace System return GetConsoleOutputCP (); } } - +#endif internal static TextWriter stdout; private static TextWriter stderr; private static TextReader stdin; @@ -83,6 +84,10 @@ namespace System // // On Windows, follow the Windows tradition // +#if NET_2_1 + // should never happen since Moonlight does not run on windows + inputEncoding = outputEncoding = Encoding.GetEncoding (28591); +#else try { inputEncoding = Encoding.GetEncoding (WindowsConsole.GetInputCodePage ()); outputEncoding = Encoding.GetEncoding (WindowsConsole.GetOutputCodePage ()); @@ -92,6 +97,7 @@ namespace System // Use Latin 1 as it is fast and UTF-8 is never used as console code page inputEncoding = outputEncoding = Encoding.GetEncoding (28591); } +#endif } else { // // On Unix systems (128), do not output the |