Author: ion
Date: Fri Oct 6 10:36:35 2006
New Revision: 24422
URL:
http://svn.reactos.org/svn/reactos?rev=24422&view=rev
Log:
- Add internal EX_CALLBACK Object to NDK. (Callback blocks are a new NT 5.2 kernel
mechanism much like RunOncs blocks in Vista user-mode). They're managed by rundown
protection and fast-referencing through interlocked calls to push/pop/sychrnonize system
callbacks.
- Add ObOpenObjectByName to NDK, since this API is not documented in official headers.
Modified:
trunk/reactos/include/ndk/extypes.h
trunk/reactos/include/ndk/obfuncs.h
Modified: trunk/reactos/include/ndk/extypes.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ndk/extypes.h?rev=…
==============================================================================
--- trunk/reactos/include/ndk/extypes.h (original)
+++ trunk/reactos/include/ndk/extypes.h Fri Oct 6 10:36:35 2006
@@ -486,6 +486,24 @@
} CALLBACK_OBJECT , *PCALLBACK_OBJECT;
//
+// Internal Callback Object
+//
+typedef struct _EX_CALLBACK_ROUTINE_BLOCK
+{
+ EX_RUNDOWN_REF RundownProtect;
+ PVOID Function;
+ PVOID Context;
+} EX_CALLBACK_ROUTINE_BLOCK, *PEX_CALLBACK_ROUTINE_BLOCK;
+
+//
+// Internal Callback Handle
+//
+typedef struct _EX_CALLBACK
+{
+ EX_FAST_REF RoutineBlock;
+} EX_CALLBACK, *PEX_CALLBACK;
+
+//
// Profile Object
//
typedef struct _EPROFILE
Modified: trunk/reactos/include/ndk/obfuncs.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ndk/obfuncs.h?rev=…
==============================================================================
--- trunk/reactos/include/ndk/obfuncs.h (original)
+++ trunk/reactos/include/ndk/obfuncs.h Fri Oct 6 10:36:35 2006
@@ -68,6 +68,18 @@
IN PVOID Object
);
+NTSTATUS
+NTAPI
+ObOpenObjectByName(
+ IN POBJECT_ATTRIBUTES ObjectAttributes,
+ IN POBJECT_TYPE ObjectType,
+ IN KPROCESSOR_MODE AccessMode,
+ IN PACCESS_STATE PassedAccessState,
+ IN ACCESS_MASK DesiredAccess,
+ IN OUT PVOID ParseContext,
+ OUT PHANDLE Handle
+);
+
NTKERNELAPI
NTSTATUS
NTAPI