[PSDK]
[reactos.git] / include / psdk / winnt.h
index f856b07..a2e0852 100644 (file)
@@ -140,6 +140,19 @@ typedef void* __ptr64 PVOID64;
 #define STDMETHODIMPV           HRESULT STDMETHODVCALLTYPE
 #define STDMETHODIMPV_(type)    type STDMETHODVCALLTYPE
 
+/* C99 restrict support */
+#if defined(ENABLE_RESTRICTED) && !defined(MIDL_PASS) && !defined(RC_INVOKED)
+  #if defined(_MSC_VER) && defined(_M_MRX000)
+    #define RESTRICTED_POINTER __restrict
+  #elif defined(__GNUC__) && ((__GNUC__ > 2) || ((__GNUC__ == 2) && (__GNUC_MINOR__ >= 95)))
+    #define RESTRICTED_POINTER __restrict
+  #else
+    #define RESTRICTED_POINTER
+  #endif
+#else
+  #define RESTRICTED_POINTER
+#endif
+
 typedef wchar_t WCHAR;
 typedef WCHAR *PWCHAR,*LPWCH,*PWCH,*NWPSTR,*LPWSTR,*PWSTR;
 typedef CONST WCHAR *LPCWCH,*PCWCH,*LPCWSTR,*PCWSTR;
@@ -2038,12 +2051,12 @@ typedef enum _ACL_INFORMATION_CLASS
 } ACL_INFORMATION_CLASS;
 typedef struct _ACL_REVISION_INFORMATION {
        DWORD AclRevision;
-} ACL_REVISION_INFORMATION;
+} ACL_REVISION_INFORMATION, *PACL_REVISION_INFORMATION;
 typedef struct _ACL_SIZE_INFORMATION {
        DWORD   AceCount;
        DWORD   AclBytesInUse;
        DWORD   AclBytesFree;
-} ACL_SIZE_INFORMATION;
+} ACL_SIZE_INFORMATION, *PACL_SIZE_INFORMATION;
 
 #ifndef _LDT_ENTRY_DEFINED
 #define _LDT_ENTRY_DEFINED
@@ -2105,7 +2118,7 @@ typedef struct _FLOATING_SAVE_AREA {
        DWORD   DataSelector;
        BYTE    RegisterArea[80];
        DWORD   Cr0NpxState;
-} FLOATING_SAVE_AREA;
+} FLOATING_SAVE_AREA, *PFLOATING_SAVE_AREA;
 typedef struct _CONTEXT {
        DWORD   ContextFlags;
        DWORD   Dr0;
@@ -3230,7 +3243,7 @@ typedef struct _MESSAGE_RESOURCE_DATA {
 typedef struct _LIST_ENTRY {
        struct _LIST_ENTRY *Flink;
        struct _LIST_ENTRY *Blink;
-} LIST_ENTRY,*PLIST_ENTRY;
+} LIST_ENTRY, *PLIST_ENTRY, *RESTRICTED_POINTER PRLIST_ENTRY;
 typedef struct _LIST_ENTRY32 {
        DWORD Flink;
        DWORD Blink;
@@ -3348,7 +3361,7 @@ typedef struct _RTL_CRITICAL_SECTION_DEBUG {
     DWORD Flags;
     WORD CreatorBackTraceIndexHigh;
     WORD SpareWORD;
-} RTL_CRITICAL_SECTION_DEBUG,*PRTL_CRITICAL_SECTION_DEBUG;
+} RTL_CRITICAL_SECTION_DEBUG, *PRTL_CRITICAL_SECTION_DEBUG, RTL_RESOURCE_DEBUG, *PRTL_RESOURCE_DEBUG;
 typedef struct _RTL_CRITICAL_SECTION {
        PRTL_CRITICAL_SECTION_DEBUG DebugInfo;
        LONG LockCount;
@@ -3452,7 +3465,7 @@ typedef struct _OSVERSIONINFOW {
        DWORD dwBuildNumber;
        DWORD dwPlatformId;
        WCHAR szCSDVersion[128];
-} OSVERSIONINFOW,*POSVERSIONINFOW,*LPOSVERSIONINFOW;
+} OSVERSIONINFOW, *POSVERSIONINFOW, *LPOSVERSIONINFOW, RTL_OSVERSIONINFOW, *PRTL_OSVERSIONINFOW;
 
 typedef struct _OSVERSIONINFOEXA {
        DWORD dwOSVersionInfoSize;
@@ -3480,7 +3493,7 @@ typedef struct _OSVERSIONINFOEXW {
        WORD wSuiteMask;
        BYTE wProductType;
        BYTE wReserved;
-} OSVERSIONINFOEXW, *POSVERSIONINFOEXW, *LPOSVERSIONINFOEXW;
+} OSVERSIONINFOEXW, *POSVERSIONINFOEXW, *LPOSVERSIONINFOEXW, RTL_OSVERSIONINFOEXW, *PRTL_OSVERSIONINFOEXW;
 
 #include <pshpack2.h>
 typedef struct _IMAGE_VXD_HEADER {