|
1 // Copyright (c) 2011 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. |
|
4 |
|
5 #ifndef SANDBOX_SRC_INTERCEPTORS_H_ |
|
6 #define SANDBOX_SRC_INTERCEPTORS_H_ |
|
7 |
|
8 #if defined(_WIN64) |
|
9 #include "sandbox/win/src/interceptors_64.h" |
|
10 #endif |
|
11 |
|
12 namespace sandbox { |
|
13 |
|
14 enum InterceptorId { |
|
15 // Internal use: |
|
16 MAP_VIEW_OF_SECTION_ID = 0, |
|
17 UNMAP_VIEW_OF_SECTION_ID, |
|
18 // Policy broker: |
|
19 SET_INFORMATION_THREAD_ID, |
|
20 OPEN_THREAD_TOKEN_ID, |
|
21 OPEN_THREAD_TOKEN_EX_ID, |
|
22 OPEN_TREAD_ID, |
|
23 OPEN_PROCESS_ID, |
|
24 OPEN_PROCESS_TOKEN_ID, |
|
25 OPEN_PROCESS_TOKEN_EX_ID, |
|
26 // Filesystem dispatcher: |
|
27 CREATE_FILE_ID, |
|
28 OPEN_FILE_ID, |
|
29 QUERY_ATTRIB_FILE_ID, |
|
30 QUERY_FULL_ATTRIB_FILE_ID, |
|
31 SET_INFO_FILE_ID, |
|
32 // Named pipe dispatcher: |
|
33 CREATE_NAMED_PIPE_ID, |
|
34 // Process-thread dispatcher: |
|
35 CREATE_PROCESSW_ID, |
|
36 CREATE_PROCESSA_ID, |
|
37 // Registry dispatcher: |
|
38 CREATE_KEY_ID, |
|
39 OPEN_KEY_ID, |
|
40 OPEN_KEY_EX_ID, |
|
41 // Sync dispatcher: |
|
42 CREATE_EVENT_ID, |
|
43 OPEN_EVENT_ID, |
|
44 // CSRSS bypasses for HandleCloser: |
|
45 CREATE_THREAD_ID, |
|
46 GET_USER_DEFAULT_LCID_ID, |
|
47 INTERCEPTOR_MAX_ID |
|
48 }; |
|
49 |
|
50 typedef void* OriginalFunctions[INTERCEPTOR_MAX_ID]; |
|
51 |
|
52 } // namespace sandbox |
|
53 |
|
54 #endif // SANDBOX_SRC_INTERCEPTORS_H_ |