dup3 on score
duplicate a file descriptor
sys_dup3(unsigned int oldfd, unsigned int newfd, int flags)
| number | 24 (0x18) |
|---|---|
| abi | common |
| entry point | sys_dup3 |
| since | Linux 3.7 or earlier (3.7 is the first release scanned for score) |
| man page | dup3(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
r27 | 24, the syscall number |
r4 | unsigned int oldfd |
r5 | unsigned int newfd |
r6 | int flags |
r4 | the return value |
Then run syscall to enter the kernel.
r7 is the error flag and r4 then holds the positive error number.
This architecture was removed from the Linux kernel in Linux 4.17. The newest release with a syscall table here is Linux 4.16. The other removed architectures live on the historical architectures page.
Same syscall on other architectures
- x64 292
- x86 330
- arm64 24
- arm 358
- riscv64 24
- ia32 330
- x32 1073742116
- loongarch64 24
- ppc64 316
- ppc 316
- s390x 326
- mips64 5286
- mipsn32 6290
- mipso32 4327
- alpha 487
- arc 24
- blackfin 363, removed in 4.17
- cris 330, removed in 4.17
- csky 24
- frv 330, removed in 4.17
- hexagon 24
- ia64 1316, removed in 6.7
- m68k 326
- metag 24, removed in 4.17
- microblaze 342
- mn10300 331, removed in 4.17
- nds32 24, removed in 5.18
- nios2 24
- openrisc 24
- parisc 312
- sh 330
- sparc 320
- sparc64 320
- tilegx 24, removed in 4.17
- tilepro 24, removed in 4.17
- xtensa 310
Get this as JSON: https://api.syscall.sh/v2/syscalls/score/dup3?kernel=all