Crate linux_syscalls

Crate linux_syscalls 

Source
Available on (Linux or Android) and (x86-64 and little-endian and 64-bit, or AArch64 and 64-bit, or ARM and 32-bit, or x86 and little-endian and 32-bit), or Linux and (x86-64 and little-endian and 32-bit, or RISC-V RV64 and little-endian and 64-bit, or RISC-V RV32 and little-endian and 32-bit, or MIPS and 32-bit, or MIPS-64 and 64-bit, or s390x and big-endian and 64-bit, or LoongArch LA64 and little-endian and 64-bit, or PowerPC and big-endian and 32-bit, or PowerPC-64 and 64-bit) only.

Modules§

env
A collection of environment informations useful to detect features used in syscalls.

Macros§

kversionNon-bare
A macro to create/query kernel version.
raw_syscall
Make a syscall and returns a usize
syscall
Make a syscall and returns a Result<usize, Errno>

Structs§

Errno
Error number representation.

Enums§

Sysno
List of system call numbers.

Functions§

initNon-bare
Initialize the environment for the library. It’s recommended to call it before anything else in the main function.
init_from_argsbare
Initialize library from arguments count and arguments list (int argc, char **argv). It’s recommended to call it before anything else in the main function.
init_from_auxvbare
Initialize library from auxv pointer. It’s recommended to call it before anything else in the main function.
init_from_environbare
Initialize library from the environment list pointer (char **envp). It’s recommended to call it before anything else in the main function.
raw_syscall0
Make a raw system call with 0 arguments.
raw_syscall0_readonly
Make a raw system call with 0 arguments. Like the non _readonly version but you declare that syscall does not mutate any memory.
raw_syscall1
Make a raw system call with 1 argument.
raw_syscall2
Make a raw system call with 2 arguments.
raw_syscall3
Make a raw system call with 3 arguments.
raw_syscall4
Make a raw system call with 4 arguments.
raw_syscall5
Make a raw system call with 5 arguments.
raw_syscall6
Make a raw system call with 6 arguments.
raw_syscall1_readonly
Make a raw system call with 1 argument. Like the non _readonly version but you declare that syscall does not mutate any memory.
raw_syscall2_readonly
Make a raw system call with 2 arguments. Like the non _readonly version but you declare that syscall does not mutate any memory.
raw_syscall3_readonly
Make a raw system call with 3 arguments. Like the non _readonly version but you declare that syscall does not mutate any memory.
raw_syscall4_readonly
Make a raw system call with 4 arguments. Like the non _readonly version but you declare that syscall does not mutate any memory.
raw_syscall5_readonly
Make a raw system call with 5 arguments. Like the non _readonly version but you declare that syscall does not mutate any memory.
raw_syscall6_readonly
Make a raw system call with 6 arguments. Like the non _readonly version but you declare that syscall does not mutate any memory.
syscall0
Make a raw system call with 0 arguments.
syscall0_readonly
Make a raw system call with 0 arguments. Like the non _readonly version but you declare that syscall does not mutate any memory.
syscall1
Make a raw system call with 1 argument.
syscall2
Make a raw system call with 2 arguments.
syscall3
Make a raw system call with 3 arguments.
syscall4
Make a raw system call with 4 arguments.
syscall5
Make a raw system call with 5 arguments.
syscall6
Make a raw system call with 6 arguments.
syscall1_noreturn
Make a raw system call with 7 arguments. It’s assured that it will not return.
syscall1_readonly
Make a raw system call with 1 argument. Like the non _readonly version but you declare that syscall does not mutate any memory.
syscall2_readonly
Make a raw system call with 2 arguments. Like the non _readonly version but you declare that syscall does not mutate any memory.
syscall3_readonly
Make a raw system call with 3 arguments. Like the non _readonly version but you declare that syscall does not mutate any memory.
syscall4_readonly
Make a raw system call with 4 arguments. Like the non _readonly version but you declare that syscall does not mutate any memory.
syscall5_readonly
Make a raw system call with 5 arguments. Like the non _readonly version but you declare that syscall does not mutate any memory.
syscall6_readonly
Make a raw system call with 6 arguments. Like the non _readonly version but you declare that syscall does not mutate any memory.