mirror of
https://github.com/CyberSecurityUP/Offensive-Windows-Drivers-Development
synced 2026-06-06 15:34:28 +00:00
63 lines
2.1 KiB
C
63 lines
2.1 KiB
C
/*++
|
|
|
|
Module Name:
|
|
|
|
Trace.h
|
|
|
|
Abstract:
|
|
|
|
Header file for the debug tracing related function defintions and macros.
|
|
|
|
Environment:
|
|
|
|
Kernel mode
|
|
|
|
--*/
|
|
|
|
//
|
|
// Define the tracing flags.
|
|
//
|
|
// Tracing GUID - d52c03ae-c01c-4a36-9ba4-3dcf5c8c3f73
|
|
//
|
|
|
|
#define WPP_CONTROL_GUIDS \
|
|
WPP_DEFINE_CONTROL_GUID( \
|
|
CryptoDriver2TraceGuid, (d52c03ae,c01c,4a36,9ba4,3dcf5c8c3f73), \
|
|
\
|
|
WPP_DEFINE_BIT(MYDRIVER_ALL_INFO) \
|
|
WPP_DEFINE_BIT(TRACE_DRIVER) \
|
|
WPP_DEFINE_BIT(TRACE_DEVICE) \
|
|
WPP_DEFINE_BIT(TRACE_QUEUE) \
|
|
)
|
|
|
|
#define WPP_FLAG_LEVEL_LOGGER(flag, level) \
|
|
WPP_LEVEL_LOGGER(flag)
|
|
|
|
#define WPP_FLAG_LEVEL_ENABLED(flag, level) \
|
|
(WPP_LEVEL_ENABLED(flag) && \
|
|
WPP_CONTROL(WPP_BIT_ ## flag).Level >= level)
|
|
|
|
#define WPP_LEVEL_FLAGS_LOGGER(lvl,flags) \
|
|
WPP_LEVEL_LOGGER(flags)
|
|
|
|
#define WPP_LEVEL_FLAGS_ENABLED(lvl, flags) \
|
|
(WPP_LEVEL_ENABLED(flags) && WPP_CONTROL(WPP_BIT_ ## flags).Level >= lvl)
|
|
|
|
//
|
|
// WPP orders static parameters before dynamic parameters. To support the Trace function
|
|
// defined below which sets FLAGS=MYDRIVER_ALL_INFO, a custom macro must be defined to
|
|
// reorder the arguments to what the .tpl configuration file expects.
|
|
//
|
|
#define WPP_RECORDER_FLAGS_LEVEL_ARGS(flags, lvl) WPP_RECORDER_LEVEL_FLAGS_ARGS(lvl, flags)
|
|
#define WPP_RECORDER_FLAGS_LEVEL_FILTER(flags, lvl) WPP_RECORDER_LEVEL_FLAGS_FILTER(lvl, flags)
|
|
|
|
//
|
|
// This comment block is scanned by the trace preprocessor to define our
|
|
// Trace function.
|
|
//
|
|
// begin_wpp config
|
|
// FUNC Trace{FLAGS=MYDRIVER_ALL_INFO}(LEVEL, MSG, ...);
|
|
// FUNC TraceEvents(LEVEL, FLAGS, MSG, ...);
|
|
// end_wpp
|
|
//
|