+2010-07-25 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * UnixRegistryApi.cs: From the static ctor of KeyHandler remove the
+ volatile keys directory if the last registered boot time has changed.
+ This way we *actually* have our volatile keys removed if the system as
+ rebooted.
+
+2010-07-19 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * UnixRegistryApi.cs: Remove the in-memmory approach to volatile keys,
+ as it becomes trickier to handle deep hiearchies, subkeys and values
+ in some scenarios. So for now we keep them in disk, we in an
+ alternative directory, so we can cleam them properly later.
+
+2010-07-13 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * RegistryKey.cs: Call the proper UnixRegistryApi.CreateSubKey overload.
+ * UnixRegistryApi.cs: Implement basic support for volatile keys, by
+ storing them in memory instead of disk. We lack the support to have
+ them available to other processes - and given the fact that a
+ workaround would be gross, just don't implement that now.
+
+2010-07-11 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * RegistryKey.cs: Add 4.0 CreateSubKey overloads taking a RegistryOptions
+ parameter.
+ * IRegistryApi.cs: Add a new overload for CreateSubKey for the 4.0
+ profile. Not nice, but better than to change the signature for each
+ profile.
+ * Win32RegistryApi.cs: Properly recognize a handle where a volatile
+ key is requested.
+ * UnixRegistryApi.cs: Stubbed.
+
+2010-07-09 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * Win32RegistryApi.cs: Use RegCreateKeyEx instead of RegCreateKey, as
+ we need it to further support both the missing bits and the 4.0
+ features.
+
+2010-02-08 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * UnixRegistryApi.cs: When retrieving the registry keys from file in a
+ unix system, if the value returned by a SecurityElement is null,
+ use String.Empty, since at this point we know that this registry key
+ *exists* and *cannot* have a null value, as specified in the public
+ api.
+ Fixes #543206.
+
+2009-11-21 Miguel de Icaza <miguel@novell.com>
+
+ * RegistryKey.cs: Implement a GetValueKind and a handful of
+ methods.
+
+2009-04-25 Sebastien Pouliot <sebastien@ximian.com>
+
+ * *.cs: Exclude the files for the NET_2_1 profile, since they are
+ unneeded and adds a bunch (23) [SecuritySafeCritical] to audit for
+ Moonlight
+
+2008-02-25 Robert Jordan <robertj@gmx.net>
+
+ * Win32RegistryApi.cs (ToString): Don't emit the handle value
+ under NET_2_0.
+ See http://msdn2.microsoft.com/en-us/netframework/aa497241.aspx.
+
+2008-02-01 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * RegistryKey.cs: Added missing checks on length of subkey and value
+ names. On 2.0 profile, allow subkey <= 255 characters. Modified
+ ArgumentNullException argument names to match MS.
+ * UnixRegistryApi.cs: In SetValue (string, object, RegistryValueKind),
+ use a zero-length string for name if it is null. In OpenSubKey,
+ respect value of writable argument when creating well-known subkey.
+ Fixes bug #357883. Removed argument names for ArgumentException's to
+ match MS.
+
+2008-01-15 Zoltan Varga <vargaz@gmail.com>
+
+ * RegistryKey.cs: Fix some argument names to be consistent with MS.
+
+2007-10-13 kevin.fitzgerald@soarce.us
+
+ * UnixRegistryApi.cs: Escape the strings before passing them to
+ SecurityElement. This fixes bug #322839
+
+2007-08-30 Marek Habersack <mhabersack@novell.com>
+
+ * UnixRegistryApi.cs: properly retrieve values of type
+ 'bytearray'.
+
+2007-08-13 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * RegistryKeyPermissionCheck.cs: Do not include in 1.0 profile.
+ Removed extra using directive and empty lines.
+
+2007-05-01 Dick Porter <dick@ximian.com>
+
+ * RegistryKeyPermissionCheck.cs: Not serializable
+
+2007-04-30 Dick Porter <dick@ximian.com>
+
+ * Registry.cs:
+ * RegistryHive.cs:
+ * RegistryKey.cs:
+ * RegistryValueKind.cs:
+ * RegistryKeyPermissionCheck.cs: Updated for 2.0 profile
+
+2006-10-29 Miguel de Icaza <miguel@novell.com>
+
+ * UnixRegistryApi.cs (KeyHandler.MachineStore): Add support for
+ loading/storing values from the system registry, instead of having
+ the system ones be user-based.
+
+ (KeyHandler, Load): turn IO exceptions into Security exceptions.
+
+2006-09-03 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * IRegistryApi.cs: Added OpenRemoteBaseKey method.
+ * Win32ResultCode.cs: Added code for win32 error 53.
+ * RegistryKey.cs: Implemented support for OpenRemoteBaseKEy on
+ Windows. To achieve this, the handle of the remote hive must be
+ stored separately from the RegistryHive value. Removed isRoot field, as
+ we now determine whether we're a root key (hive) by checking if hive
+ is not null. Added internal ctor for registry hives that takes a
+ RegistryHive, a key handle and a bool to indicate whether its a remote
+ hive. Renamed Data field to handle and added internal property to
+ access it. Throw ObjectDisposedException in ToString if key is
+ closed/disposed. Added Hive property, which is used in UnixRegistryApi.
+ Added GetHiveName method which translates a RegistryHive value to its
+ (key) name.
+ * Win32RegistryApi.cs: Added pinvoke for RegConnectRegistry. GetHandle
+ no longer needs to know whether the key refers to a hive (base key)
+ or not. Implemented OpenRemoteBaseKey.
+ * UnixRegistryApi.cs: Added OpenRemoteBaseKey implementation which
+ always throws NotImplementedException.
+ * Registry.cs: The key name of the base key no longer needs to be
+ passed to the ctor, as it's looked up in the ctor itself. This avoids
+ having a different logical for local or remote base keys.
+
+2006-08-23 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * Win32RegistryApi.cs: Use a StringBuilder instead of byte [] for
+ RegEnumKey. Fixed issue in GetSubKeyNames where buffer was not cleared
+ while iterating over subkeys.
+
+2006-08-20 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * RegistryValueOptions.cs: Add the real one.
+
+2006-08-20 Atsushi Enomoto <atsushi@ximian.com>
+
+ * RegistryValueOptions.cs : build fix, easier than reverting all.
+
+2006-08-20 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * IRegistryApi.cs: Modified GetValue to take RegistryValueOptions enum
+ and removed obsolete return_default_value argument.
+ * RegistryKey.cs: Added missing ComVisible attribute on SetValue.
+ Use new GetValue method on IRegistryApi that takes RegistryValueOptions
+ enum. Added GetValue overload that takes RegistryValueOptions (2.0).
+ * Win32RegistryApi.cs: Modified GetValue to take RegistryValueOptions
+ enum, and removed obsolete returnDefaultValue argument. Added support
+ for ExpandString value type. Do no expand if DoNotExpand... is set.
+ * UnixRegistryApi.cs: Modified KeyHandler.GetValue to take
+ RegistryValueOptions enum, and do no expand environment variables in
+ an ExpandString if DoNotExpandEnvironmentNames is set. Modified
+ UnixRegistryApi.GetValue to take RegistryValueOptions enum, and
+ removed obsolete return_default_value argument.
+
+2006-08-14 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * UnixRegistryApi.cs: Undo change for new eventlog implementation that
+ was not rolled back earlier this week, and which does not make sense
+ without that implementation anyway.
+
2006-08-14 Gert Driesen <drieseng@users.sourceforge.net>
* Win32ResultCode.cs: Added error code for attempting to perform an
* Registry.cs: Class should be sealed and have a private default ctor.
-2002-11-28 Alejandro Sánchez Acosta <raciel@es.gnu.org>
+2002-11-28 Alejandro Sánchez Acosta <raciel@es.gnu.org>
* Registry.cs: Added missed field.