HyperDbg Debugger
Toggle main menu visibility
Loading...
Searching...
No Matches
CompatibilityChecks.h
Go to the documentation of this file.
1
13
#include "pch.h"
14
16
// Structures //
18
23
typedef
struct
_COMPATIBILITY_CHECKS_STATUS
24
{
25
BOOLEAN
IsX2Apic
;
// X2APIC or XAPIC routine
26
BOOLEAN
RtmSupport
;
// check for RTM support
27
BOOLEAN
PmlSupport
;
// check Page Modification Logging (PML) support
28
BOOLEAN
ModeBasedExecutionSupport
;
// check for mode based execution support (processors after Kaby Lake release will support this feature)
29
BOOLEAN
ExecuteOnlySupport
;
// Support for execute-only pages (indicating that data accesses are not allowed while instruction fetches are allowed)
30
BOOLEAN
CetIbtSupport
;
// CET IBT support (indicating that indirect branch tracking is supported)
31
BOOLEAN
CetShadowStackSupport
;
// CET shadow stack support (indicating that shadow stacks are supported)
32
UINT32
VirtualAddressWidth
;
// Virtual address width for x86 processors
33
UINT32
PhysicalAddressWidth
;
// Physical address width for x86 processors
34
35
}
COMPATIBILITY_CHECKS_STATUS
, *
PCOMPATIBILITY_CHECKS_STATUS
;
36
38
// Functions //
40
41
VOID
42
CompatibilityCheckPerformChecks
();
CompatibilityCheckPerformChecks
VOID CompatibilityCheckPerformChecks()
Checks for the compatibility features based on current processor @detail NOTE: NOT ALL OF THE CHECKS ...
Definition
CompatibilityChecks.c:183
COMPATIBILITY_CHECKS_STATUS
struct _COMPATIBILITY_CHECKS_STATUS COMPATIBILITY_CHECKS_STATUS
The status of available features in the processor.
PCOMPATIBILITY_CHECKS_STATUS
struct _COMPATIBILITY_CHECKS_STATUS * PCOMPATIBILITY_CHECKS_STATUS
BOOLEAN
UCHAR BOOLEAN
Definition
BasicTypes.h:35
UINT32
unsigned int UINT32
Definition
BasicTypes.h:54
_COMPATIBILITY_CHECKS_STATUS
The status of available features in the processor.
Definition
CompatibilityChecks.h:24
_COMPATIBILITY_CHECKS_STATUS::CetShadowStackSupport
BOOLEAN CetShadowStackSupport
Definition
CompatibilityChecks.h:31
_COMPATIBILITY_CHECKS_STATUS::ModeBasedExecutionSupport
BOOLEAN ModeBasedExecutionSupport
Definition
CompatibilityChecks.h:28
_COMPATIBILITY_CHECKS_STATUS::VirtualAddressWidth
UINT32 VirtualAddressWidth
Definition
CompatibilityChecks.h:32
_COMPATIBILITY_CHECKS_STATUS::PhysicalAddressWidth
UINT32 PhysicalAddressWidth
Definition
CompatibilityChecks.h:33
_COMPATIBILITY_CHECKS_STATUS::IsX2Apic
BOOLEAN IsX2Apic
Definition
CompatibilityChecks.h:25
_COMPATIBILITY_CHECKS_STATUS::CetIbtSupport
BOOLEAN CetIbtSupport
Definition
CompatibilityChecks.h:30
_COMPATIBILITY_CHECKS_STATUS::PmlSupport
BOOLEAN PmlSupport
Definition
CompatibilityChecks.h:27
_COMPATIBILITY_CHECKS_STATUS::RtmSupport
BOOLEAN RtmSupport
Definition
CompatibilityChecks.h:26
_COMPATIBILITY_CHECKS_STATUS::ExecuteOnlySupport
BOOLEAN ExecuteOnlySupport
Definition
CompatibilityChecks.h:29
hyperdbg
hyperhv
header
features
CompatibilityChecks.h
Generated by
1.17.0