ReactOS  0.4.15-dev-3163-gf17c2c0
verifier.h
Go to the documentation of this file.
1 #ifndef REACTOS_VERIFIER_H
2 #define REACTOS_VERIFIER_H
3 
4 #define DLL_PROCESS_VERIFIER 4
5 
6 typedef VOID (NTAPI* RTL_VERIFIER_DLL_LOAD_CALLBACK) (PWSTR DllName, PVOID DllBase, SIZE_T DllSize, PVOID Reserved);
7 typedef VOID (NTAPI* RTL_VERIFIER_DLL_UNLOAD_CALLBACK) (PWSTR DllName, PVOID DllBase, SIZE_T DllSize, PVOID Reserved);
9 
15 
22 
24  // Provider fields
29 
30  // Verifier fields
37 
38  // Provider field
41 
42 
43 // VerifierFlags
44 
45 #define RTL_VRF_FLG_FULL_PAGE_HEAP 0x00000001
46 #define RTL_VRF_FLG_RESERVED_DONOTUSE 0x00000002
47 #define RTL_VRF_FLG_HANDLE_CHECKS 0x00000004
48 #define RTL_VRF_FLG_STACK_CHECKS 0x00000008
49 #define RTL_VRF_FLG_APPCOMPAT_CHECKS 0x00000010
50 #define RTL_VRF_FLG_TLS_CHECKS 0x00000020
51 #define RTL_VRF_FLG_DIRTY_STACKS 0x00000040
52 #define RTL_VRF_FLG_RPC_CHECKS 0x00000080
53 #define RTL_VRF_FLG_COM_CHECKS 0x00000100
54 #define RTL_VRF_FLG_DANGEROUS_APIS 0x00000200
55 #define RTL_VRF_FLG_RACE_CHECKS 0x00000400
56 #define RTL_VRF_FLG_DEADLOCK_CHECKS 0x00000800
57 #define RTL_VRF_FLG_FIRST_CHANCE_EXCEPTION_CHECKS 0x00001000
58 #define RTL_VRF_FLG_VIRTUAL_MEM_CHECKS 0x00002000
59 #define RTL_VRF_FLG_ENABLE_LOGGING 0x00004000
60 #define RTL_VRF_FLG_FAST_FILL_HEAP 0x00008000
61 #define RTL_VRF_FLG_VIRTUAL_SPACE_TRACKING 0x00010000
62 #define RTL_VRF_FLG_ENABLED_SYSTEM_WIDE 0x00020000
63 #define RTL_VRF_FLG_MISCELLANEOUS_CHECKS 0x00020000
64 #define RTL_VRF_FLG_LOCK_CHECKS 0x00040000
65 
66 
67 // VerifierDebug
68 
69 #define RTL_VRF_DBG_SHOWSNAPS 0x00001
70 #define RTL_VRF_DBG_SHOWFOUNDEXPORTS 0x00002
71 #define RTL_VRF_DBG_SHOWVERIFIEDEXPORTS 0x00004
72 #define RTL_VRF_DBG_LISTPROVIDERS 0x00008
73 #define RTL_VRF_DBG_SHOWCHAINING 0x00010
74 #define RTL_VRF_DBG_SHOWCHAINING_DEBUG 0x00020
75 
76 #define RTL_VRF_DBG_CS_SPLAYTREE 0x00200
77 #define RTL_VRF_DBG_CS_DUMP_SPLAYTREE 0x00400
78 #define RTL_VRF_DBG_CS_CREATE_DELETE 0x00800
79 
80 #define RTL_VRF_DBG_VERIFIER_LOGCALLS 0x04000
81 #define RTL_VRF_DBG_VERIFIER_SHOWDYNTHUNKS 0x08000
82 
83 #define RTL_VRF_DBG_ENTRYPOINT_HOOKS 0x10000
84 #define RTL_VRF_DBG_ENTRYPOINT_CALLS 0x20000
85 
86 #endif // REACTOS_VERIFIER_H
signed char * PCHAR
Definition: retypes.h:7
PRTL_VERIFIER_THUNK_DESCRIPTOR DllThunks
Definition: verifier.h:20
struct _RTL_VERIFIER_DLL_DESCRIPTOR * PRTL_VERIFIER_DLL_DESCRIPTOR
VOID(NTAPI * RTL_VERIFIER_NTDLLHEAPFREE_CALLBACK)(PVOID AllocationBase, SIZE_T AllocationSize)
Definition: verifier.h:8
RTL_VERIFIER_DLL_UNLOAD_CALLBACK ProviderDllUnloadCallback
Definition: verifier.h:28
uint16_t * PWSTR
Definition: typedefs.h:56
VOID(NTAPI * RTL_VERIFIER_DLL_LOAD_CALLBACK)(PWSTR DllName, PVOID DllBase, SIZE_T DllSize, PVOID Reserved)
Definition: verifier.h:6
struct _RTL_VERIFIER_PROVIDER_DESCRIPTOR RTL_VERIFIER_PROVIDER_DESCRIPTOR
uint16_t * PWCHAR
Definition: typedefs.h:56
VOID(NTAPI * RTL_VERIFIER_DLL_UNLOAD_CALLBACK)(PWSTR DllName, PVOID DllBase, SIZE_T DllSize, PVOID Reserved)
Definition: verifier.h:7
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
Definition: IoEaTest.cpp:117
PRTL_VERIFIER_DLL_DESCRIPTOR ProviderDlls
Definition: verifier.h:26
_Reserved_ PVOID Reserved
Definition: winddi.h:3974
RTL_VERIFIER_DLL_LOAD_CALLBACK ProviderDllLoadCallback
Definition: verifier.h:27
unsigned long DWORD
Definition: ntddk_ex.h:95
struct _RTL_VERIFIER_PROVIDER_DESCRIPTOR * PRTL_VERIFIER_PROVIDER_DESCRIPTOR
#define VOID
Definition: acefi.h:82
struct _RTL_VERIFIER_THUNK_DESCRIPTOR RTL_VERIFIER_THUNK_DESCRIPTOR
IN PFCB IN PFILE_OBJECT FileObject IN ULONG AllocationSize
Definition: fatprocs.h:319
ULONG_PTR SIZE_T
Definition: typedefs.h:80
RTL_VERIFIER_NTDLLHEAPFREE_CALLBACK ProviderNtdllHeapFreeCallback
Definition: verifier.h:39
struct _RTL_VERIFIER_DLL_DESCRIPTOR RTL_VERIFIER_DLL_DESCRIPTOR
struct _RTL_VERIFIER_THUNK_DESCRIPTOR * PRTL_VERIFIER_THUNK_DESCRIPTOR