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

Generic ACCESS_MASK type. More...

#include <ACCESS_MASK.hh>

Inheritance diagram for introvirt::windows::nt::ACCESS_MASK:

Public Types

enum  AccessMaskType {
  DirectoryAccessMask , EventAccessMask , FileAccessMask , KeyAccessMask ,
  MutantAccessMask , ProcessAccessMask , SectionAccessMask , ThreadAccessMask ,
  TokenAccessMask , UnknownAccessMaskType = -1
}
 

Public Member Functions

virtual AccessMaskType type () const
 Get the type of access mask.
 
Json::Value json () const
 Get a JSON representation of the mask.
 
 operator Json::Value () const
 Get a JSON representation of the mask.
 
uint32_t value () const
 Get the raw value.
 
 operator uint32_t () const
 Get the raw value.
 
void value (uint32_t mask)
 Set the raw value.
 
bool has (AccessMaskFlag flag) const
 Check if the given flag is enabled.
 
void set (AccessMaskFlag flag)
 Set the state of the given flag to enabled.
 
void clear (AccessMaskFlag flag)
 Clear the given flag.
 
 ACCESS_MASK ()=default
 
 ACCESS_MASK (uint32_t mask)
 
 ACCESS_MASK (const ACCESS_MASK &)=default
 
ACCESS_MASKoperator= (const ACCESS_MASK &)=default
 
virtual ~ACCESS_MASK ()=default
 

Detailed Description

Generic ACCESS_MASK type.

The ACCESS_MASK type has 16 bits reserved for specific types, such as Token and File, but also a common 8 bits for "standard" rights, and another 8 bits for other common fields.

When possible, one of the more specific classes should be used.

See also
AccessMaskFlag
DIR_ACCESS_MASK
EVENT_ACCESS_MASK
FILE_ACCESS_MASK
KEY_ACCESS_MASK
MUTANT_ACCESS_MASK
PROCESS_ACCESS_MASK
SECTION_ACCESS_MASK
THREAD_ACCESS_MASK
THREAD_ACCESS_MASK

Member Enumeration Documentation

◆ AccessMaskType

Enumerator
DirectoryAccessMask 
EventAccessMask 
FileAccessMask 
KeyAccessMask 
MutantAccessMask 
ProcessAccessMask 
SectionAccessMask 
ThreadAccessMask 
TokenAccessMask 
UnknownAccessMaskType 

Constructor & Destructor Documentation

◆ ACCESS_MASK() [1/3]

introvirt::windows::nt::ACCESS_MASK::ACCESS_MASK ( )
default

◆ ACCESS_MASK() [2/3]

introvirt::windows::nt::ACCESS_MASK::ACCESS_MASK ( uint32_t  mask)
inline

◆ ACCESS_MASK() [3/3]

introvirt::windows::nt::ACCESS_MASK::ACCESS_MASK ( const ACCESS_MASK )
default

◆ ~ACCESS_MASK()

virtual introvirt::windows::nt::ACCESS_MASK::~ACCESS_MASK ( )
virtualdefault

Member Function Documentation

◆ clear()

void introvirt::windows::nt::ACCESS_MASK::clear ( AccessMaskFlag  flag)
inline

Clear the given flag.

Parameters
flagThe flag to clear

◆ has()

bool introvirt::windows::nt::ACCESS_MASK::has ( AccessMaskFlag  flag) const
inline

Check if the given flag is enabled.

Parameters
flagThe flag to check
Returns
true if the flag is set
false if the flag is not set

◆ json()

Json::Value introvirt::windows::nt::ACCESS_MASK::json ( ) const
inline

Get a JSON representation of the mask.

Returns
Json::Value

◆ operator Json::Value()

introvirt::windows::nt::ACCESS_MASK::operator Json::Value ( ) const
inline

Get a JSON representation of the mask.

Returns
Json::Value

◆ operator uint32_t()

introvirt::windows::nt::ACCESS_MASK::operator uint32_t ( ) const
inline

Get the raw value.

Returns
uint32_t

◆ operator=()

ACCESS_MASK & introvirt::windows::nt::ACCESS_MASK::operator= ( const ACCESS_MASK )
default

◆ set()

void introvirt::windows::nt::ACCESS_MASK::set ( AccessMaskFlag  flag)
inline

Set the state of the given flag to enabled.

Parameters
flagThe flag to enable

◆ type()

◆ value() [1/2]

uint32_t introvirt::windows::nt::ACCESS_MASK::value ( ) const
inline

Get the raw value.

Returns
uint32_t

◆ value() [2/2]

void introvirt::windows::nt::ACCESS_MASK::value ( uint32_t  mask)
inline

Set the raw value.

Parameters
maskthe mask to set

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