Author: dick
Date: 2007-04-30 11:25:43 -0400 (Mon, 30 Apr 2007)
New Revision: 76500
Added:
trunk/mcs/class/corlib/Microsoft.Win32/RegistryKeyPermissionCheck.cs
Modified:
trunk/mcs/class/corlib/ChangeLog
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/ChangeLog
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/CriticalHandleMinusOneIsInvalid.cs
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/CriticalHandleZeroOrMinusOneIsInvalid.cs
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeHandleMinusOneIsInvalid.cs
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeHandleZeroOrMinusOneIsInvalid.cs
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeWaitHandle.cs
trunk/mcs/class/corlib/Microsoft.Win32/ChangeLog
trunk/mcs/class/corlib/Microsoft.Win32/Registry.cs
trunk/mcs/class/corlib/Microsoft.Win32/RegistryHive.cs
trunk/mcs/class/corlib/Microsoft.Win32/RegistryKey.cs
trunk/mcs/class/corlib/Microsoft.Win32/RegistryValueKind.cs
trunk/mcs/class/corlib/corlib.dll.sources
Log:
2007-04-30 Dick Porter <[EMAIL PROTECTED]>
* corlib.dll.sources: Added
Microsoft.Win32.RegistryKeyPermissionCheck.cs
2007-04-30 Dick Porter <[EMAIL PROTECTED]>
* CriticalHandleZeroOrMinusOneIsInvalid.cs:
* CriticalHandleMinusOneIsInvalid.cs:
* SafeWaitHandle.cs:
* SafeHandleZeroOrMinusOneIsInvalid.cs:
* SafeHandleMinusOneIsInvalid.cs: Added ReliabilityContract
attributes to complete 2.0 profile
2007-04-30 Dick Porter <[EMAIL PROTECTED]>
* Registry.cs:
* RegistryHive.cs:
* RegistryKey.cs:
* RegistryValueKind.cs:
* RegistryKeyPermissionCheck.cs: Updated for 2.0 profile
Modified: trunk/mcs/class/corlib/ChangeLog
===================================================================
--- trunk/mcs/class/corlib/ChangeLog 2007-04-30 15:23:30 UTC (rev 76499)
+++ trunk/mcs/class/corlib/ChangeLog 2007-04-30 15:25:43 UTC (rev 76500)
@@ -1,3 +1,8 @@
+2007-04-30 Dick Porter <[EMAIL PROTECTED]>
+
+ * corlib.dll.sources: Added
+ Microsoft.Win32.RegistryKeyPermissionCheck.cs
+
2007-03-22 Sebastien Pouliot <[EMAIL PROTECTED]>
* corlib_test.dll.sources: Added missing Rfc2898DeriveBytes unit tests
Modified: trunk/mcs/class/corlib/Microsoft.Win32/ChangeLog
===================================================================
--- trunk/mcs/class/corlib/Microsoft.Win32/ChangeLog 2007-04-30 15:23:30 UTC
(rev 76499)
+++ trunk/mcs/class/corlib/Microsoft.Win32/ChangeLog 2007-04-30 15:25:43 UTC
(rev 76500)
@@ -1,3 +1,11 @@
+2007-04-30 Dick Porter <[EMAIL PROTECTED]>
+
+ * Registry.cs:
+ * RegistryHive.cs:
+ * RegistryKey.cs:
+ * RegistryValueKind.cs:
+ * RegistryKeyPermissionCheck.cs: Updated for 2.0 profile
+
2006-10-29 Miguel de Icaza <[EMAIL PROTECTED]>
* UnixRegistryApi.cs (KeyHandler.MachineStore): Add support for
Modified: trunk/mcs/class/corlib/Microsoft.Win32/Registry.cs
===================================================================
--- trunk/mcs/class/corlib/Microsoft.Win32/Registry.cs 2007-04-30 15:23:30 UTC
(rev 76499)
+++ trunk/mcs/class/corlib/Microsoft.Win32/Registry.cs 2007-04-30 15:25:43 UTC
(rev 76500)
@@ -31,8 +31,15 @@
using System;
+#if NET_2_0
+using System.Runtime.InteropServices;
+#endif
+
namespace Microsoft.Win32
{
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public
#if NET_2_0
static
Modified: trunk/mcs/class/corlib/Microsoft.Win32/RegistryHive.cs
===================================================================
--- trunk/mcs/class/corlib/Microsoft.Win32/RegistryHive.cs 2007-04-30
15:23:30 UTC (rev 76499)
+++ trunk/mcs/class/corlib/Microsoft.Win32/RegistryHive.cs 2007-04-30
15:25:43 UTC (rev 76500)
@@ -29,10 +29,17 @@
using System;
+#if NET_2_0
+using System.Runtime.InteropServices;
+#endif
+
namespace Microsoft.Win32
{
[Serializable]
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public enum RegistryHive
{
Modified: trunk/mcs/class/corlib/Microsoft.Win32/RegistryKey.cs
===================================================================
--- trunk/mcs/class/corlib/Microsoft.Win32/RegistryKey.cs 2007-04-30
15:23:30 UTC (rev 76499)
+++ trunk/mcs/class/corlib/Microsoft.Win32/RegistryKey.cs 2007-04-30
15:25:43 UTC (rev 76500)
@@ -37,11 +37,18 @@
using System.Security;
using System.Text;
+#if NET_2_0
+using System.Security.AccessControl;
+#endif
+
namespace Microsoft.Win32
{
/// <summary>
/// Wrapper class for Windows Registry Entry.
/// </summary>
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public sealed class RegistryKey : MarshalByRefObject, IDisposable
{
//
@@ -258,6 +265,12 @@
return RegistryApi.GetValue (this, name, defaultValue,
options);
}
+
+ [ComVisible (false)]
+ public RegistryValueKind GetValueKind (string name)
+ {
+ throw new NotImplementedException ();
+ }
#endif
/// <summary>
@@ -274,8 +287,21 @@
throw new UnauthorizedAccessException ("Cannot
write to the registry key.");
return RegistryApi.CreateSubKey (this, subkey);
}
+
+#if NET_2_0
+ [ComVisible (false)]
+ public RegistryKey CreateSubKey (string subkey,
RegistryKeyPermissionCheck permissionCheck)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [ComVisible (false)]
+ public RegistryKey CreateSubKey (string subkey,
RegistryKeyPermissionCheck permissionCheck, RegistrySecurity registrySecurity)
+ {
+ throw new NotImplementedException ();
+ }
+#endif
-
/// <summary>
/// Delete the specified subkey.
/// </summary>
@@ -361,8 +387,20 @@
RegistryApi.DeleteValue (this, value,
shouldThrowWhenKeyMissing);
}
+
+#if NET_2_0
+ public RegistrySecurity GetAccessControl ()
+ {
+ throw new NotImplementedException ();
+ }
+ public RegistrySecurity GetAccessControl (AccessControlSections
includeSections)
+ {
+ throw new NotImplementedException ();
+ }
+#endif
+
/// <summary>
/// Get the names of the sub keys.
/// </summary>
@@ -391,8 +429,27 @@
throw new ArgumentNullException ("machineName");
return RegistryApi.OpenRemoteBaseKey (hKey,
machineName);
}
+
+#if NET_2_0
+ [ComVisible (false)]
+ public RegistryKey OpenSubKey (string name,
RegistryKeyPermissionCheck permissionCheck)
+ {
+ throw new NotImplementedException ();
+ }
+ [ComVisible (false)]
+ public RegistryKey OpenSubKey (string name,
RegistryKeyPermissionCheck permissionCheck, RegistryRights rights)
+ {
+ throw new NotImplementedException ();
+ }
+ public void SetAccessControl (RegistrySecurity registrySecurity)
+ {
+ throw new NotImplementedException ();
+ }
+#endif
+
+
/// <summary>
/// Build a string representation of the registry key.
/// Conatins the fully qualified key name, and the Hex
Added: trunk/mcs/class/corlib/Microsoft.Win32/RegistryKeyPermissionCheck.cs
===================================================================
--- trunk/mcs/class/corlib/Microsoft.Win32/RegistryKeyPermissionCheck.cs
2007-04-30 15:23:30 UTC (rev 76499)
+++ trunk/mcs/class/corlib/Microsoft.Win32/RegistryKeyPermissionCheck.cs
2007-04-30 15:25:43 UTC (rev 76500)
@@ -0,0 +1,43 @@
+//
+// Microsoft.Win32.RegistryKeyPermissionCheck.cs
+//
+// Author:
+// Dick Porter ([EMAIL PROTECTED])
+
+//
+// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+
+namespace Microsoft.Win32
+{
+
+ [Serializable]
+ public enum RegistryKeyPermissionCheck
+ {
+ Default = 0,
+ ReadSubTree = 1,
+ ReadWriteSubTree = 2,
+ }
+
+}
Property changes on:
trunk/mcs/class/corlib/Microsoft.Win32/RegistryKeyPermissionCheck.cs
___________________________________________________________________
Name: svn:eol-style
+ native
Modified: trunk/mcs/class/corlib/Microsoft.Win32/RegistryValueKind.cs
===================================================================
--- trunk/mcs/class/corlib/Microsoft.Win32/RegistryValueKind.cs 2007-04-30
15:23:30 UTC (rev 76499)
+++ trunk/mcs/class/corlib/Microsoft.Win32/RegistryValueKind.cs 2007-04-30
15:25:43 UTC (rev 76500)
@@ -25,9 +25,16 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+#if NET_2_0
+using System.Runtime.InteropServices;
+#endif
+
namespace Microsoft.Win32
{
#if NET_2_0
+ [ComVisible (true)]
+#endif
+#if NET_2_0
public
#else
internal
Modified: trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/ChangeLog
===================================================================
--- trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/ChangeLog
2007-04-30 15:23:30 UTC (rev 76499)
+++ trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/ChangeLog
2007-04-30 15:25:43 UTC (rev 76500)
@@ -1,3 +1,12 @@
+2007-04-30 Dick Porter <[EMAIL PROTECTED]>
+
+ * CriticalHandleZeroOrMinusOneIsInvalid.cs:
+ * CriticalHandleMinusOneIsInvalid.cs:
+ * SafeWaitHandle.cs:
+ * SafeHandleZeroOrMinusOneIsInvalid.cs:
+ * SafeHandleMinusOneIsInvalid.cs: Added ReliabilityContract
+ attributes to complete 2.0 profile
+
2007-01-13 Miguel de Icaza <[EMAIL PROTECTED]>
* Add a few more missing helper classes.
Modified:
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/CriticalHandleMinusOneIsInvalid.cs
===================================================================
---
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/CriticalHandleMinusOneIsInvalid.cs
2007-04-30 15:23:30 UTC (rev 76499)
+++
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/CriticalHandleMinusOneIsInvalid.cs
2007-04-30 15:25:43 UTC (rev 76500)
@@ -31,10 +31,12 @@
using System;
using System.Runtime.InteropServices;
+using System.Runtime.ConstrainedExecution;
namespace Microsoft.Win32.SafeHandles {
public abstract class CriticalHandleMinusOneIsInvalid : CriticalHandle,
IDisposable {
+ [ReliabilityContract (Consistency.WillNotCorruptState,
Cer.MayFail)]
protected CriticalHandleMinusOneIsInvalid () : base ((IntPtr)
(-1)) {
}
Modified:
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/CriticalHandleZeroOrMinusOneIsInvalid.cs
===================================================================
---
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/CriticalHandleZeroOrMinusOneIsInvalid.cs
2007-04-30 15:23:30 UTC (rev 76499)
+++
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/CriticalHandleZeroOrMinusOneIsInvalid.cs
2007-04-30 15:25:43 UTC (rev 76500)
@@ -31,10 +31,12 @@
using System;
using System.Runtime.InteropServices;
+using System.Runtime.ConstrainedExecution;
namespace Microsoft.Win32.SafeHandles {
public abstract class CriticalHandleZeroOrMinusOneIsInvalid :
CriticalHandle, IDisposable {
+ [ReliabilityContract (Consistency.WillNotCorruptState,
Cer.MayFail)]
protected CriticalHandleZeroOrMinusOneIsInvalid () : base
((IntPtr) (-1)) {
}
Modified:
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeHandleMinusOneIsInvalid.cs
===================================================================
---
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeHandleMinusOneIsInvalid.cs
2007-04-30 15:23:30 UTC (rev 76499)
+++
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeHandleMinusOneIsInvalid.cs
2007-04-30 15:25:43 UTC (rev 76500)
@@ -31,10 +31,12 @@
using System;
using System.Runtime.InteropServices;
+using System.Runtime.ConstrainedExecution;
namespace Microsoft.Win32.SafeHandles {
public abstract class SafeHandleMinusOneIsInvalid : SafeHandle,
IDisposable {
+ [ReliabilityContract (Consistency.WillNotCorruptState,
Cer.MayFail)]
protected SafeHandleMinusOneIsInvalid (bool ownsHandle) : base
((IntPtr) 0, ownsHandle) {
}
Modified:
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeHandleZeroOrMinusOneIsInvalid.cs
===================================================================
---
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeHandleZeroOrMinusOneIsInvalid.cs
2007-04-30 15:23:30 UTC (rev 76499)
+++
trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeHandleZeroOrMinusOneIsInvalid.cs
2007-04-30 15:25:43 UTC (rev 76500)
@@ -30,10 +30,12 @@
using System;
using System.Runtime.InteropServices;
+using System.Runtime.ConstrainedExecution;
namespace Microsoft.Win32.SafeHandles {
public abstract class SafeHandleZeroOrMinusOneIsInvalid : SafeHandle,
IDisposable {
+ [ReliabilityContract (Consistency.WillNotCorruptState,
Cer.MayFail)]
protected SafeHandleZeroOrMinusOneIsInvalid (bool ownsHandle) :
base ((IntPtr) 0, ownsHandle) {
}
Modified: trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeWaitHandle.cs
===================================================================
--- trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeWaitHandle.cs
2007-04-30 15:23:30 UTC (rev 76499)
+++ trunk/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeWaitHandle.cs
2007-04-30 15:25:43 UTC (rev 76500)
@@ -32,10 +32,12 @@
using System;
using System.IO;
using System.Threading;
+using System.Runtime.ConstrainedExecution;
namespace Microsoft.Win32.SafeHandles {
public sealed class SafeWaitHandle : SafeHandleZeroOrMinusOneIsInvalid {
+ [ReliabilityContract (Consistency.WillNotCorruptState,
Cer.MayFail)]
public SafeWaitHandle (IntPtr preexistingHandle, bool
ownsHandle) : base (ownsHandle)
{
SetHandle (preexistingHandle);
Modified: trunk/mcs/class/corlib/corlib.dll.sources
===================================================================
--- trunk/mcs/class/corlib/corlib.dll.sources 2007-04-30 15:23:30 UTC (rev
76499)
+++ trunk/mcs/class/corlib/corlib.dll.sources 2007-04-30 15:25:43 UTC (rev
76500)
@@ -3,6 +3,7 @@
../../build/common/Locale.cs
Microsoft.Win32/IRegistryApi.cs
Microsoft.Win32/RegistryKey.cs
+Microsoft.Win32/RegistryKeyPermissionCheck.cs
Microsoft.Win32/Registry.cs
Microsoft.Win32/RegistryHive.cs
Microsoft.Win32/RegistryValueKind.cs
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches