syscall.sh / x86 / dup
dup
duplicate a file descriptor
sys_dup(unsigned int fildes)
| number | 41 (0x29) |
|---|---|
| abi | i386 |
| entry point | sys_dup |
| since | Linux 3.3 |
| man page | dup(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
eax | 41, the syscall number |
ebx | unsigned int fildes |
eax | the return value |
Then run int 0x80 to enter the kernel.
Same syscall on other architectures
- x64 32
- arm64 23
- arm 41
- riscv64 23
- x32 1073741856
- loongarch64 23
- ppc64 41
- ppc 41
- s390x 41
- mips64 5031
- mipsn32 6031
- mipso32 4041
- alpha 41
- arc 23
- csky 23
- hexagon 23
- m68k 41
- microblaze 41
- nios2 23
- openrisc 23
- parisc 41
- sh 41
- sparc 41
- sparc64 41
- xtensa 10
Get this as JSON: https://api.syscall.sh/v2/syscalls/x86/dup