Bitdefender Hypervisor Memory Introspection
debugger.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2020 Bitdefender
3
* SPDX-License-Identifier: Apache-2.0
4
*/
5
#ifndef _DEBUGGER_H_
6
#define _DEBUGGER_H_
7
8
#include "
introtypes.h
"
9
10
11
//#define DEBUG_MEM_ALLOCS
12
//#define DEBUG_EPT_VIOLATIONS
13
//#define DEBUG_CHECK_HOOKS
14
15
#ifdef DEBUG_MEM_ALLOCS
16
#define HpAllocWithTag(Add, Len, Tag) IntDbgAllocMem(Len, Tag, __FILENAME__, __LINE__)
17
#define HpFreeAndNullWithTag(Add, Tag) IntDbgFreeMem(Add, Tag, __LINE__)
18
#endif
19
20
INTSTATUS
21
IntDbgProcessCommand
(
22
_In_
DWORD
Argc,
23
_In_
const
char
*Argv[]
24
);
25
26
#ifdef DEBUG_MEM_ALLOCS
27
28
__attribute__((malloc))
29
__attribute__ ((alloc_size (1)))
30
__must_check
void
*
31
IntDbgAllocMem(
32
_In_
size_t
Size,
33
_In_
DWORD
Tag,
34
_In_
const
char
*FileName,
35
_In_
DWORD
Line
36
);
37
38
INTSTATUS
39
IntDbgFreeMem(
40
_In_
void
**Address,
41
_In_
DWORD
Tag,
42
_In_
DWORD
Line
43
);
44
45
INTSTATUS
46
IntDbgDumpAllocs(
47
_In_opt_
DWORD
Tag
48
);
49
50
INTSTATUS
51
IntDbgCheckAllocs(
52
void
53
);
54
55
#endif // DEBUG_MEM_ALLOCS
56
57
#ifdef DEBUG_CHECK_HOOKS
58
59
static
void
60
IntDbgCheckHooks
(
61
void
62
);
63
64
#endif // DEBUG_CHECK_HOOKS
65
66
#endif // _DEBUGGER_H_
_In_opt_
#define _In_opt_
Definition:
intro_sal.h:16
_In_
#define _In_
Definition:
intro_sal.h:21
INTSTATUS
int INTSTATUS
The status data type.
Definition:
introstatus.h:24
introtypes.h
IntDbgCheckHooks
static void IntDbgCheckHooks(void)
Definition:
debugger.c:182
__must_check
#define __must_check
Definition:
introtypes.h:48
IntDbgProcessCommand
INTSTATUS IntDbgProcessCommand(DWORD Argc, const char *Argv[])
Definition:
debugger.c:2857
DWORD
uint32_t DWORD
Definition:
intro_types.h:49
introcore
include
debugger.h
Generated by
1.8.13