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


Public Member Functions | |
| virtual guest_ptr< void > | FileHandlePtr () const =0 |
| Getter for FileHandlePtr. | |
| virtual FILE_ACCESS_MASK | DesiredAccess () const =0 |
| Getter for DesiredAccess. | |
| virtual guest_ptr< void > | ObjectAttributesPtr () const =0 |
| Getter for ObjectAttributesPtr. | |
| virtual guest_ptr< void > | IoStatusBlockPtr () const =0 |
| Getter for IoStatusBlockPtr. | |
| virtual guest_ptr< void > | AllocationSizePtr () const =0 |
| Getter for AllocationSizePtr. | |
| virtual FILE_ATTRIBUTES | FileAttributes () const =0 |
| Getter for FileAttributes. | |
| virtual FILE_SHARE_ACCESS | ShareAccess () const =0 |
| Getter for ShareAccess. | |
| virtual CreateFileDisposition | CreateDisposition () const =0 |
| Getter for CreateDisposition. | |
| virtual FileCreateOptions | CreateOptions () const =0 |
| Getter for CreateOptions. | |
| virtual guest_ptr< void > | EaBufferPtr () const =0 |
| Getter for EaBufferPtr. | |
| virtual uint32_t | EaLength () const =0 |
| Getter for EaLength. | |
| virtual void | FileHandlePtr (const guest_ptr< void > &pFileHandle)=0 |
| Setter for FileHandlePtr. | |
| virtual void | DesiredAccess (FILE_ACCESS_MASK DesiredAccess)=0 |
| Setter for DesiredAccess. | |
| virtual void | ObjectAttributesPtr (const guest_ptr< void > &pObjectAttributes)=0 |
| Setter for ObjectAttributesPtr. | |
| virtual void | IoStatusBlockPtr (const guest_ptr< void > &pIoStatusBlock)=0 |
| Setter for IoStatusBlockPtr. | |
| virtual void | AllocationSizePtr (const guest_ptr< void > &pAllocationSize)=0 |
| Setter for AllocationSizePtr. | |
| virtual void | FileAttributes (FILE_ATTRIBUTES FileAttributes)=0 |
| Setter for FileAttributes. | |
| virtual void | ShareAccess (FILE_SHARE_ACCESS ShareAccess)=0 |
| Setter for ShareAccess. | |
| virtual void | CreateDisposition (CreateFileDisposition CreateDisposition)=0 |
| Setter for CreateDisposition. | |
| virtual void | CreateOptions (FileCreateOptions CreateOptions)=0 |
| Setter for CreateOptions. | |
| virtual void | EaBufferPtr (const guest_ptr< void > &pEaBuffer)=0 |
| Setter for EaBufferPtr. | |
| virtual void | EaLength (uint32_t EaLength)=0 |
| Setter for EaLength. | |
| virtual uint64_t | FileHandle () const =0 |
| virtual void | FileHandle (uint64_t FileHandle)=0 |
| virtual const OBJECT_ATTRIBUTES * | ObjectAttributes () const =0 |
| virtual OBJECT_ATTRIBUTES * | ObjectAttributes ()=0 |
| virtual const IO_STATUS_BLOCK * | IoStatusBlock () const =0 |
| virtual IO_STATUS_BLOCK * | IoStatusBlock ()=0 |
| virtual int64_t | AllocationSize () const =0 |
| virtual void | AllocationSize (int64_t AllocationSize)=0 |
| virtual IO_STATUS_RESULT | IoStatusResult () const =0 |
| virtual void | IoStatusResult (IO_STATUS_RESULT IoStatusResult)=0 |
| Sets the IoStatusResult field in the IoStatusBlock. | |
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 &FileHandle, FILE_ACCESS_MASK DesiredAccess, const guest_ptr< void > &pObjectAttributes, const guest_ptr< void > &pIoStatusBlock, const int64_t *AllocationSize, FILE_ATTRIBUTES FileAttributes, FILE_SHARE_ACCESS ShareAccess, CreateFileDisposition CreateDisposition, FileCreateOptions CreateOptions, const guest_ptr< void > &pEaBuffer, uint32_t EaLength) |
Handler class for the NtCreateFile system call.
|
pure virtual |
|
pure virtual |
|
pure virtual |
Getter for AllocationSizePtr.
|
pure virtual |
Setter for AllocationSizePtr.
| pAllocationSize | The address to set for the AllocationSizePtr parameter |
|
pure virtual |
Getter for CreateDisposition.
|
pure virtual |
Setter for CreateDisposition.
| CreateDisposition | The value to set for the CreateDisposition parameter |
|
pure virtual |
Getter for CreateOptions.
|
pure virtual |
Setter for CreateOptions.
| CreateOptions | The value to set for the CreateOptions parameter |
|
pure virtual |
Getter for DesiredAccess.
|
pure virtual |
Setter for DesiredAccess.
| DesiredAccess | The value to set for the DesiredAccess parameter |
|
pure virtual |
Getter for EaBufferPtr.
|
pure virtual |
Setter for EaBufferPtr.
| pEaBuffer | The address to set for the EaBufferPtr parameter |
|
pure virtual |
Getter for EaLength.
|
pure virtual |
Setter for EaLength.
| EaLength | The value to set for the EaLength parameter |
|
pure virtual |
Getter for FileAttributes.
|
pure virtual |
Setter for FileAttributes.
| FileAttributes | The value to set for the FileAttributes parameter |
|
pure virtual |
|
pure virtual |
|
pure virtual |
Getter for FileHandlePtr.
|
pure virtual |
Setter for FileHandlePtr.
| pFileHandle | The address to set for the FileHandlePtr parameter |
|
static |
|
pure virtual |
|
pure virtual |
|
pure virtual |
Getter for IoStatusBlockPtr.
|
pure virtual |
Setter for IoStatusBlockPtr.
| pIoStatusBlock | The address to set for the IoStatusBlockPtr parameter |
|
pure virtual |
|
pure virtual |
Sets the IoStatusResult field in the IoStatusBlock.
|
pure virtual |
|
pure virtual |
|
pure virtual |
Getter for ObjectAttributesPtr.
|
pure virtual |
Setter for ObjectAttributesPtr.
| pObjectAttributes | The address to set for the ObjectAttributesPtr parameter |
|
pure virtual |
Getter for ShareAccess.
|
pure virtual |
Setter for ShareAccess.
| ShareAccess | The value to set for the ShareAccess parameter |