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.

81 lines
1.6 KiB

  1. /*++
  2. Copyright (c) Microsoft Corporation. All rights reserved.
  3. Header Name:
  4. tracker.h
  5. Abstract:
  6. Verifier call history tracker.
  7. Author:
  8. Silviu Calinoiu (SilviuC) Jul-11-2002
  9. Revision History:
  10. --*/
  11. #ifndef _TRACKER_H_
  12. #define _TRACKER_H_
  13. //
  14. // This codes are used also by the !avrf debugger extension.
  15. //
  16. #define TRACK_HEAP_ALLOCATE 1
  17. #define TRACK_HEAP_REALLOCATE 2
  18. #define TRACK_HEAP_FREE 3
  19. #define TRACK_VIRTUAL_ALLOCATE 4
  20. #define TRACK_VIRTUAL_FREE 5
  21. #define TRACK_VIRTUAL_PROTECT 6
  22. #define TRACK_MAP_VIEW_OF_SECTION 7
  23. #define TRACK_UNMAP_VIEW_OF_SECTION 8
  24. #define TRACK_EXIT_PROCESS 9
  25. #define TRACK_TERMINATE_THREAD 10
  26. #define TRACK_SUSPEND_THREAD 11
  27. typedef struct _AVRF_TRACKER_ENTRY {
  28. USHORT Type;
  29. USHORT TraceDepth;
  30. PVOID Info[4];
  31. PVOID Trace [MAX_TRACE_DEPTH];
  32. } AVRF_TRACKER_ENTRY, *PAVRF_TRACKER_ENTRY;
  33. typedef struct _AVRF_TRACKER {
  34. ULONG Size;
  35. ULONG Index;
  36. AVRF_TRACKER_ENTRY Entry[1];
  37. } AVRF_TRACKER, *PAVRF_TRACKER;
  38. PAVRF_TRACKER
  39. AVrfCreateTracker (
  40. ULONG Size
  41. );
  42. VOID
  43. AVrfDestroyTracker (
  44. PAVRF_TRACKER Tracker
  45. );
  46. VOID
  47. AVrfLogInTracker (
  48. PAVRF_TRACKER Tracker,
  49. USHORT EntryType,
  50. PVOID EntryParam1,
  51. PVOID EntryParam2,
  52. PVOID EntryParam3,
  53. PVOID EntryParam4,
  54. PVOID ReturnAddress
  55. );
  56. #endif // _TRACKER_H_