Home | History | Annotate | Download | only in src
      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_
     55