OXIESEC PANEL
- Current Dir:
/
/
opt
/
golang
/
1.22.0
/
src
/
syscall
Server IP: 191.96.63.230
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
02/02/2024 06:09:55 PM
rwxr-xr-x
📄
asan.go
410 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
asan0.go
342 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm9_unix2_amd64.s
1.19 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_aix_ppc64.s
540 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_darwin_amd64.s
2.93 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_darwin_arm64.s
2.83 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_freebsd_arm.s
2.96 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_freebsd_arm64.s
2.79 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_freebsd_riscv64.s
2.76 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_linux_386.s
3.08 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_linux_amd64.s
1.33 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_linux_arm.s
1.77 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_linux_arm64.s
916 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_linux_loong64.s
947 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_linux_mips64x.s
985 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_linux_mipsx.s
1.75 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_linux_ppc64x.s
913 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_linux_riscv64.s
861 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_linux_s390x.s
2.15 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_netbsd_arm.s
2.85 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_netbsd_arm64.s
2.88 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_openbsd_386.s
1.04 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_openbsd_amd64.s
1.04 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_openbsd_arm.s
1.04 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_openbsd_arm64.s
1.04 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_openbsd_mips64.s
2.85 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_openbsd_ppc64.s
1.04 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_openbsd_riscv64.s
1.04 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_plan9_386.s
3.14 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_plan9_amd64.s
3.36 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_plan9_arm.s
3.25 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_solaris_amd64.s
1.8 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_unix_386.s
2.74 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
asm_unix_amd64.s
2.15 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
bpf_bsd.go
4.03 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
const_plan9.go
1.36 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
creds_test.go
3.37 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
dir_plan9.go
5.62 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
dirent.go
3.09 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
dirent_test.go
3.43 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
dll_windows.go
7.63 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
endian_big.go
249 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
endian_little.go
309 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
env_unix.go
2.73 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
env_windows.go
1.96 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
errors_plan9.go
1.61 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
exec_aix_test.go
823 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
exec_bsd.go
7.95 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
exec_freebsd.go
8.43 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
exec_freebsd_test.go
2.41 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
exec_libc.go
8.17 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
exec_libc2.go
8.19 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
exec_linux.go
22.81 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
exec_linux_test.go
20.37 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
exec_pdeathsig_test.go
4.49 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
exec_plan9.go
13.25 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
exec_solaris_test.go
815 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
exec_unix.go
8.63 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
exec_unix_test.go
8.28 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
exec_windows.go
10.3 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
exec_windows_test.go
3.11 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
export_darwin_test.go
348 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
export_linux_test.go
296 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
export_rlimit_test.go
262 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
export_unix_test.go
391 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
export_wasip1_test.go
267 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
export_windows_test.go
500 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
flock_aix.go
564 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
flock_bsd.go
469 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
flock_linux.go
641 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
flock_linux_32bit.go
511 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
forkpipe.go
604 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
forkpipe2.go
2.6 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
fs_js.go
10.84 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
fs_wasip1.go
24.07 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
fs_wasip1_test.go
1.98 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
getdirentries_test.go
2.07 KB
02/02/2024 06:09:55 PM
rw-r--r--
📁
js
-
02/02/2024 06:09:55 PM
rwxr-xr-x
📄
lsf_linux.go
2.12 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
mkall.sh
14.62 KB
02/02/2024 06:09:55 PM
rwxr-xr-x
📄
mkasm.go
1.88 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
mkerrors.sh
10.71 KB
02/02/2024 06:09:55 PM
rwxr-xr-x
📄
mkpost.go
2.28 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
mksyscall.pl
10.19 KB
02/02/2024 06:09:55 PM
rwxr-xr-x
📄
mksyscall_libc.pl
8.02 KB
02/02/2024 06:09:55 PM
rwxr-xr-x
📄
mksyscall_windows.go
1.99 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
mksysctl_openbsd.pl
5.04 KB
02/02/2024 06:09:55 PM
rwxr-xr-x
📄
mksysnum_dragonfly.pl
866 bytes
02/02/2024 06:09:55 PM
rwxr-xr-x
📄
mksysnum_freebsd.pl
1.35 KB
02/02/2024 06:09:55 PM
rwxr-xr-x
📄
mksysnum_linux.pl
1.26 KB
02/02/2024 06:09:55 PM
rwxr-xr-x
📄
mksysnum_netbsd.pl
1.01 KB
02/02/2024 06:09:55 PM
rwxr-xr-x
📄
mksysnum_openbsd.pl
872 bytes
02/02/2024 06:09:55 PM
rwxr-xr-x
📄
mksysnum_plan9.sh
459 bytes
02/02/2024 06:09:55 PM
rwxr-xr-x
📄
mmap_unix_test.go
500 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
msan.go
410 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
msan0.go
342 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
net.go
1.19 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
net_fake.go
883 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
net_js.go
1.38 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
net_wasip1.go
1.82 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
netlink_linux.go
4.77 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
os_wasip1.go
252 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
pwd_plan9.go
2.27 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
rlimit.go
1.59 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
rlimit_darwin.go
593 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
rlimit_stub.go
338 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
rlimit_test.go
953 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
route_bsd.go
9.1 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
route_darwin.go
2.01 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
route_dragonfly.go
2.61 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
route_freebsd.go
2.67 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
route_freebsd_32bit.go
1.14 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
route_freebsd_64bit.go
762 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
route_netbsd.go
1.43 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
route_openbsd.go
1.46 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
security_windows.go
10.01 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
setuidgid_32_linux.go
435 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
setuidgid_linux.go
421 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
sockcmsg_dragonfly.go
547 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
sockcmsg_linux.go
1.12 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
sockcmsg_unix.go
2.51 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
sockcmsg_unix_other.go
1.08 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall.go
3.78 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_aix.go
17.9 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_aix_ppc64.go
405 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_bsd.go
13.63 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_bsd_test.go
1.17 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_darwin.go
10.74 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_darwin_amd64.go
1.91 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_darwin_arm64.go
1.82 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_dragonfly.go
8.55 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_dragonfly_amd64.go
1.12 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_freebsd.go
8.72 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_freebsd_386.go
1.17 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_freebsd_amd64.go
1.12 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_freebsd_arm.go
1.16 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_freebsd_arm64.go
1.12 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_freebsd_riscv64.go
1.12 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_freebsd_test.go
424 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_illumos.go
613 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_js.go
6.71 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_linux.go
35.62 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_linux_386.go
10.34 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_linux_accept.go
961 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_linux_accept4.go
592 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_linux_amd64.go
4.78 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_linux_arm.go
7.05 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_linux_arm64.go
6.21 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_linux_loong64.go
7.08 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_linux_mips64x.go
5.98 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_linux_mipsx.go
6.85 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_linux_ppc64x.go
4.63 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_linux_riscv64.go
5.75 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_linux_s390x.go
7.9 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_linux_test.go
21.1 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_netbsd.go
7.78 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_netbsd_386.go
716 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_netbsd_amd64.go
709 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_netbsd_arm.go
716 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_netbsd_arm64.go
709 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_openbsd.go
6.97 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_openbsd1.go
534 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_openbsd_386.go
715 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_openbsd_amd64.go
701 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_openbsd_arm.go
715 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_openbsd_arm64.go
906 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_openbsd_libc.go
3.28 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_openbsd_mips64.go
970 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_openbsd_ppc64.go
906 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_openbsd_riscv64.go
906 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_plan9.go
9.37 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_plan9_test.go
1.15 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_ptrace_test.go
768 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_solaris.go
15.66 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_solaris_amd64.go
487 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_solarisonly.go
304 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_test.go
1.44 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_unix.go
12.11 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_unix_test.go
9.43 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_wasip1.go
9.37 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_windows.go
52.6 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
syscall_windows_test.go
5.73 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
tables_js.go
19.17 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
tables_wasip1.go
6.49 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
time_fake.go
677 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
time_nofake.go
351 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
timestruct.go
954 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
types_aix.go
3.35 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
types_darwin.go
5.03 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
types_dragonfly.go
5.05 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
types_freebsd.go
6.72 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
types_illumos_amd64.go
379 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
types_linux.go
10.9 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
types_netbsd.go
4.77 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
types_openbsd.go
5.04 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
types_solaris.go
4.88 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
types_windows.go
27.75 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
types_windows_386.go
477 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
types_windows_amd64.go
477 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
types_windows_arm.go
477 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
types_windows_arm64.go
477 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
wtf8_windows.go
2.67 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
wtf8_windows_test.go
4.31 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_aix_ppc64.go
47.16 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_darwin_amd64.go
55.28 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_darwin_arm64.go
55.79 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_dragonfly_amd64.go
59.62 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_freebsd_386.go
67.35 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_freebsd_amd64.go
67.4 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_freebsd_arm.go
67.34 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_freebsd_arm64.go
67.41 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_freebsd_riscv64.go
67.41 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_linux_386.go
57.36 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_linux_amd64.go
57.39 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_linux_arm.go
57.88 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_linux_arm64.go
68.57 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_linux_loong64.go
82.47 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_linux_mips.go
69.18 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_linux_mips64.go
68.5 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_linux_mips64le.go
68.5 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_linux_mipsle.go
69.18 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_linux_ppc64.go
70.89 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_linux_ppc64le.go
71.84 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_linux_riscv64.go
70.8 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_linux_s390x.go
73.28 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_netbsd_386.go
67.48 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_netbsd_amd64.go
67.07 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_netbsd_arm.go
66.49 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_netbsd_arm64.go
67.07 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_openbsd_386.go
62.52 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_openbsd_amd64.go
62.48 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_openbsd_arm.go
62.47 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_openbsd_arm64.go
66.36 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_openbsd_mips64.go
66.66 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_openbsd_ppc64.go
67.14 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_openbsd_riscv64.go
67.1 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_solaris_amd64.go
50.72 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zerrors_windows.go
9.97 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_aix_ppc64.go
41.4 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_darwin_amd64.go
51.72 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_darwin_amd64.s
8.7 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_darwin_arm64.go
51.67 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_darwin_arm64.s
8.67 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_dragonfly_amd64.go
31.67 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_freebsd_386.go
31.21 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_freebsd_amd64.go
31.07 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_freebsd_arm.go
31.23 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_freebsd_arm64.go
31.07 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_freebsd_riscv64.go
31.07 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_linux_386.go
34.68 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_linux_amd64.go
39.5 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_linux_arm.go
38.92 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_linux_arm64.go
37.81 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_linux_loong64.go
37.08 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_linux_mips.go
40.34 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_linux_mips64.go
40.34 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_linux_mips64le.go
40.35 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_linux_mipsle.go
40.34 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_linux_ppc64.go
40.98 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_linux_ppc64le.go
40.99 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_linux_riscv64.go
37.84 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_linux_s390x.go
35.3 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_netbsd_386.go
30.11 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_netbsd_amd64.go
29.97 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_netbsd_arm.go
30.12 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_netbsd_arm64.go
29.97 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_openbsd_386.go
48.07 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_openbsd_386.s
8.09 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_openbsd_amd64.go
47.92 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_openbsd_amd64.s
8.09 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_openbsd_arm.go
48.09 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_openbsd_arm.s
8.09 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_openbsd_arm64.go
47.92 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_openbsd_arm64.s
8.09 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_openbsd_mips64.go
30.05 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_openbsd_ppc64.go
47.92 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_openbsd_ppc64.s
8.78 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_openbsd_riscv64.go
47.93 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_openbsd_riscv64.s
8.09 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_plan9_386.go
6.17 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_plan9_amd64.go
6.18 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_plan9_arm.go
6.17 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_solaris_amd64.go
37.56 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsyscall_windows.go
56.73 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysctl_openbsd.go
11.39 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_darwin_amd64.go
14.55 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_darwin_arm64.go
14.39 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_dragonfly_amd64.go
22.94 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_freebsd_386.go
25.46 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_freebsd_amd64.go
25.46 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_freebsd_arm.go
25.46 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_freebsd_arm64.go
35.79 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_freebsd_riscv64.go
35.79 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_linux_386.go
11.27 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_linux_amd64.go
10.11 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_linux_arm.go
11.55 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_linux_arm64.go
8.95 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_linux_loong64.go
10.28 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_linux_mips.go
12.1 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_linux_mips64.go
10.93 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_linux_mips64le.go
10.93 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_linux_mipsle.go
12.1 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_linux_ppc64.go
11.47 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_linux_ppc64le.go
11.49 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_linux_riscv64.go
8.88 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_linux_s390x.go
10.64 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_netbsd_386.go
25.69 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_netbsd_amd64.go
25.69 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_netbsd_arm.go
25.69 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_netbsd_arm64.go
25.69 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_openbsd_386.go
14.16 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_openbsd_amd64.go
14.16 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_openbsd_arm.go
14.46 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_openbsd_arm64.go
14.72 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_openbsd_mips64.go
14.93 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_openbsd_ppc64.go
15.83 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_openbsd_riscv64.go
15.67 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_plan9.go
1.03 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
zsysnum_solaris_amd64.go
293 bytes
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_aix_ppc64.go
4.17 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_darwin_amd64.go
6.95 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_darwin_arm64.go
6.95 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_dragonfly_amd64.go
6.7 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_freebsd_386.go
8 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_freebsd_amd64.go
8.03 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_freebsd_arm.go
8.03 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_freebsd_arm64.go
8.03 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_freebsd_riscv64.go
8.03 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_linux_386.go
11.58 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_linux_amd64.go
11.95 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_linux_arm.go
11.47 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_linux_arm64.go
10.16 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_linux_loong64.go
10.77 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_linux_mips.go
9.96 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_linux_mips64.go
10.08 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_linux_mips64le.go
10.08 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_linux_mipsle.go
9.96 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_linux_ppc64.go
10.25 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_linux_ppc64le.go
10.38 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_linux_riscv64.go
10.23 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_linux_s390x.go
10.44 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_netbsd_386.go
5.99 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_netbsd_amd64.go
6.17 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_netbsd_arm.go
6.13 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_netbsd_arm64.go
6.17 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_openbsd_386.go
6.73 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_openbsd_amd64.go
6.89 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_openbsd_arm.go
6.84 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_openbsd_arm64.go
6.66 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_openbsd_mips64.go
6.66 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_openbsd_ppc64.go
6.69 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_openbsd_riscv64.go
6.69 KB
02/02/2024 06:09:55 PM
rw-r--r--
📄
ztypes_solaris_amd64.go
5.57 KB
02/02/2024 06:09:55 PM
rw-r--r--
Editing: syscall_unix.go
Close
// Copyright 2009 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build unix package syscall import ( errorspkg "errors" "internal/bytealg" "internal/itoa" "internal/oserror" "internal/race" "runtime" "sync" "unsafe" ) var ( Stdin = 0 Stdout = 1 Stderr = 2 ) const ( darwin64Bit = (runtime.GOOS == "darwin" || runtime.GOOS == "ios") && sizeofPtr == 8 netbsd32Bit = runtime.GOOS == "netbsd" && sizeofPtr == 4 ) // clen returns the index of the first NULL byte in n or len(n) if n contains no NULL byte. func clen(n []byte) int { if i := bytealg.IndexByte(n, 0); i != -1 { return i } return len(n) } // Mmap manager, for use by operating system-specific implementations. type mmapper struct { sync.Mutex active map[*byte][]byte // active mappings; key is last byte in mapping mmap func(addr, length uintptr, prot, flags, fd int, offset int64) (uintptr, error) munmap func(addr uintptr, length uintptr) error } func (m *mmapper) Mmap(fd int, offset int64, length int, prot int, flags int) (data []byte, err error) { if length <= 0 { return nil, EINVAL } // Map the requested memory. addr, errno := m.mmap(0, uintptr(length), prot, flags, fd, offset) if errno != nil { return nil, errno } // Use unsafe to turn addr into a []byte. b := unsafe.Slice((*byte)(unsafe.Pointer(addr)), length) // Register mapping in m and return it. p := &b[cap(b)-1] m.Lock() defer m.Unlock() m.active[p] = b return b, nil } func (m *mmapper) Munmap(data []byte) (err error) { if len(data) == 0 || len(data) != cap(data) { return EINVAL } // Find the base of the mapping. p := &data[cap(data)-1] m.Lock() defer m.Unlock() b := m.active[p] if b == nil || &b[0] != &data[0] { return EINVAL } // Unmap the memory and update m. if errno := m.munmap(uintptr(unsafe.Pointer(&b[0])), uintptr(len(b))); errno != nil { return errno } delete(m.active, p) return nil } // An Errno is an unsigned number describing an error condition. // It implements the error interface. The zero Errno is by convention // a non-error, so code to convert from Errno to error should use: // // err = nil // if errno != 0 { // err = errno // } // // Errno values can be tested against error values using errors.Is. // For example: // // _, _, err := syscall.Syscall(...) // if errors.Is(err, fs.ErrNotExist) ... type Errno uintptr func (e Errno) Error() string { if 0 <= int(e) && int(e) < len(errors) { s := errors[e] if s != "" { return s } } return "errno " + itoa.Itoa(int(e)) } func (e Errno) Is(target error) bool { switch target { case oserror.ErrPermission: return e == EACCES || e == EPERM case oserror.ErrExist: return e == EEXIST || e == ENOTEMPTY case oserror.ErrNotExist: return e == ENOENT case errorspkg.ErrUnsupported: return e == ENOSYS || e == ENOTSUP || e == EOPNOTSUPP } return false } func (e Errno) Temporary() bool { return e == EINTR || e == EMFILE || e == ENFILE || e.Timeout() } func (e Errno) Timeout() bool { return e == EAGAIN || e == EWOULDBLOCK || e == ETIMEDOUT } // Do the interface allocations only once for common // Errno values. var ( errEAGAIN error = EAGAIN errEINVAL error = EINVAL errENOENT error = ENOENT ) // errnoErr returns common boxed Errno values, to prevent // allocations at runtime. func errnoErr(e Errno) error { switch e { case 0: return nil case EAGAIN: return errEAGAIN case EINVAL: return errEINVAL case ENOENT: return errENOENT } return e } // A Signal is a number describing a process signal. // It implements the os.Signal interface. type Signal int func (s Signal) Signal() {} func (s Signal) String() string { if 0 <= s && int(s) < len(signals) { str := signals[s] if str != "" { return str } } return "signal " + itoa.Itoa(int(s)) } func Read(fd int, p []byte) (n int, err error) { n, err = read(fd, p) if race.Enabled { if n > 0 { race.WriteRange(unsafe.Pointer(&p[0]), n) } if err == nil { race.Acquire(unsafe.Pointer(&ioSync)) } } if msanenabled && n > 0 { msanWrite(unsafe.Pointer(&p[0]), n) } if asanenabled && n > 0 { asanWrite(unsafe.Pointer(&p[0]), n) } return } func Write(fd int, p []byte) (n int, err error) { if race.Enabled { race.ReleaseMerge(unsafe.Pointer(&ioSync)) } if faketime && (fd == 1 || fd == 2) { n = faketimeWrite(fd, p) if n < 0 { n, err = 0, errnoErr(Errno(-n)) } } else { n, err = write(fd, p) } if race.Enabled && n > 0 { race.ReadRange(unsafe.Pointer(&p[0]), n) } if msanenabled && n > 0 { msanRead(unsafe.Pointer(&p[0]), n) } if asanenabled && n > 0 { asanRead(unsafe.Pointer(&p[0]), n) } return } func Pread(fd int, p []byte, offset int64) (n int, err error) { n, err = pread(fd, p, offset) if race.Enabled { if n > 0 { race.WriteRange(unsafe.Pointer(&p[0]), n) } if err == nil { race.Acquire(unsafe.Pointer(&ioSync)) } } if msanenabled && n > 0 { msanWrite(unsafe.Pointer(&p[0]), n) } if asanenabled && n > 0 { asanWrite(unsafe.Pointer(&p[0]), n) } return } func Pwrite(fd int, p []byte, offset int64) (n int, err error) { if race.Enabled { race.ReleaseMerge(unsafe.Pointer(&ioSync)) } n, err = pwrite(fd, p, offset) if race.Enabled && n > 0 { race.ReadRange(unsafe.Pointer(&p[0]), n) } if msanenabled && n > 0 { msanRead(unsafe.Pointer(&p[0]), n) } if asanenabled && n > 0 { asanRead(unsafe.Pointer(&p[0]), n) } return } // For testing: clients can set this flag to force // creation of IPv6 sockets to return EAFNOSUPPORT. var SocketDisableIPv6 bool type Sockaddr interface { sockaddr() (ptr unsafe.Pointer, len _Socklen, err error) // lowercase; only we can define Sockaddrs } type SockaddrInet4 struct { Port int Addr [4]byte raw RawSockaddrInet4 } type SockaddrInet6 struct { Port int ZoneId uint32 Addr [16]byte raw RawSockaddrInet6 } type SockaddrUnix struct { Name string raw RawSockaddrUnix } func Bind(fd int, sa Sockaddr) (err error) { ptr, n, err := sa.sockaddr() if err != nil { return err } return bind(fd, ptr, n) } func Connect(fd int, sa Sockaddr) (err error) { ptr, n, err := sa.sockaddr() if err != nil { return err } return connect(fd, ptr, n) } func Getpeername(fd int) (sa Sockaddr, err error) { var rsa RawSockaddrAny var len _Socklen = SizeofSockaddrAny if err = getpeername(fd, &rsa, &len); err != nil { return } return anyToSockaddr(&rsa) } func GetsockoptInt(fd, level, opt int) (value int, err error) { var n int32 vallen := _Socklen(4) err = getsockopt(fd, level, opt, unsafe.Pointer(&n), &vallen) return int(n), err } func Recvfrom(fd int, p []byte, flags int) (n int, from Sockaddr, err error) { var rsa RawSockaddrAny var len _Socklen = SizeofSockaddrAny if n, err = recvfrom(fd, p, flags, &rsa, &len); err != nil { return } if rsa.Addr.Family != AF_UNSPEC { from, err = anyToSockaddr(&rsa) } return } func recvfromInet4(fd int, p []byte, flags int, from *SockaddrInet4) (n int, err error) { var rsa RawSockaddrAny var socklen _Socklen = SizeofSockaddrAny if n, err = recvfrom(fd, p, flags, &rsa, &socklen); err != nil { return } pp := (*RawSockaddrInet4)(unsafe.Pointer(&rsa)) port := (*[2]byte)(unsafe.Pointer(&pp.Port)) from.Port = int(port[0])<<8 + int(port[1]) from.Addr = pp.Addr return } func recvfromInet6(fd int, p []byte, flags int, from *SockaddrInet6) (n int, err error) { var rsa RawSockaddrAny var socklen _Socklen = SizeofSockaddrAny if n, err = recvfrom(fd, p, flags, &rsa, &socklen); err != nil { return } pp := (*RawSockaddrInet6)(unsafe.Pointer(&rsa)) port := (*[2]byte)(unsafe.Pointer(&pp.Port)) from.Port = int(port[0])<<8 + int(port[1]) from.ZoneId = pp.Scope_id from.Addr = pp.Addr return } func recvmsgInet4(fd int, p, oob []byte, flags int, from *SockaddrInet4) (n, oobn int, recvflags int, err error) { var rsa RawSockaddrAny n, oobn, recvflags, err = recvmsgRaw(fd, p, oob, flags, &rsa) if err != nil { return } pp := (*RawSockaddrInet4)(unsafe.Pointer(&rsa)) port := (*[2]byte)(unsafe.Pointer(&pp.Port)) from.Port = int(port[0])<<8 + int(port[1]) from.Addr = pp.Addr return } func recvmsgInet6(fd int, p, oob []byte, flags int, from *SockaddrInet6) (n, oobn int, recvflags int, err error) { var rsa RawSockaddrAny n, oobn, recvflags, err = recvmsgRaw(fd, p, oob, flags, &rsa) if err != nil { return } pp := (*RawSockaddrInet6)(unsafe.Pointer(&rsa)) port := (*[2]byte)(unsafe.Pointer(&pp.Port)) from.Port = int(port[0])<<8 + int(port[1]) from.ZoneId = pp.Scope_id from.Addr = pp.Addr return } func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from Sockaddr, err error) { var rsa RawSockaddrAny n, oobn, recvflags, err = recvmsgRaw(fd, p, oob, flags, &rsa) // source address is only specified if the socket is unconnected if rsa.Addr.Family != AF_UNSPEC { from, err = anyToSockaddr(&rsa) } return } func Sendmsg(fd int, p, oob []byte, to Sockaddr, flags int) (err error) { _, err = SendmsgN(fd, p, oob, to, flags) return } func SendmsgN(fd int, p, oob []byte, to Sockaddr, flags int) (n int, err error) { var ptr unsafe.Pointer var salen _Socklen if to != nil { ptr, salen, err = to.sockaddr() if err != nil { return 0, err } } return sendmsgN(fd, p, oob, ptr, salen, flags) } func sendmsgNInet4(fd int, p, oob []byte, to *SockaddrInet4, flags int) (n int, err error) { ptr, salen, err := to.sockaddr() if err != nil { return 0, err } return sendmsgN(fd, p, oob, ptr, salen, flags) } func sendmsgNInet6(fd int, p, oob []byte, to *SockaddrInet6, flags int) (n int, err error) { ptr, salen, err := to.sockaddr() if err != nil { return 0, err } return sendmsgN(fd, p, oob, ptr, salen, flags) } func sendtoInet4(fd int, p []byte, flags int, to *SockaddrInet4) (err error) { ptr, n, err := to.sockaddr() if err != nil { return err } return sendto(fd, p, flags, ptr, n) } func sendtoInet6(fd int, p []byte, flags int, to *SockaddrInet6) (err error) { ptr, n, err := to.sockaddr() if err != nil { return err } return sendto(fd, p, flags, ptr, n) } func Sendto(fd int, p []byte, flags int, to Sockaddr) (err error) { var ( ptr unsafe.Pointer salen _Socklen ) if to != nil { ptr, salen, err = to.sockaddr() if err != nil { return err } } return sendto(fd, p, flags, ptr, salen) } func SetsockoptByte(fd, level, opt int, value byte) (err error) { return setsockopt(fd, level, opt, unsafe.Pointer(&value), 1) } func SetsockoptInt(fd, level, opt int, value int) (err error) { var n = int32(value) return setsockopt(fd, level, opt, unsafe.Pointer(&n), 4) } func SetsockoptInet4Addr(fd, level, opt int, value [4]byte) (err error) { return setsockopt(fd, level, opt, unsafe.Pointer(&value[0]), 4) } func SetsockoptIPMreq(fd, level, opt int, mreq *IPMreq) (err error) { return setsockopt(fd, level, opt, unsafe.Pointer(mreq), SizeofIPMreq) } func SetsockoptIPv6Mreq(fd, level, opt int, mreq *IPv6Mreq) (err error) { return setsockopt(fd, level, opt, unsafe.Pointer(mreq), SizeofIPv6Mreq) } func SetsockoptICMPv6Filter(fd, level, opt int, filter *ICMPv6Filter) error { return setsockopt(fd, level, opt, unsafe.Pointer(filter), SizeofICMPv6Filter) } func SetsockoptLinger(fd, level, opt int, l *Linger) (err error) { return setsockopt(fd, level, opt, unsafe.Pointer(l), SizeofLinger) } func SetsockoptString(fd, level, opt int, s string) (err error) { var p unsafe.Pointer if len(s) > 0 { p = unsafe.Pointer(&[]byte(s)[0]) } return setsockopt(fd, level, opt, p, uintptr(len(s))) } func SetsockoptTimeval(fd, level, opt int, tv *Timeval) (err error) { return setsockopt(fd, level, opt, unsafe.Pointer(tv), unsafe.Sizeof(*tv)) } func Socket(domain, typ, proto int) (fd int, err error) { if domain == AF_INET6 && SocketDisableIPv6 { return -1, EAFNOSUPPORT } fd, err = socket(domain, typ, proto) return } func Socketpair(domain, typ, proto int) (fd [2]int, err error) { var fdx [2]int32 err = socketpair(domain, typ, proto, &fdx) if err == nil { fd[0] = int(fdx[0]) fd[1] = int(fdx[1]) } return } func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) { if race.Enabled { race.ReleaseMerge(unsafe.Pointer(&ioSync)) } return sendfile(outfd, infd, offset, count) } var ioSync int64