pub struct IndirectSyscall { /* private fields */ }Expand description
indirect syscall invoker
instead of using inline syscall instruction, jumps to the syscall instruction inside ntdll for cleaner call stack
Implementations§
Source§impl IndirectSyscall
impl IndirectSyscall
Sourcepub const unsafe fn new_unchecked(ssn: u16, syscall_addr: usize) -> Self
pub const unsafe fn new_unchecked(ssn: u16, syscall_addr: usize) -> Self
create from SSN and syscall instruction address
§Safety
caller must ensure syscall_addr points to a valid syscall instruction
Sourcepub fn new(ssn: u16, syscall_addr: usize) -> Result<Self>
pub fn new(ssn: u16, syscall_addr: usize) -> Result<Self>
create from SSN and syscall instruction address with validation
Sourcepub fn from_entry(entry: &SyscallEntry) -> Result<Self>
pub fn from_entry(entry: &SyscallEntry) -> Result<Self>
create from syscall entry
Sourcepub fn from_table(table: &SyscallTable, name: &str) -> Result<Self>
pub fn from_table(table: &SyscallTable, name: &str) -> Result<Self>
create from syscall table lookup
Sourcepub const fn syscall_address(&self) -> usize
pub const fn syscall_address(&self) -> usize
get syscall instruction address
Source§impl IndirectSyscall
impl IndirectSyscall
Sourcepub unsafe fn call0(&self) -> i32
pub unsafe fn call0(&self) -> i32
invoke indirect syscall with 0 arguments
§Safety
caller must ensure the syscall is appropriate to call with 0 args
Sourcepub unsafe fn call5(
&self,
arg1: usize,
arg2: usize,
arg3: usize,
arg4: usize,
arg5: usize,
) -> i32
pub unsafe fn call5( &self, arg1: usize, arg2: usize, arg3: usize, arg4: usize, arg5: usize, ) -> i32
Auto Trait Implementations§
impl Freeze for IndirectSyscall
impl RefUnwindSafe for IndirectSyscall
impl Send for IndirectSyscall
impl Sync for IndirectSyscall
impl Unpin for IndirectSyscall
impl UnwindSafe for IndirectSyscall
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more