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

Handler class for the NtQuerySystemInformation system call. More...

#include <NtQuerySystemInformation.hh>

Inheritance diagram for introvirt::windows::nt::NtQuerySystemInformation:
Collaboration diagram for introvirt::windows::nt::NtQuerySystemInformation:

Public Member Functions

virtual SYSTEM_INFORMATION_CLASS SystemInformationClass () const =0
 Getter for SystemInformationClass.
 
virtual guest_ptr< void > SystemInformationPtr () const =0
 Getter for SystemInformationPtr.
 
virtual uint32_t SystemInformationLength () const =0
 Getter for SystemInformationLength.
 
virtual guest_ptr< void > ResultLengthPtr () const =0
 Getter for ResultLengthPtr.
 
virtual void SystemInformationClass (SYSTEM_INFORMATION_CLASS SystemInformationClass)=0
 Setter for SystemInformationClass.
 
virtual void SystemInformationPtr (const guest_ptr< void > &pSystemInformation)=0
 Setter for SystemInformationPtr.
 
virtual void SystemInformationLength (uint32_t SystemInformationLength)=0
 Setter for SystemInformationLength.
 
virtual void ResultLengthPtr (const guest_ptr< void > &pResultLength)=0
 Setter for ResultLengthPtr.
 
virtual const SYSTEM_INFORMATIONSystemInformation () const =0
 
virtual SYSTEM_INFORMATIONSystemInformation ()=0
 
virtual uint32_t ResultLength () const =0
 
virtual void ResultLength (uint32_t ResultLength)=0
 
- Public Member Functions inherited from introvirt::windows::nt::NtSystemCall
virtual NTSTATUS result () const =0
 Get the result code.
 
virtual void result (NTSTATUS_CODE code)=0
 Set the result code.
 
- Public Member Functions inherited from introvirt::windows::WindowsSystemCall
virtual SystemCallIndex index () const =0
 Get the system call number.
 
- Public Member Functions inherited from introvirt::SystemCall
virtual const std::string & name () const =0
 Get the name of the system call.
 
virtual void write (std::ostream &os=std::cout) const =0
 Write a human-readable description of this system call.
 
virtual Json::Value json () const =0
 
virtual bool will_return () const =0
 
virtual void data (const std::string &key, const std::shared_ptr< void > &value)=0
 Store arbitrary data with the SystemCall.
 
virtual void data (const std::string &key, std::shared_ptr< void > &&value)=0
 Store arbitrary data with the SystemCall.
 
virtual std::shared_ptr< void > data (const std::string &key)=0
 Retrieve arbitrary data stored with the SystemCall.
 
virtual std::shared_ptr< const void > data (const std::string &key) const =0
 Retrieve arbitrary data stored with the SystemCall.
 
virtual bool supported () const =0
 Check if this system call is supported by a more specific handler.
 
virtual void handle_return_event (Event &event)=0
 Handle a system call return event.
 
virtual ~SystemCall ()=default
 Destroy the instance.
 

Static Public Member Functions

static NTSTATUS inject (SYSTEM_INFORMATION_CLASS SystemInformationClass, const guest_ptr< void > &pSystemInformation, uint32_t SystemInformationLength, uint32_t *ResultLength)
 

Detailed Description

Handler class for the NtQuerySystemInformation system call.

Member Function Documentation

◆ inject()

static NTSTATUS introvirt::windows::nt::NtQuerySystemInformation::inject ( SYSTEM_INFORMATION_CLASS  SystemInformationClass,
const guest_ptr< void > &  pSystemInformation,
uint32_t  SystemInformationLength,
uint32_t *  ResultLength 
)
static

◆ ResultLength() [1/2]

virtual uint32_t introvirt::windows::nt::NtQuerySystemInformation::ResultLength ( ) const
pure virtual

◆ ResultLength() [2/2]

virtual void introvirt::windows::nt::NtQuerySystemInformation::ResultLength ( uint32_t  ResultLength)
pure virtual

◆ ResultLengthPtr() [1/2]

virtual guest_ptr< void > introvirt::windows::nt::NtQuerySystemInformation::ResultLengthPtr ( ) const
pure virtual

Getter for ResultLengthPtr.

Returns
The address pointed to by the the ResultLengthPtr parameter

◆ ResultLengthPtr() [2/2]

virtual void introvirt::windows::nt::NtQuerySystemInformation::ResultLengthPtr ( const guest_ptr< void > &  pResultLength)
pure virtual

Setter for ResultLengthPtr.

Parameters
pResultLengthThe address to set for the ResultLengthPtr parameter

◆ SystemInformation() [1/2]

virtual const SYSTEM_INFORMATION * introvirt::windows::nt::NtQuerySystemInformation::SystemInformation ( ) const
pure virtual

◆ SystemInformation() [2/2]

virtual SYSTEM_INFORMATION * introvirt::windows::nt::NtQuerySystemInformation::SystemInformation ( )
pure virtual

◆ SystemInformationClass() [1/2]

virtual SYSTEM_INFORMATION_CLASS introvirt::windows::nt::NtQuerySystemInformation::SystemInformationClass ( ) const
pure virtual

Getter for SystemInformationClass.

Returns
The value of the SystemInformationClass parameter

◆ SystemInformationClass() [2/2]

virtual void introvirt::windows::nt::NtQuerySystemInformation::SystemInformationClass ( SYSTEM_INFORMATION_CLASS  SystemInformationClass)
pure virtual

Setter for SystemInformationClass.

Parameters
SystemInformationClassThe value to set for the SystemInformationClass parameter

◆ SystemInformationLength() [1/2]

virtual uint32_t introvirt::windows::nt::NtQuerySystemInformation::SystemInformationLength ( ) const
pure virtual

Getter for SystemInformationLength.

Returns
The value of the SystemInformationLength parameter

◆ SystemInformationLength() [2/2]

virtual void introvirt::windows::nt::NtQuerySystemInformation::SystemInformationLength ( uint32_t  SystemInformationLength)
pure virtual

Setter for SystemInformationLength.

Parameters
SystemInformationLengthThe value to set for the SystemInformationLength parameter

◆ SystemInformationPtr() [1/2]

virtual guest_ptr< void > introvirt::windows::nt::NtQuerySystemInformation::SystemInformationPtr ( ) const
pure virtual

Getter for SystemInformationPtr.

Returns
The address pointed to by the the SystemInformationPtr parameter

◆ SystemInformationPtr() [2/2]

virtual void introvirt::windows::nt::NtQuerySystemInformation::SystemInformationPtr ( const guest_ptr< void > &  pSystemInformation)
pure virtual

Setter for SystemInformationPtr.

Parameters
pSystemInformationThe address to set for the SystemInformationPtr parameter

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