ReactOS 0.4.16-dev-41-ge8c7597
|
Go to the source code of this file.
Classes | |
struct | tagHOOKAPI |
struct | tagSHIMREG |
Macros | |
#define | SHIM_REASON_INIT 100 |
#define | SHIM_REASON_DEINIT 101 |
#define | SHIM_REASON_DLL_LOAD 102 /* Arg: PLDR_DATA_TABLE_ENTRY */ |
#define | SHIM_REASON_DLL_UNLOAD 103 /* Arg: PLDR_DATA_TABLE_ENTRY */ |
#define | SHIM_NOTIFY_ATTACH 1 |
#define | SHIM_NOTIFY_DETACH 2 |
#define | SHIM_NOTIFY_DLL_LOAD 3 /* Arg: PLDR_DATA_TABLE_ENTRY */ |
#define | SHIM_NOTIFY_DLL_UNLOAD 4 /* Arg: PLDR_DATA_TABLE_ENTRY */ |
#define | SHIM_MSG(fmt, ...) do { if (g_ShimEngDebugLevel) SeiDbgPrint(SEI_MSG, SHIM_OBJ_NAME(g_szModuleName), fmt, ##__VA_ARGS__ ); } while (0) |
#define | SHIM_FAIL(fmt, ...) do { if (g_ShimEngDebugLevel) SeiDbgPrint(SEI_FAIL, SHIM_OBJ_NAME(g_szModuleName), fmt, ##__VA_ARGS__ ); } while (0) |
#define | SHIM_WARN(fmt, ...) do { if (g_ShimEngDebugLevel) SeiDbgPrint(SEI_WARN, SHIM_OBJ_NAME(g_szModuleName), fmt, ##__VA_ARGS__ ); } while (0) |
#define | SHIM_INFO(fmt, ...) do { if (g_ShimEngDebugLevel) SeiDbgPrint(SEI_INFO, SHIM_OBJ_NAME(g_szModuleName), fmt, ##__VA_ARGS__ ); } while (0) |
Typedefs | |
typedef struct tagHOOKAPI | HOOKAPI |
typedef struct tagHOOKAPI * | PHOOKAPI |
typedef enum _SEI_LOG_LEVEL | SEI_LOG_LEVEL |
typedef PHOOKAPI(WINAPI * | _PVGetHookAPIs) (DWORD, PCSTR, PDWORD) |
typedef BOOL(WINAPI * | _PVNotify) (DWORD, PVOID) |
typedef struct tagSHIMREG | SHIMREG |
typedef struct tagSHIMREG * | PSHIMREG |
Enumerations | |
enum | _SEI_LOG_LEVEL { SEI_MSG = 1 , SEI_FAIL = 2 , SEI_WARN = 3 , SEI_INFO = 4 } |
Functions | |
PVOID | ShimLib_ShimMalloc (SIZE_T dwSize) |
VOID | ShimLib_ShimFree (PVOID pData) |
PCSTR | ShimLib_StringDuplicateA (PCSTR szString) |
PCSTR | ShimLib_StringNDuplicateA (PCSTR szString, SIZE_T stringLength) |
BOOL | ShimLib_StrAEqualsWNC (PCSTR szString, PCWSTR wszString) |
HINSTANCE | ShimLib_Instance (VOID) |
VOID | ShimLib_Init (HINSTANCE hInstance) |
VOID | ShimLib_Deinit (VOID) |
PHOOKAPI WINAPI | ShimLib_GetHookAPIs (LPCSTR szCommandLine, LPCWSTR wszShimName, PDWORD pdwHookCount) |
BOOL WINAPI | ShimLib_NotifyShims (DWORD fdwReason, PVOID ptr) |
BOOL WINAPIV | SeiDbgPrint (SEI_LOG_LEVEL Level, PCSTR Function, PCSTR Format,...) |
Variables | |
ULONG | g_ShimEngDebugLevel |
#define SHIM_FAIL | ( | fmt, | |
... | |||
) | do { if (g_ShimEngDebugLevel) SeiDbgPrint(SEI_FAIL, SHIM_OBJ_NAME(g_szModuleName), fmt, ##__VA_ARGS__ ); } while (0) |
#define SHIM_INFO | ( | fmt, | |
... | |||
) | do { if (g_ShimEngDebugLevel) SeiDbgPrint(SEI_INFO, SHIM_OBJ_NAME(g_szModuleName), fmt, ##__VA_ARGS__ ); } while (0) |
#define SHIM_MSG | ( | fmt, | |
... | |||
) | do { if (g_ShimEngDebugLevel) SeiDbgPrint(SEI_MSG, SHIM_OBJ_NAME(g_szModuleName), fmt, ##__VA_ARGS__ ); } while (0) |
#define SHIM_NOTIFY_DLL_LOAD 3 /* Arg: PLDR_DATA_TABLE_ENTRY */ |
#define SHIM_NOTIFY_DLL_UNLOAD 4 /* Arg: PLDR_DATA_TABLE_ENTRY */ |
#define SHIM_REASON_DLL_LOAD 102 /* Arg: PLDR_DATA_TABLE_ENTRY */ |
#define SHIM_REASON_DLL_UNLOAD 103 /* Arg: PLDR_DATA_TABLE_ENTRY */ |
#define SHIM_WARN | ( | fmt, | |
... | |||
) | do { if (g_ShimEngDebugLevel) SeiDbgPrint(SEI_WARN, SHIM_OBJ_NAME(g_szModuleName), fmt, ##__VA_ARGS__ ); } while (0) |
typedef struct tagHOOKAPI HOOKAPI |
typedef struct tagHOOKAPI * PHOOKAPI |
typedef struct tagSHIMREG * PSHIMREG |
typedef enum _SEI_LOG_LEVEL SEI_LOG_LEVEL |
typedef struct tagSHIMREG SHIMREG |
BOOL WINAPIV SeiDbgPrint | ( | SEI_LOG_LEVEL | Level, |
PCSTR | Function, | ||
PCSTR | Format, | ||
... | |||
) |
Outputs diagnostic info.
[in] | Level | The level to log this message with, choose any of [SHIM_ERR, SHIM_WARN, SHIM_INFO]. |
[in] | FunctionName | The function this log should be attributed to. |
[in] | Format | The format string. |
... | Variable arguments providing additional information. |
Definition at line 160 of file shimeng.c.
Referenced by SeiBuildShimRefArray(), and SeiInit().
PHOOKAPI WINAPI ShimLib_GetHookAPIs | ( | LPCSTR | szCommandLine, |
LPCWSTR | wszShimName, | ||
PDWORD | pdwHookCount | ||
) |
Definition at line 30 of file shimlib.c.
Referenced by DllMain().
Definition at line 55 of file shimlib.c.
Referenced by APIHook_FreeLibrary(), APIHook_GetProcAddress(), APIHook_LoadLibraryA(), APIHook_LoadLibraryExA(), APIHook_LoadLibraryExW(), and APIHook_LoadLibraryW().
Definition at line 136 of file shimlib.c.
Referenced by NotifyShims().
Definition at line 50 of file shimlib.c.
Referenced by FreeLibrary(), and InitIgnoreFreeLibrary().
Definition at line 45 of file shimlib.c.
Referenced by FreeLibrary(), InitIgnoreFreeLibrary(), ShimLib_GetHookAPIs(), ShimLib_Init(), and ShimLib_StringNDuplicateA().
Definition at line 72 of file shimlib.c.
Referenced by ShimLib_GetHookAPIs().
Definition at line 67 of file shimlib.c.
Referenced by InitIgnoreFreeLibrary().
Definition at line 60 of file shimlib.c.
Referenced by InitIgnoreFreeLibrary(), and ShimLib_StringDuplicateA().
|
extern |
Definition at line 32 of file shimeng.c.
Referenced by SeiDbgPrint(), and SeiInitDebugSupport().