1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "sandbox/win/src/nt_internals.h"
6 #include "sandbox/win/src/sandbox_types.h"
8 #ifndef SANDBOX_SRC_SYNC_INTERCEPTION_H__
9 #define SANDBOX_SRC_SYNC_INTERCEPTION_H__
15 typedef NTSTATUS (WINAPI
* NtCreateEventFunction
) (
17 ACCESS_MASK DesiredAccess
,
18 POBJECT_ATTRIBUTES ObjectAttributes
,
20 BOOLEAN InitialState
);
22 typedef NTSTATUS (WINAPI
*NtOpenEventFunction
) (
24 ACCESS_MASK DesiredAccess
,
25 POBJECT_ATTRIBUTES ObjectAttributes
);
27 // Interceptors for NtCreateEvent/NtOpenEvent
28 SANDBOX_INTERCEPT NTSTATUS WINAPI
TargetNtCreateEvent(
29 NtCreateEventFunction orig_CreateEvent
,
31 ACCESS_MASK desired_access
,
32 POBJECT_ATTRIBUTES object_attributes
,
33 EVENT_TYPE event_type
,
34 BOOLEAN initial_state
);
36 SANDBOX_INTERCEPT NTSTATUS WINAPI
TargetNtOpenEvent(
37 NtOpenEventFunction orig_OpenEvent
,
39 ACCESS_MASK desired_access
,
40 POBJECT_ATTRIBUTES object_attributes
);
44 } // namespace sandbox
46 #endif // SANDBOX_SRC_SYNC_INTERCEPTION_H__