syscall.sh / x32 / execveat
execveat
execute program relative to a directory file descriptor
compat_sys_execveat(int dfd, const char *filename, const char *const *argv, const char *const *envp, int flags)
| number | 1073742369 (0x40000221) |
|---|---|
| abi | x32 |
| entry point | compat_sys_execveat |
| since | Linux 3.19 |
| man page | execveat(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
rax | 1073742369, the syscall number |
rdi | int dfd |
rsi | const char *filename |
rdx | const char *const *argv |
r10 | const char *const *envp |
r8 | int flags |
rax | the return value |
Then run syscall to enter the kernel.
Same syscall on other architectures
- x64 322
- x86 358
- arm64 281
- arm 387
- riscv64 281
- loongarch64 281
- ppc64 362
- ppc 362
- s390x 354
- mips64 5316
- mipsn32 6320
- mipso32 4356
- alpha 513
- arc 281
- csky 281
- hexagon 281
- m68k 355
- microblaze 388
- nios2 281
- openrisc 281
- parisc 342
- sh 376
- sparc 350
- sparc64 350
- xtensa 341
Get this as JSON: https://api.syscall.sh/v2/syscalls/x32/execveat