CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In
rapid7

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.

GitHub Repository: rapid7/metasploit-framework
Path: blob/master/external/source/byakugan/byakugan.h
Views: 11766
1
#include <windows.h>
2
#include <winerror.h>
3
4
#include <string.h>
5
#include <strsafe.h>
6
7
#include <stdio.h>
8
#include <stdlib.h>
9
10
//
11
// Define KDEXT_64BIT to make all wdbgexts APIs recognize 64 bit addresses
12
// It is recommended for extensions to use 64 bit headers from wdbgexts so
13
// the extensions could support 64 bit targets.
14
//
15
// So says MS.... Hopefully the new extension API will do a better job
16
// than the legacy API at this....
17
//
18
#define KDEXT_64BIT
19
#include <wdbgexts.h>
20
#include <dbgeng.h>
21
22
#pragma warning(disable:4201) // nonstandard extension used : nameless struct
23
#include <extsfns.h>
24
25
#ifdef __cplusplus
26
extern "C" {
27
#endif
28
29
#define HELPSTRING "Byakugan - Increase your Sight\nPusscat / Lin0xx\n\n"
30
31
32
#define INIT_API() \
33
HRESULT Status; \
34
if ((Status = ExtQuery(Client)) != S_OK) return Status;
35
36
#define EXT_RELEASE(Unk) \
37
((Unk) != NULL ? ((Unk)->Release(), (Unk) = NULL) : NULL)
38
39
#define EXIT_API ExtRelease
40
41
#define NTSTATUS ULONG
42
#define STATUS_NO_MORE_ENTRIES ((NTSTATUS)0x8000001AL)
43
44
// Global variables initialized by query.
45
extern PDEBUG_CLIENT4 g_ExtClient;
46
extern PDEBUG_CONTROL g_ExtControl;
47
extern PDEBUG_SYMBOLS3 g_ExtSymbols;
48
extern PDEBUG_SYSTEM_OBJECTS2 g_ExtSystem;
49
extern PDEBUG_DATA_SPACES g_ExtData;
50
51
extern BOOL Connected;
52
extern ULONG TargetMachine;
53
extern ULONG64 disassemblyBuffer;
54
55
HRESULT
56
ExtQuery(PDEBUG_CLIENT4 Client);
57
58
void
59
ExtRelease(void);
60
61
HRESULT
62
NotifyOnTargetAccessible(PDEBUG_CONTROL Control);
63
64
#ifdef __cplusplus
65
}
66
#endif
67
68