Use proper name for the NtSetInformationKey Info classes/structures, as well as add new XP+ class/structure
Modified: trunk/reactos/include/ddk/cmtypes.h
Modified: trunk/reactos/ntoskrnl/cm/ntfunc.c

Modified: trunk/reactos/include/ddk/cmtypes.h
--- trunk/reactos/include/ddk/cmtypes.h	2005-01-01 01:53:48 UTC (rev 12676)
+++ trunk/reactos/include/ddk/cmtypes.h	2005-01-01 02:08:13 UTC (rev 12677)
@@ -49,17 +49,21 @@
 
 /* key set information class */
 
-typedef enum _KEY_SET_INFORMATION_CLASS
-{
-  KeyLastWriteTimeInformation
+typedef enum _KEY_SET_INFORMATION_CLASS {
+    KeyWriteTimeInformation,
+    KeyUserFlagsInformation,
+    MaxKeySetInfoClass
 } KEY_SET_INFORMATION_CLASS;
 
-typedef struct _KEY_LAST_WRITE_TIME_INFORMATION
-{
-  LARGE_INTEGER  LastWriteTime;
-} KEY_LAST_WRITE_TIME_INFORMATION, *PKEY_LAST_WRITE_TIME_INFORMATION;
+typedef struct _KEY_WRITE_TIME_INFORMATION {
+    LARGE_INTEGER LastWriteTime;
+} KEY_WRITE_TIME_INFORMATION, *PKEY_WRITE_TIME_INFORMATION;
 
+typedef struct _KEY_USER_FLAGS_INFORMATION {
+    ULONG   UserFlags;
+} KEY_USER_FLAGS_INFORMATION, *PKEY_USER_FLAGS_INFORMATION;
 
+
 /* key value information class */
 
 typedef enum _KEY_VALUE_INFORMATION_CLASS

Modified: trunk/reactos/ntoskrnl/cm/ntfunc.c
--- trunk/reactos/ntoskrnl/cm/ntfunc.c	2005-01-01 01:53:48 UTC (rev 12676)
+++ trunk/reactos/ntoskrnl/cm/ntfunc.c	2005-01-01 02:08:13 UTC (rev 12677)
@@ -2054,10 +2054,10 @@
   PKEY_OBJECT KeyObject;
   NTSTATUS Status;
 
-  if (KeyInformationClass != KeyLastWriteTimeInformation)
+  if (KeyInformationClass != KeyWriteTimeInformation)
     return STATUS_INVALID_INFO_CLASS;
 
-  if (KeyInformationLength != sizeof (KEY_LAST_WRITE_TIME_INFORMATION))
+  if (KeyInformationLength != sizeof (KEY_WRITE_TIME_INFORMATION))
     return STATUS_INFO_LENGTH_MISMATCH;
 
   /* Verify that the handle is valid and is a registry key */
@@ -2080,7 +2080,7 @@
   VERIFY_KEY_OBJECT(KeyObject);
 
   KeyObject->KeyCell->LastWriteTime.QuadPart =
-    ((PKEY_LAST_WRITE_TIME_INFORMATION)KeyInformation)->LastWriteTime.QuadPart;
+    ((PKEY_WRITE_TIME_INFORMATION)KeyInformation)->LastWriteTime.QuadPart;
 
   CmiMarkBlockDirty (KeyObject->RegistryHive,
 		     KeyObject->KeyCellOffset);