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

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

#include <NtTraceControl.hh>

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

Public Member Functions

virtual uint32_t FunctionCode () const =0
 Getter for FunctionCode.
 
virtual guest_ptr< void > InBufferPtr () const =0
 Getter for InBufferPtr.
 
virtual uint32_t InBufferLen () const =0
 Getter for InBufferLen.
 
virtual guest_ptr< void > OutBufferPtr () const =0
 Getter for OutBufferPtr.
 
virtual guest_ptr< void > OutBufferLenPtr () const =0
 Getter for OutBufferLenPtr.
 
virtual guest_ptr< void > ReturnSizePtr () const =0
 Getter for ReturnSizePtr.
 
virtual void FunctionCode (uint32_t FunctionCode)=0
 Setter for FunctionCode.
 
virtual void InBufferPtr (const guest_ptr< void > &pInBuffer)=0
 Setter for InBufferPtr.
 
virtual void InBufferLen (uint32_t InBufferLen)=0
 Setter for InBufferLen.
 
virtual void OutBufferPtr (const guest_ptr< void > &pOutBuffer)=0
 Setter for OutBufferPtr.
 
virtual void OutBufferLenPtr (const guest_ptr< void > &pOutBufferLen)=0
 Setter for OutBufferLenPtr.
 
virtual void ReturnSizePtr (const guest_ptr< void > &pReturnSize)=0
 Setter for ReturnSizePtr.
 
virtual uint32_t ReturnSize () const =0
 
virtual void ReturnSize (uint32_t ReturnSize)=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 (uint32_t FunctionCode, const guest_ptr< void > &pInBuffer, uint32_t InBufferLen, const guest_ptr< void > &pOutBuffer, const guest_ptr< void > &pOutBufferLen, const uint32_t &ReturnSize)
 

Detailed Description

Handler class for the NtTraceControl system call.

Member Function Documentation

◆ FunctionCode() [1/2]

virtual uint32_t introvirt::windows::nt::NtTraceControl::FunctionCode ( ) const
pure virtual

Getter for FunctionCode.

Returns
The value of the FunctionCode parameter

◆ FunctionCode() [2/2]

virtual void introvirt::windows::nt::NtTraceControl::FunctionCode ( uint32_t  FunctionCode)
pure virtual

Setter for FunctionCode.

Parameters
FunctionCodeThe value to set for the FunctionCode parameter

◆ InBufferLen() [1/2]

virtual uint32_t introvirt::windows::nt::NtTraceControl::InBufferLen ( ) const
pure virtual

Getter for InBufferLen.

Returns
The value of the InBufferLen parameter

◆ InBufferLen() [2/2]

virtual void introvirt::windows::nt::NtTraceControl::InBufferLen ( uint32_t  InBufferLen)
pure virtual

Setter for InBufferLen.

Parameters
InBufferLenThe value to set for the InBufferLen parameter

◆ InBufferPtr() [1/2]

virtual guest_ptr< void > introvirt::windows::nt::NtTraceControl::InBufferPtr ( ) const
pure virtual

Getter for InBufferPtr.

Returns
The address pointed to by the the InBufferPtr parameter

◆ InBufferPtr() [2/2]

virtual void introvirt::windows::nt::NtTraceControl::InBufferPtr ( const guest_ptr< void > &  pInBuffer)
pure virtual

Setter for InBufferPtr.

Parameters
pInBufferThe address to set for the InBufferPtr parameter

◆ inject()

static NTSTATUS introvirt::windows::nt::NtTraceControl::inject ( uint32_t  FunctionCode,
const guest_ptr< void > &  pInBuffer,
uint32_t  InBufferLen,
const guest_ptr< void > &  pOutBuffer,
const guest_ptr< void > &  pOutBufferLen,
const uint32_t &  ReturnSize 
)
static

◆ OutBufferLenPtr() [1/2]

virtual guest_ptr< void > introvirt::windows::nt::NtTraceControl::OutBufferLenPtr ( ) const
pure virtual

Getter for OutBufferLenPtr.

Returns
The address pointed to by the the OutBufferLenPtr parameter

◆ OutBufferLenPtr() [2/2]

virtual void introvirt::windows::nt::NtTraceControl::OutBufferLenPtr ( const guest_ptr< void > &  pOutBufferLen)
pure virtual

Setter for OutBufferLenPtr.

Parameters
pOutBufferLenThe address to set for the OutBufferLenPtr parameter

◆ OutBufferPtr() [1/2]

virtual guest_ptr< void > introvirt::windows::nt::NtTraceControl::OutBufferPtr ( ) const
pure virtual

Getter for OutBufferPtr.

Returns
The address pointed to by the the OutBufferPtr parameter

◆ OutBufferPtr() [2/2]

virtual void introvirt::windows::nt::NtTraceControl::OutBufferPtr ( const guest_ptr< void > &  pOutBuffer)
pure virtual

Setter for OutBufferPtr.

Parameters
pOutBufferThe address to set for the OutBufferPtr parameter

◆ ReturnSize() [1/2]

virtual uint32_t introvirt::windows::nt::NtTraceControl::ReturnSize ( ) const
pure virtual

◆ ReturnSize() [2/2]

virtual void introvirt::windows::nt::NtTraceControl::ReturnSize ( uint32_t  ReturnSize)
pure virtual

◆ ReturnSizePtr() [1/2]

virtual guest_ptr< void > introvirt::windows::nt::NtTraceControl::ReturnSizePtr ( ) const
pure virtual

Getter for ReturnSizePtr.

Returns
The address pointed to by the the ReturnSizePtr parameter

◆ ReturnSizePtr() [2/2]

virtual void introvirt::windows::nt::NtTraceControl::ReturnSizePtr ( const guest_ptr< void > &  pReturnSize)
pure virtual

Setter for ReturnSizePtr.

Parameters
pReturnSizeThe address to set for the ReturnSizePtr parameter

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