/* GLOBALS *******************************************************************/
-POBJECT_TYPE _ExEventObjectType = NULL;
+POBJECT_TYPE ExEventObjectType = NULL;
GENERIC_MAPPING ExpEventMapping =
{
- STANDARD_RIGHTS_READ | SYNCHRONIZE | EVENT_QUERY_STATE,
- STANDARD_RIGHTS_WRITE | SYNCHRONIZE | EVENT_MODIFY_STATE,
- STANDARD_RIGHTS_EXECUTE | SYNCHRONIZE | EVENT_QUERY_STATE,
- EVENT_ALL_ACCESS};
+ STANDARD_RIGHTS_READ | EVENT_QUERY_STATE,
+ STANDARD_RIGHTS_WRITE | EVENT_MODIFY_STATE,
+ STANDARD_RIGHTS_EXECUTE | SYNCHRONIZE,
+ EVENT_ALL_ACCESS
+};
static const INFORMATION_CLASS_INFO ExEventInfoClass[] =
{
/* FUNCTIONS *****************************************************************/
-VOID
+BOOLEAN
INIT_FUNCTION
NTAPI
ExpInitializeEventImplementation(VOID)
{
OBJECT_TYPE_INITIALIZER ObjectTypeInitializer;
UNICODE_STRING Name;
+ NTSTATUS Status;
DPRINT("Creating Event Object Type\n");
/* Create the Event Object Type */
ObjectTypeInitializer.GenericMapping = ExpEventMapping;
ObjectTypeInitializer.PoolType = NonPagedPool;
ObjectTypeInitializer.ValidAccessMask = EVENT_ALL_ACCESS;
- ObCreateObjectType(&Name, &ObjectTypeInitializer, NULL, &ExEventObjectType);
+ ObjectTypeInitializer.InvalidAttributes = OBJ_OPENLINK;
+ Status = ObCreateObjectType(&Name, &ObjectTypeInitializer, NULL, &ExEventObjectType);
+ if (!NT_SUCCESS(Status)) return FALSE;
+ return TRUE;
}
/*
(PVOID*)&Event);
/* Check for Success */
- if(NT_SUCCESS(Status))
+ if (NT_SUCCESS(Status))
{
- /* Initalize the Event */
+ /* Initialize the Event */
KeInitializeEvent(Event,
EventType,
InitialState);
&hEvent);
/* Check for success */
- if(NT_SUCCESS(Status))
+ if (NT_SUCCESS(Status))
{
/* Enter SEH for return */
_SEH2_TRY
KPROCESSOR_MODE PreviousMode = ExGetPreviousMode();
NTSTATUS Status;
PAGED_CODE();
- DPRINT("NtPulseEvent(EventHandle 0%x PreviousState 0%x)\n",
+ DPRINT("NtPulseEvent(EventHandle 0%p PreviousState 0%p)\n",
EventHandle, PreviousState);
/* Check if we were called from user-mode */
KPROCESSOR_MODE PreviousMode = ExGetPreviousMode();
NTSTATUS Status;
PAGED_CODE();
- DPRINT("NtResetEvent(EventHandle 0%x PreviousState 0%x)\n",
+ DPRINT("NtResetEvent(EventHandle 0%p PreviousState 0%p)\n",
EventHandle, PreviousState);
/* Check if we were called from user-mode */
KPROCESSOR_MODE PreviousMode = ExGetPreviousMode();
NTSTATUS Status;
PAGED_CODE();
- DPRINT("NtSetEvent(EventHandle 0%x PreviousState 0%x)\n",
+ DPRINT("NtSetEvent(EventHandle 0%p PreviousState 0%p)\n",
EventHandle, PreviousState);
/* Check if we were called from user-mode */