libintrovirt v0.57.4
IntroVirt introspection library
Loading...
Searching...
No Matches
introvirt::windows::nt::PAGE_PROTECTION Class Referencefinal

#include <PAGE_PROTECTION.hh>

Public Types

enum  PageProtectionFlag {
  UNKNOWN = 0x00 , PAGE_NOACCESS = 0x01 , PAGE_READONLY = 0x02 , PAGE_READWRITE = 0x04 ,
  PAGE_WRITECOPY = 0x08 , PAGE_EXECUTE = 0x10 , PAGE_EXECUTE_READ = 0x20 , PAGE_EXECUTE_READWRITE = 0x40 ,
  PAGE_EXECUTE_WRITECOPY = 0x80 , PAGE_GUARD = 0x100 , PAGE_NOCACHE = 0x200 , PAGE_WRITECOMBINE = 0x400
}
 

Public Member Functions

bool operator== (const PAGE_PROTECTION &other) const
 
PAGE_PROTECTIONoperator= (const PAGE_PROTECTION &other)
 
bool isExecutable () const
 
bool isWritable () const
 
bool isReadable () const
 
bool isCopyOnWrite () const
 
bool isRWX () const
 
void clearExecutable ()
 
void clearWritable ()
 
void changeToCopyOnWrite ()
 
uint32_t value () const
 
 operator uint32_t () const
 
std::string string () const
 
 PAGE_PROTECTION (uint32_t protection=0)
 
 PAGE_PROTECTION (PageProtectionFlag flag)
 
 PAGE_PROTECTION (const PAGE_PROTECTION &other)
 
 ~PAGE_PROTECTION ()
 

Static Public Member Functions

static PAGE_PROTECTION fromVadProtection (uint32_t protection)
 

Member Enumeration Documentation

◆ PageProtectionFlag

Enumerator
UNKNOWN 
PAGE_NOACCESS 
PAGE_READONLY 
PAGE_READWRITE 
PAGE_WRITECOPY 
PAGE_EXECUTE 
PAGE_EXECUTE_READ 
PAGE_EXECUTE_READWRITE 
PAGE_EXECUTE_WRITECOPY 
PAGE_GUARD 
PAGE_NOCACHE 
PAGE_WRITECOMBINE 

Constructor & Destructor Documentation

◆ PAGE_PROTECTION() [1/3]

introvirt::windows::nt::PAGE_PROTECTION::PAGE_PROTECTION ( uint32_t  protection = 0)

Create a PAGE_PROTECTION parser using a raw value

Parameters
protectionThe raw value to use

◆ PAGE_PROTECTION() [2/3]

introvirt::windows::nt::PAGE_PROTECTION::PAGE_PROTECTION ( PageProtectionFlag  flag)

Create a PAGE_PROTECTION parser using a specific flag

Parameters
flagThe flag to use

◆ PAGE_PROTECTION() [3/3]

introvirt::windows::nt::PAGE_PROTECTION::PAGE_PROTECTION ( const PAGE_PROTECTION other)

Copy constructor

Parameters
otherThe PAGE_PROTECTION to copy

◆ ~PAGE_PROTECTION()

introvirt::windows::nt::PAGE_PROTECTION::~PAGE_PROTECTION ( )

Member Function Documentation

◆ changeToCopyOnWrite()

void introvirt::windows::nt::PAGE_PROTECTION::changeToCopyOnWrite ( )

Set the copy on write bit

◆ clearExecutable()

void introvirt::windows::nt::PAGE_PROTECTION::clearExecutable ( )

Clear the executable bit

◆ clearWritable()

void introvirt::windows::nt::PAGE_PROTECTION::clearWritable ( )

Clear the writable bit

◆ fromVadProtection()

static PAGE_PROTECTION introvirt::windows::nt::PAGE_PROTECTION::fromVadProtection ( uint32_t  protection)
static

Create a PAGE_PROTECTION from a VAD protection

Parameters
protectionThe VAD protection to use
Returns
A PAGE_PROTECTION object

◆ isCopyOnWrite()

bool introvirt::windows::nt::PAGE_PROTECTION::isCopyOnWrite ( ) const
Returns
True if the copy-on-write flag is set

◆ isExecutable()

bool introvirt::windows::nt::PAGE_PROTECTION::isExecutable ( ) const
Returns
True if the executable flag is set

◆ isReadable()

bool introvirt::windows::nt::PAGE_PROTECTION::isReadable ( ) const
Returns
True if the readable flag is set

◆ isRWX()

bool introvirt::windows::nt::PAGE_PROTECTION::isRWX ( ) const
Returns
True if readable, writable, and executable

◆ isWritable()

bool introvirt::windows::nt::PAGE_PROTECTION::isWritable ( ) const
Returns
True if the writable flag is set

◆ operator uint32_t()

introvirt::windows::nt::PAGE_PROTECTION::operator uint32_t ( ) const

◆ operator=()

PAGE_PROTECTION & introvirt::windows::nt::PAGE_PROTECTION::operator= ( const PAGE_PROTECTION other)

Assignment operator

Parameters
otherPAGE_PROTECTION to copy

◆ operator==()

bool introvirt::windows::nt::PAGE_PROTECTION::operator== ( const PAGE_PROTECTION other) const

Comparison operator

Parameters
otherThe PAGE_PROTECTION to compare against
Returns
True if the PAGE_PROTECTION values are equal

◆ string()

std::string introvirt::windows::nt::PAGE_PROTECTION::string ( ) const
Returns
A string representation of the protection bits

◆ value()

uint32_t introvirt::windows::nt::PAGE_PROTECTION::value ( ) const
Returns
The raw value

The documentation for this class was generated from the following file: