syscall.sh / x32 / getsockopt
getsockopt
get and set options on sockets
x32 has 2 syscalls called getsockopt, each with its own number.
getsockopt #1073741879 (common ABI)
sys_getsockopt(int fd, int level, int optname, char *optval, int *optlen)
This syscall was removed in Linux 3.6.
| number | 1073741879 (0x40000037) |
|---|---|
| abi | common |
| entry point | sys_getsockopt |
| since | Linux 3.4 |
| removed in | Linux 3.6 |
| man page | getsockopt(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
rax | 1073741879, the syscall number |
rdi | int fd |
rsi | int level |
rdx | int optname |
r10 | char *optval |
r8 | int *optlen |
rax | the return value |
Then run syscall to enter the kernel.
getsockopt #1073742366 (x32 ABI)
sys_getsockopt(int fd, int level, int optname, char *optval, int *optlen)
| number | 1073742366 (0x4000021e) |
|---|---|
| abi | x32 |
| entry point | sys_getsockopt |
| since | Linux 3.6 |
| man page | getsockopt(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
rax | 1073742366, the syscall number |
rdi | int fd |
rsi | int level |
rdx | int optname |
r10 | char *optval |
r8 | int *optlen |
rax | the return value |
Then run syscall to enter the kernel.
Same syscall on other architectures
- x64 55
- x86 365
- arm64 209
- arm 295
- riscv64 209
- loongarch64 209
- ppc64 340
- ppc 340
- s390x 365
- mips64 5054
- mipsn32 6054
- mipso32 4173
- alpha 118
- arc 209
- csky 209
- hexagon 209
- m68k 362
- microblaze 358
- nios2 209
- openrisc 209
- parisc 182
- sh 354
- sparc 118
- sparc64 118
- xtensa 98
Get this as JSON: https://api.syscall.sh/v2/syscalls/x32/getsockopt