[HEADERS]
[reactos.git] / reactos / include / ndk / exfuncs.h
index fbcb8b0..0d40a3f 100644 (file)
@@ -26,10 +26,17 @@ Author:
 #include <pstypes.h>
 #include <extypes.h>
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 //
 // Don't include WMI headers just for one define
 //
+#ifndef PEVENT_TRACE_HEADER_DEFINED
+#define PEVENT_TRACE_HEADER_DEFINED
 typedef struct _EVENT_TRACE_HEADER *PEVENT_TRACE_HEADER;
+#endif
 
 #ifndef NTOS_MODE_USER
 //
@@ -94,12 +101,42 @@ ExfUnblockPushLock(
 );
 
 //
-// Resource Functions
+// Handle Table Functions
 //
 NTKERNELAPI
 BOOLEAN
 NTAPI
-ExTryToAcquireResourceExclusiveLite(
+ExEnumHandleTable(
+    IN PHANDLE_TABLE HandleTable,
+    IN PEX_ENUM_HANDLE_CALLBACK EnumHandleProcedure,
+    IN OUT PVOID Context,
+    OUT PHANDLE Handle OPTIONAL
+);
+
+//
+// Resource Functions
+//
+PVOID
+NTAPI
+ExEnterCriticalRegionAndAcquireResourceExclusive(
+    IN PERESOURCE Resource
+);
+
+PVOID
+NTAPI
+ExEnterCriticalRegionAndAcquireResourceShared(
+    IN PERESOURCE Resource
+);
+
+PVOID
+NTAPI
+ExEnterCriticalRegionAndAcquireSharedWaitForExclusive(
+    IN PERESOURCE Resource
+);
+
+VOID
+FASTCALL
+ExReleaseResourceAndLeaveCriticalRegion(
     IN PERESOURCE Resource
 );
 
@@ -299,7 +336,7 @@ NTSYSCALLAPI
 NTSTATUS
 NTAPI
 NtQueryDefaultUILanguage(
-    PLANGID LanguageId
+    LANGID* LanguageId
 );
 
 NTSYSCALLAPI
@@ -328,7 +365,7 @@ NTSYSCALLAPI
 NTSTATUS
 NTAPI
 NtQueryInstallUILanguage(
-    PLANGID LanguageId
+    LANGID* LanguageId
 );
 
 NTSYSCALLAPI
@@ -368,7 +405,10 @@ NTSTATUS
 NTAPI
 NtQuerySystemEnvironmentValueEx(
     IN PUNICODE_STRING VariableName,
-    IN LPGUID VendorGuid
+    IN LPGUID VendorGuid,
+    IN PVOID Value,
+    IN OUT PULONG ReturnLength,
+    IN OUT PULONG Attributes
 );
 
 NTSYSCALLAPI
@@ -377,8 +417,8 @@ NTAPI
 NtQuerySystemInformation(
     IN SYSTEM_INFORMATION_CLASS SystemInformationClass,
     OUT PVOID SystemInformation,
-    IN SIZE_T Length,
-    OUT PSIZE_T ResultLength
+    IN ULONG Length,
+    OUT PULONG ResultLength
 );
 
 NTSYSCALLAPI
@@ -526,7 +566,7 @@ NTAPI
 NtSetSystemInformation(
     IN SYSTEM_INFORMATION_CLASS SystemInformationClass,
     IN PVOID SystemInformation,
-    IN SIZE_T SystemInformationLength
+    IN ULONG SystemInformationLength
 );
 
 NTSYSCALLAPI
@@ -692,7 +732,7 @@ ZwFindAtom(
     OUT PRTL_ATOM Atom OPTIONAL
 );
 
-NTSYSAPI
+NTSYSCALLAPI
 NTSTATUS
 NTAPI
 ZwOpenEvent(
@@ -759,7 +799,7 @@ NTSYSAPI
 NTSTATUS
 NTAPI
 ZwQueryDefaultUILanguage(
-    PLANGID LanguageId
+    LANGID* LanguageId
 );
 
 NTSYSAPI
@@ -788,7 +828,7 @@ NTSYSAPI
 NTSTATUS
 NTAPI
 ZwQueryInstallUILanguage(
-    PLANGID LanguageId
+    LANGID* LanguageId
 );
 
 NTSYSAPI
@@ -1008,4 +1048,9 @@ ZwTraceEvent(
     IN ULONG TraceHeaderLength,
     IN PEVENT_TRACE_HEADER TraceHeader
 );
+
+#ifdef __cplusplus
+}
+#endif
+
 #endif