Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

113 lines
2.9 KiB

  1. /*++
  2. Copyright (c) 1997-2001 Microsoft Corporation
  3. Module Name:
  4. ipsecwpp.h
  5. Abstract:
  6. This file contains definitions included for WPP tracing support in the
  7. ipsec driver.
  8. Author:
  9. pmay 4-April-2002
  10. Environment:
  11. Kernel mode
  12. Revision History:
  13. --*/
  14. #undef offsetof
  15. #include <evntrace.h>
  16. #include <stdarg.h>
  17. #define LL_A 0x1
  18. #define IpSecTraceLevelDefine \
  19. WPP_DEFINE_BIT( DBF_LOAD ) \
  20. WPP_DEFINE_BIT( DBF_AH ) \
  21. WPP_DEFINE_BIT( DBF_IOCTL ) \
  22. WPP_DEFINE_BIT( DBF_HUGHES ) \
  23. WPP_DEFINE_BIT( DBF_ESP ) \
  24. WPP_DEFINE_BIT( DBF_AHEX ) \
  25. WPP_DEFINE_BIT( DBF_PATTERN ) \
  26. WPP_DEFINE_BIT( DBF_SEND ) \
  27. WPP_DEFINE_BIT( DBF_PARSE ) \
  28. WPP_DEFINE_BIT( DBF_PMTU ) \
  29. WPP_DEFINE_BIT( DBF_ACQUIRE ) \
  30. WPP_DEFINE_BIT( DBF_HASH ) \
  31. WPP_DEFINE_BIT( DBF_CLEARTEXT ) \
  32. WPP_DEFINE_BIT( DBF_TIMER ) \
  33. WPP_DEFINE_BIT( DBF_REF ) \
  34. WPP_DEFINE_BIT( DBF_SA ) \
  35. WPP_DEFINE_BIT( DBF_ALL ) \
  36. WPP_DEFINE_BIT( DBF_POOL ) \
  37. WPP_DEFINE_BIT( DBF_TUNNEL ) \
  38. WPP_DEFINE_BIT( DBF_HW ) \
  39. WPP_DEFINE_BIT( DBF_COMP ) \
  40. WPP_DEFINE_BIT( DBF_SAAPI ) \
  41. WPP_DEFINE_BIT( DBF_CACHE ) \
  42. WPP_DEFINE_BIT( DBF_TRANS ) \
  43. WPP_DEFINE_BIT( DBF_MDL ) \
  44. WPP_DEFINE_BIT( DBF_REKEY ) \
  45. WPP_DEFINE_BIT( DBF_GENHASH ) \
  46. WPP_DEFINE_BIT( DBF_HWAPI ) \
  47. WPP_DEFINE_BIT( DBF_GPC ) \
  48. WPP_DEFINE_BIT( DBF_NATSHIM ) \
  49. WPP_DEFINE_BIT(DBF_BOOTTIME) \
  50. #define WPP_CONTROL_GUIDS \
  51. WPP_DEFINE_CONTROL_GUID(IpSecTrace, (6537b295, 83c9, 4811, b7fe, e7dbf2f22cec), \
  52. IpSecTraceLevelDefine \
  53. )
  54. #define WPP_LEVEL_FLAGS_LOGGER(lvl,flags) WPP_LEVEL_LOGGER(flags)
  55. #define WPP_LEVEL_FLAGS_ENABLED(lvl, flags) (WPP_LEVEL_ENABLED(flags) && WPP_CONTROL(WPP_BIT_ ## flags).Level >= lvl)
  56. NTKERNELAPI
  57. NTSTATUS
  58. WmiTraceMessage(
  59. IN TRACEHANDLE LoggerHandle,
  60. IN ULONG MessageFlags,
  61. IN LPGUID MessageGuid,
  62. IN USHORT MessageNumber,
  63. IN ...
  64. );
  65. NTKERNELAPI
  66. NTSTATUS
  67. WmiTraceMessageVa(
  68. IN TRACEHANDLE LoggerHandle,
  69. IN ULONG MessageFlags,
  70. IN LPGUID MessageGuid,
  71. IN USHORT MessageNumber,
  72. IN va_list MessageArgList
  73. );
  74. typedef enum _TRACE_INFORMATION_CLASS {
  75. TraceIdClass,
  76. TraceHandleClass,
  77. TraceEnableFlagsClass,
  78. TraceEnableLevelClass,
  79. GlobalLoggerHandleClass,
  80. EventLoggerHandleClass,
  81. AllLoggerHandlesClass,
  82. TraceHandleByNameClass
  83. } TRACE_INFORMATION_CLASS;
  84. NTKERNELAPI
  85. NTSTATUS
  86. WmiQueryTraceInformation(
  87. IN TRACE_INFORMATION_CLASS TraceInformationClass,
  88. OUT PVOID TraceInformation,
  89. IN ULONG TraceInformationLength,
  90. OUT PULONG RequiredLength OPTIONAL,
  91. IN PVOID Buffer OPTIONAL
  92. );