|
libintrovirt v0.57.4
IntroVirt introspection library
|
Handler class for the NtCreateProcess system call. More...
#include <NtCreateProcess.hh>


Public Member Functions | |
| virtual bool | InheritObjectTable () const =0 |
| Getter for InheritObjectTable. | |
| virtual void | InheritObjectTable (bool InheritObjectTable)=0 |
| Setter for InheritObjectTable. | |
Public Member Functions inherited from introvirt::windows::nt::NtCreateProcessBase | |
| virtual guest_ptr< void > | ProcessHandlePtr () const =0 |
| Getter for ProcessHandlePtr. | |
| virtual PROCESS_ACCESS_MASK | DesiredAccess () const =0 |
| Getter for DesiredAccess. | |
| virtual guest_ptr< void > | ObjectAttributesPtr () const =0 |
| Getter for ObjectAttributesPtr. | |
| virtual uint64_t | ParentProcess () const =0 |
| Getter for ParentProcess. | |
| virtual uint64_t | SectionHandle () const =0 |
| Getter for SectionHandle. | |
| virtual uint64_t | DebugPort () const =0 |
| Getter for DebugPort. | |
| virtual uint64_t | ExceptionPort () const =0 |
| Getter for ExceptionPort. | |
| virtual void | ProcessHandlePtr (const guest_ptr< void > &pProcessHandle)=0 |
| Setter for ProcessHandlePtr. | |
| virtual void | DesiredAccess (PROCESS_ACCESS_MASK DesiredAccess)=0 |
| Setter for DesiredAccess. | |
| virtual void | ObjectAttributesPtr (const guest_ptr< void > &pObjectAttributes)=0 |
| Setter for ObjectAttributesPtr. | |
| virtual void | ParentProcess (uint64_t ParentProcess)=0 |
| Setter for ParentProcess. | |
| virtual void | SectionHandle (uint64_t SectionHandle)=0 |
| Setter for SectionHandle. | |
| virtual void | DebugPort (uint64_t DebugPort)=0 |
| Setter for DebugPort. | |
| virtual void | ExceptionPort (uint64_t ExceptionPort)=0 |
| Setter for ExceptionPort. | |
| virtual uint64_t | ProcessHandle () const =0 |
| virtual void | ProcessHandle (uint64_t ProcessHandle)=0 |
| virtual const OBJECT_ATTRIBUTES * | ObjectAttributes () const =0 |
| virtual OBJECT_ATTRIBUTES * | ObjectAttributes ()=0 |
| virtual std::shared_ptr< PROCESS > | get_new_process ()=0 |
| Get the newly created PROCESS object. | |
| virtual const std::shared_ptr< PROCESS > | get_new_process () const =0 |
| Get the newly created PROCESS object. | |
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 (uint64_t &ProcessHandle, PROCESS_ACCESS_MASK DesiredAccess, const guest_ptr< void > &pObjectAttributes, uint64_t ParentProcess, bool InheritObjectTable, uint64_t SectionHandle, uint64_t DebugPort, uint64_t ExceptionPort) |
Handler class for the NtCreateProcess system call.
|
pure virtual |
Getter for InheritObjectTable.
|
pure virtual |
Setter for InheritObjectTable.
| InheritObjectTable | The value to set for the InheritObjectTable parameter |
|
static |