From 7f98a79648a72a0c8793c67d84b48b578ee36e13 Mon Sep 17 00:00:00 2001 From: panchenbo Date: Fri, 22 Sep 2023 14:11:00 +0800 Subject: [PATCH] add support for loongarch64 and modify sw_64 patch --- 0003-etcd-3.4.14-sw.patch | 10044 ---------------- ...sw_64-support-not-upstream-new-files.patch | 16 + bbolt-1.3.7.tar.gz | Bin 0 -> 115011 bytes etcd.spec | 40 +- 4 files changed, 47 insertions(+), 10053 deletions(-) delete mode 100755 0003-etcd-3.4.14-sw.patch create mode 100644 1000-add-sw_64-support-not-upstream-new-files.patch create mode 100755 bbolt-1.3.7.tar.gz diff --git a/0003-etcd-3.4.14-sw.patch b/0003-etcd-3.4.14-sw.patch deleted file mode 100755 index 342a2be..0000000 --- a/0003-etcd-3.4.14-sw.patch +++ /dev/null @@ -1,10044 +0,0 @@ -diff -Naur etcd-3.4.14.org/vendor/go.etcd.io/bbolt/bolt_sw64.go etcd-3.4.14.sw/vendor/go.etcd.io/bbolt/bolt_sw64.go ---- etcd-3.4.14.org/vendor/go.etcd.io/bbolt/bolt_sw64.go 1970-01-01 08:00:00.000000000 +0800 -+++ etcd-3.4.14.sw/vendor/go.etcd.io/bbolt/bolt_sw64.go 2022-09-16 15:23:18.290000000 +0800 -@@ -0,0 +1,12 @@ -+// +build sw64 -+ -+package bbolt -+ -+// maxMapSize represents the largest mmap size supported by Bolt. -+const maxMapSize = 0xFFFFFFFFFFFF // 256TB -+ -+// maxAllocSize is the size used when creating array pointers. -+const maxAllocSize = 0x7FFFFFFF -+ -+// Are unaligned load/stores broken on this arch? -+var brokenUnaligned = false -diff -Naur etcd-3.4.14.org/vendor/golang.org/x/sys/unix/asm_linux_sw64.s etcd-3.4.14.sw/vendor/golang.org/x/sys/unix/asm_linux_sw64.s ---- etcd-3.4.14.org/vendor/golang.org/x/sys/unix/asm_linux_sw64.s 1970-01-01 08:00:00.000000000 +0800 -+++ etcd-3.4.14.sw/vendor/golang.org/x/sys/unix/asm_linux_sw64.s 2022-09-15 16:58:46.940000000 +0800 -@@ -0,0 +1,57 @@ -+// Copyright 2015 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. -+ -+// +build linux -+// +build sw64 -+// +build !gccgo -+ -+#include "textflag.h" -+ -+// -+// System calls for sw64, Linux -+// -+// Just jump to package syscall's implementation for all these functions. -+// The runtime may know about them. -+ -+#define SYSCALL SYS_CALL_B $131 -+ -+TEXT ·Syscall(SB),NOSPLIT|NOFRAME,$0-56 -+ JMP syscall·Syscall(SB) -+ -+TEXT ·Syscall6(SB),NOSPLIT|NOFRAME,$0-80 -+ JMP syscall·Syscall6(SB) -+ -+TEXT ·SyscallNoError(SB),NOSPLIT,$0-48 -+ CALL runtime·entersyscall(SB) -+ LDL R16, a1+8(FP) -+ LDL R17, a2+16(FP) -+ LDL R18, a3+24(FP) -+ LDI R19, ZERO -+ LDI R20, ZERO -+ LDI R21, ZERO -+ LDL R0, trap+0(FP) // syscall entry -+ SYSCALL -+ STL R0, r1+32(FP) -+ STL R20, r2+40(FP) -+ CALL runtime·exitsyscall(SB) -+ RET -+ -+TEXT ·RawSyscall(SB),NOSPLIT|NOFRAME,$0-56 -+ JMP syscall·RawSyscall(SB) -+ -+TEXT ·RawSyscall6(SB),NOSPLIT|NOFRAME,$0-80 -+ JMP syscall·RawSyscall6(SB) -+ -+TEXT ·RawSyscallNoError(SB),NOSPLIT|NOFRAME,$0-48 -+ LDL R16, a1+8(FP) -+ LDL R17, a2+16(FP) -+ LDL R18, a3+24(FP) -+ LDI R19, ZERO -+ LDI R20, ZERO -+ LDI R21, ZERO -+ LDL R0, trap+0(FP) // syscall entry -+ SYSCALL -+ STL R0, r1+32(FP) -+ STL R20, r2+40(FP) -+ RET -diff -Naur etcd-3.4.14.org/vendor/golang.org/x/sys/unix/endian_little.go etcd-3.4.14.sw/vendor/golang.org/x/sys/unix/endian_little.go ---- etcd-3.4.14.org/vendor/golang.org/x/sys/unix/endian_little.go 2022-09-15 16:45:54.860000000 +0800 -+++ etcd-3.4.14.sw/vendor/golang.org/x/sys/unix/endian_little.go 2022-09-16 15:18:17.330000000 +0800 -@@ -2,7 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - // --// +build 386 amd64 amd64p32 arm arm64 ppc64le mipsle mips64le riscv64 -+// +build 386 amd64 amd64p32 arm arm64 ppc64le mipsle mips64le riscv64 sw64 - - package unix - -diff -Naur etcd-3.4.14.org/vendor/golang.org/x/sys/unix/syscall_linux_sw64.go etcd-3.4.14.sw/vendor/golang.org/x/sys/unix/syscall_linux_sw64.go ---- etcd-3.4.14.org/vendor/golang.org/x/sys/unix/syscall_linux_sw64.go 1970-01-01 08:00:00.000000000 +0800 -+++ etcd-3.4.14.sw/vendor/golang.org/x/sys/unix/syscall_linux_sw64.go 2022-09-15 16:58:46.930000000 +0800 -@@ -0,0 +1,261 @@ -+// 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 linux && sw64 -+// +build linux,sw64 -+ -+package unix -+ -+//TODO: merge from ztypes and zerrors -+const ( -+ BPF_ANY = 0x0 -+ BPF_NOEXIST = 0x1 -+ BPF_EXIST = 0x2 -+ -+ BPF_F_NO_PREALLOC = 0x1 -+ BPF_F_NO_COMMON_LRU = 0x2 -+ BPF_F_NUMA_NODE = 0x4 -+ BPF_F_RDONLY = 0x8 -+ BPF_F_WRONLY = 0x10 -+ BPF_F_STACK_BUILD_ID = 0x20 -+ -+ BPF_F_RECOMPUTE_CSUM = 0x1 -+ BPF_F_INVALIDATE_HASH = 0x2 -+ BPF_F_HDR_FIELD_MASK = 0xf -+ BPF_F_PSEUDO_HDR = 0x10 -+ BPF_F_MARK_MANGLED_0 = 0x20 -+ BPF_F_MARK_ENFORCE = 0x40 -+ BPF_F_INGRESS = 0x1 -+ BPF_F_TUNINFO_IPV6 = 0x1 -+ BPF_F_SKIP_FIELD_MASK = 0xff -+ BPF_F_USER_STACK = 0x100 -+ BPF_F_FAST_STACK_CMP = 0x200 -+ BPF_F_REUSE_STACKID = 0x400 -+ BPF_F_USER_BUILD_ID = 0x800 -+ BPF_F_ZERO_CSUM_TX = 0x2 -+ BPF_F_DONT_FRAGMENT = 0x4 -+ BPF_F_SEQ_NUMBER = 0x8 -+ BPF_F_INDEX_MASK = 0xffffffff -+ BPF_F_CURRENT_CPU = 0xffffffff -+ BPF_F_CTXLEN_MASK = 0xfffff00000000 -+ -+ BPF_SOCK_OPS_RTO_CB_FLAG = 0x1 -+ BPF_SOCK_OPS_RETRANS_CB_FLAG = 0x2 -+ BPF_SOCK_OPS_STATE_CB_FLAG = 0x4 -+ -+ BPF_SOCK_OPS_ALL_CB_FLAGS = 0x7 -+ -+ TCP_BPF_IW = 0x3e9 -+ TCP_BPF_SNDCWND_CLAMP = 0x3ea -+ -+ BPF_DEVCG_ACC_MKNOD = 0x1 -+ BPF_DEVCG_ACC_READ = 0x2 -+ BPF_DEVCG_ACC_WRITE = 0x4 -+ BPF_DEVCG_DEV_BLOCK = 0x1 -+ BPF_DEVCG_DEV_CHAR = 0x2 -+) -+ -+//generate by ztypes -+//TODO:doesn't support for linux 4.19 kernel -+//just for compiler passed -+type EthtoolDrvinfo struct { -+ Cmd uint32 -+ Driver [32]byte -+ Version [32]byte -+ Fw_version [32]byte -+ Bus_info [32]byte -+ Erom_version [32]byte -+ Reserved2 [12]byte -+ N_priv_flags uint32 -+ N_stats uint32 -+ Testinfo_len uint32 -+ Eedump_len uint32 -+ Regdump_len uint32 -+} -+ -+const SizeofOpenHow = 0x18 -+ -+const ETHTOOL_GDRVINFO = 0x3 -+ -+const ( -+ //generate by handle in zerrors_linux_sw64.go -+ //_snyh_TODO: this should be generate by improving build script -+ TIOCGWINSZ = 0x40087468 -+ AF_XDP = 0x2c //TODO:may create problem -+ CAN_J1939 = 0x7 //TODO: may create problem -+) -+ -+const ( -+ //ALL OF THIS constants are WORKAROUND, and should be removing -+ SYS_UMOUNT2 = SYS_UMOUNT -+ SYS_NEWFSTATAT = SYS_FSTATAT64 -+) -+ -+//sysnb getxpid() (pid int, ppid int) -+// TODO(snyh): correct handle Getppid and Getpid -+// currently manually remove the implements of Getpid and Getppid -+// in zsyscall_linux_sw64.go -+func Getpid() (pid int) { pid, _ = getxpid(); return } -+func Getppid() (ppid int) { _, ppid = getxpid(); return } -+ -+// TODO(snyh): correct handle Utime -+func Utime(path string, buf *Utimbuf) error { -+ tv := [2]Timeval{ -+ {Sec: buf.Actime}, -+ {Sec: buf.Modtime}, -+ } -+ return utimes(path, &tv) -+} -+ -+//sys Fstat64(fd int, st *Stat_t) (err error) -+//sys Lstat64(path string, st *Stat_t) (err error) -+//sys Stat64(path string, st *Stat_t) (err error) -+func Fstat(fd int, st *Stat_t) (err error) { return Fstat64(fd, st) } -+func Lstat(path string, st *Stat_t) (err error) { return Lstat64(path, st) } -+func Stat(path string, st *Stat_t) (err error) { return Stat64(path, st) } -+ -+//sys getxuid() (uid int, euid int) -+func Getuid() (uid int) { uid, _ = getxuid(); return } -+func Geteuid() (euid int) { _, euid = getxuid(); return } -+ -+//sys getxgid() (gid int, egid int) -+func Getgid() (gid int) { gid, _ = getxgid(); return } -+func Getegid() (egid int) { _, egid = getxgid(); return } -+ -+//sys Statfs(path string, buf *Statfs_t) (err error) -+//sys Fstatfs(fd int, buf *Statfs_t) (err error) -+//sys dup2(oldfd int, newfd int) (err error) -+//sys Fchown(fd int, uid int, gid int) (err error) -+//sys Ftruncate(fd int, length int64) (err error) -+//sysnb Getrlimit(resource int, rlim *Rlimit) (err error) -+//sys Lchown(path string, uid int, gid int) (err error) -+//sys Listen(s int, n int) (err error) -+//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 -+//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 -+//sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK -+//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) -+//sys setfsgid(gid int) (prev int, err error) -+//sys setfsuid(uid int) (prev int, err error) -+//sysnb Setregid(rgid int, egid int) (err error) -+//sysnb Setresgid(rgid int, egid int, sgid int) (err error) -+//sysnb Setresuid(ruid int, euid int, suid int) (err error) -+//sysnb Setrlimit(resource int, rlim *Rlimit) (err error) -+//sysnb Setreuid(ruid int, euid int) (err error) -+//sys Shutdown(fd int, how int) (err error) -+//sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) -+ -+//sys SyncFileRange(fd int, off int64, n int64, flags int) (err error) -+//sys Truncate(path string, length int64) (err error) -+//sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) -+//sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) -+//sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) -+//sys connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) -+//sysnb getgroups(n int, list *_Gid_t) (nn int, err error) -+//sysnb setgroups(n int, list *_Gid_t) (err error) -+//sys getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) -+//sys setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) -+//sysnb socket(domain int, typ int, proto int) (fd int, err error) -+//sysnb socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) -+//sysnb getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) -+//sysnb getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) -+//sys recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) -+//sys sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) -+//sys recvmsg(s int, msg *Msghdr, flags int) (n int, err error) -+//sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error) -+//sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) -+ -+//sysnb Gettimeofday(tv *Timeval) (err error) -+ -+func Time(t *Time_t) (tt Time_t, err error) { -+ var tv Timeval -+ err = Gettimeofday(&tv) -+ if err != nil { -+ return 0, err -+ } -+ if t != nil { -+ *t = Time_t(tv.Sec) -+ } -+ return Time_t(tv.Sec), nil -+} -+ -+func setTimespec(sec, nsec int64) Timespec { -+ return Timespec{Sec: sec, Nsec: nsec} -+} -+ -+func setTimeval(sec, usec int64) Timeval { -+ return Timeval{Sec: sec, Usec: usec} -+} -+ -+func Pipe(p []int) (err error) { -+ if len(p) != 2 { -+ return EINVAL -+ } -+ var pp [2]_C_int -+ err = pipe2(&pp, 0) -+ p[0] = int(pp[0]) -+ p[1] = int(pp[1]) -+ return -+} -+ -+//sysnb pipe2(p *[2]_C_int, flags int) (err error) -+ -+func Pipe2(p []int, flags int) (err error) { -+ if len(p) != 2 { -+ return EINVAL -+ } -+ var pp [2]_C_int -+ err = pipe2(&pp, flags) -+ p[0] = int(pp[0]) -+ p[1] = int(pp[1]) -+ return -+} -+ -+func Ioperm(from int, num int, on int) (err error) { -+ return ENOSYS -+} -+ -+func Iopl(level int) (err error) { -+ return ENOSYS -+} -+ -+// func (r *PtraceRegs) PC() uint64 { return r.Epc } -+// func (r *PtraceRegs) SetPC(pc uint64) { r.Epc = pc } -+ -+func (iov *Iovec) SetLen(length int) { -+ iov.Len = uint64(length) -+} -+ -+func (msghdr *Msghdr) SetControllen(length int) { -+ msghdr.Controllen = uint64(length) -+} -+ -+func (cmsg *Cmsghdr) SetLen(length int) { -+ cmsg.Len = uint64(length) -+} -+ -+//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) -+func Poll(fds []PollFd, timeout int) (n int, err error) { -+ if len(fds) == 0 { -+ return poll(nil, 0, timeout) -+ } -+ return poll(&fds[0], len(fds), timeout) -+} -+ -+//sysnb EpollCreate(size int) (fd int, err error) -+//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) -+//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64 -+//sys Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_NEWFSTATAT -+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { -+ var ts *Timespec -+ if timeout != nil { -+ ts = &Timespec{Sec: timeout.Sec, Nsec: timeout.Usec * 1000} -+ } -+ return Pselect(nfd, r, w, e, ts, nil) -+} -+ -+//sys Ustat(dev int, ubuf *Ustat_t) (err error) -+//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error) -+//sys utimes(path string, times *[2]Timeval) (err error) -+ -+//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) -diff -Naur etcd-3.4.14.org/vendor/golang.org/x/sys/unix/zerrors_linux_sw64.go etcd-3.4.14.sw/vendor/golang.org/x/sys/unix/zerrors_linux_sw64.go ---- etcd-3.4.14.org/vendor/golang.org/x/sys/unix/zerrors_linux_sw64.go 1970-01-01 08:00:00.000000000 +0800 -+++ etcd-3.4.14.sw/vendor/golang.org/x/sys/unix/zerrors_linux_sw64.go 2022-09-15 16:58:46.950000000 +0800 -@@ -0,0 +1,3207 @@ -+// mkerrors.sh -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build sw64 && linux -+// +build sw64,linux -+ -+// Code generated by cmd/cgo -godefs; DO NOT EDIT. -+// cgo -godefs -- _const.go -+ -+package unix -+ -+import "syscall" -+ -+const ( -+ AAFS_MAGIC = 0x5a3c69f0 -+ ADFS_SUPER_MAGIC = 0xadf5 -+ AFFS_SUPER_MAGIC = 0xadff -+ AFS_FS_MAGIC = 0x6b414653 -+ AFS_SUPER_MAGIC = 0x5346414f -+ AF_ALG = 0x26 -+ AF_APPLETALK = 0x5 -+ AF_ASH = 0x12 -+ AF_ATMPVC = 0x8 -+ AF_ATMSVC = 0x14 -+ AF_AX25 = 0x3 -+ AF_BLUETOOTH = 0x1f -+ AF_BRIDGE = 0x7 -+ AF_CAIF = 0x25 -+ AF_CAN = 0x1d -+ AF_DECnet = 0xc -+ AF_ECONET = 0x13 -+ AF_FILE = 0x1 -+ AF_IB = 0x1b -+ AF_IEEE802154 = 0x24 -+ AF_INET = 0x2 -+ AF_INET6 = 0xa -+ AF_IPX = 0x4 -+ AF_IRDA = 0x17 -+ AF_ISDN = 0x22 -+ AF_IUCV = 0x20 -+ AF_KCM = 0x29 -+ AF_KEY = 0xf -+ AF_LLC = 0x1a -+ AF_LOCAL = 0x1 -+ AF_MAX = 0x2c -+ AF_MPLS = 0x1c -+ AF_NETBEUI = 0xd -+ AF_NETLINK = 0x10 -+ AF_NETROM = 0x6 -+ AF_NFC = 0x27 -+ AF_PACKET = 0x11 -+ AF_PHONET = 0x23 -+ AF_PPPOX = 0x18 -+ AF_QIPCRTR = 0x2a -+ AF_RDS = 0x15 -+ AF_ROSE = 0xb -+ AF_ROUTE = 0x10 -+ AF_RXRPC = 0x21 -+ AF_SECURITY = 0xe -+ AF_SMC = 0x2b -+ AF_SNA = 0x16 -+ AF_TIPC = 0x1e -+ AF_UNIX = 0x1 -+ AF_UNSPEC = 0x0 -+ AF_VSOCK = 0x28 -+ AF_WANPIPE = 0x19 -+ AF_X25 = 0x9 -+ ALG_OP_DECRYPT = 0x0 -+ ALG_OP_ENCRYPT = 0x1 -+ ALG_SET_AEAD_ASSOCLEN = 0x4 -+ ALG_SET_AEAD_AUTHSIZE = 0x5 -+ ALG_SET_IV = 0x2 -+ ALG_SET_KEY = 0x1 -+ ALG_SET_OP = 0x3 -+ ANON_INODE_FS_MAGIC = 0x9041934 -+ ARPHRD_6LOWPAN = 0x339 -+ ARPHRD_ADAPT = 0x108 -+ ARPHRD_APPLETLK = 0x8 -+ ARPHRD_ARCNET = 0x7 -+ ARPHRD_ASH = 0x30d -+ ARPHRD_ATM = 0x13 -+ ARPHRD_AX25 = 0x3 -+ ARPHRD_BIF = 0x307 -+ ARPHRD_CAIF = 0x336 -+ ARPHRD_CAN = 0x118 -+ ARPHRD_CHAOS = 0x5 -+ ARPHRD_CISCO = 0x201 -+ ARPHRD_CSLIP = 0x101 -+ ARPHRD_CSLIP6 = 0x103 -+ ARPHRD_DDCMP = 0x205 -+ ARPHRD_DLCI = 0xf -+ ARPHRD_ECONET = 0x30e -+ ARPHRD_EETHER = 0x2 -+ ARPHRD_ETHER = 0x1 -+ ARPHRD_EUI64 = 0x1b -+ ARPHRD_FCAL = 0x311 -+ ARPHRD_FCFABRIC = 0x313 -+ ARPHRD_FCPL = 0x312 -+ ARPHRD_FCPP = 0x310 -+ ARPHRD_FDDI = 0x306 -+ ARPHRD_FRAD = 0x302 -+ ARPHRD_HDLC = 0x201 -+ ARPHRD_HIPPI = 0x30c -+ ARPHRD_HWX25 = 0x110 -+ ARPHRD_IEEE1394 = 0x18 -+ ARPHRD_IEEE802 = 0x6 -+ ARPHRD_IEEE80211 = 0x321 -+ ARPHRD_IEEE80211_PRISM = 0x322 -+ ARPHRD_IEEE80211_RADIOTAP = 0x323 -+ ARPHRD_IEEE802154 = 0x324 -+ ARPHRD_IEEE802154_MONITOR = 0x325 -+ ARPHRD_IEEE802_TR = 0x320 -+ ARPHRD_INFINIBAND = 0x20 -+ ARPHRD_IP6GRE = 0x337 -+ ARPHRD_IPDDP = 0x309 -+ ARPHRD_IPGRE = 0x30a -+ ARPHRD_IRDA = 0x30f -+ ARPHRD_LAPB = 0x204 -+ ARPHRD_LOCALTLK = 0x305 -+ ARPHRD_LOOPBACK = 0x304 -+ ARPHRD_METRICOM = 0x17 -+ ARPHRD_NETLINK = 0x338 -+ ARPHRD_NETROM = 0x0 -+ ARPHRD_NONE = 0xfffe -+ ARPHRD_PHONET = 0x334 -+ ARPHRD_PHONET_PIPE = 0x335 -+ ARPHRD_PIMREG = 0x30b -+ ARPHRD_PPP = 0x200 -+ ARPHRD_PRONET = 0x4 -+ ARPHRD_RAWHDLC = 0x206 -+ ARPHRD_RAWIP = 0x207 -+ ARPHRD_ROSE = 0x10e -+ ARPHRD_RSRVD = 0x104 -+ ARPHRD_SIT = 0x308 -+ ARPHRD_SKIP = 0x303 -+ ARPHRD_SLIP = 0x100 -+ ARPHRD_SLIP6 = 0x102 -+ ARPHRD_TUNNEL = 0x300 -+ ARPHRD_TUNNEL6 = 0x301 -+ ARPHRD_VOID = 0xffff -+ ARPHRD_VSOCKMON = 0x33a -+ ARPHRD_X25 = 0x10f -+ AUTOFS_SUPER_MAGIC = 0x187 -+ B0 = 0x0 -+ B1000000 = 0x17 -+ B110 = 0x3 -+ B115200 = 0x11 -+ B1152000 = 0x18 -+ B1200 = 0x9 -+ B134 = 0x4 -+ B150 = 0x5 -+ B1500000 = 0x19 -+ B1800 = 0xa -+ B19200 = 0xe -+ B200 = 0x6 -+ B2000000 = 0x1a -+ B230400 = 0x12 -+ B2400 = 0xb -+ B2500000 = 0x1b -+ B300 = 0x7 -+ B3000000 = 0x1c -+ B3500000 = 0x1d -+ B38400 = 0xf -+ B4000000 = 0x1e -+ B460800 = 0x13 -+ B4800 = 0xc -+ B50 = 0x1 -+ B500000 = 0x14 -+ B57600 = 0x10 -+ B576000 = 0x15 -+ B600 = 0x8 -+ B75 = 0x2 -+ B921600 = 0x16 -+ B9600 = 0xd -+ BALLOON_KVM_MAGIC = 0x13661366 -+ BDEVFS_MAGIC = 0x62646576 -+ BINFMTFS_MAGIC = 0x42494e4d -+ BLKBSZGET = 0x40081270 -+ BLKBSZSET = 0x80081271 -+ BLKFLSBUF = 0x20001261 -+ BLKFRAGET = 0x20001265 -+ BLKFRASET = 0x20001264 -+ BLKGETSIZE = 0x20001260 -+ BLKGETSIZE64 = 0x40081272 -+ BLKPBSZGET = 0x2000127b -+ BLKRAGET = 0x20001263 -+ BLKRASET = 0x20001262 -+ BLKROGET = 0x2000125e -+ BLKROSET = 0x2000125d -+ BLKRRPART = 0x2000125f -+ BLKSECTGET = 0x20001267 -+ BLKSECTSET = 0x20001266 -+ BLKSSZGET = 0x20001268 -+ BPF_A = 0x10 -+ BPF_ABS = 0x20 -+ BPF_ADD = 0x0 -+ BPF_ALU = 0x4 -+ BPF_ALU64 = 0x7 -+ BPF_AND = 0x50 -+ BPF_ARSH = 0xc0 -+ BPF_B = 0x10 -+ BPF_BUILD_ID_SIZE = 0x14 -+ BPF_CALL = 0x80 -+ BPF_DIV = 0x30 -+ BPF_DW = 0x18 -+ BPF_END = 0xd0 -+ BPF_EXIT = 0x90 -+ BPF_FROM_BE = 0x8 -+ BPF_FROM_LE = 0x0 -+ BPF_FS_MAGIC = 0xcafe4a11 -+ BPF_F_ALLOW_MULTI = 0x2 -+ BPF_F_ALLOW_OVERRIDE = 0x1 -+ BPF_F_QUERY_EFFECTIVE = 0x1 -+ BPF_F_STRICT_ALIGNMENT = 0x1 -+ BPF_H = 0x8 -+ BPF_IMM = 0x0 -+ BPF_IND = 0x40 -+ BPF_JA = 0x0 -+ BPF_JEQ = 0x10 -+ BPF_JGE = 0x30 -+ BPF_JGT = 0x20 -+ BPF_JLE = 0xb0 -+ BPF_JLT = 0xa0 -+ BPF_JMP = 0x5 -+ BPF_JNE = 0x50 -+ BPF_JSET = 0x40 -+ BPF_JSGE = 0x70 -+ BPF_JSGT = 0x60 -+ BPF_JSLE = 0xd0 -+ BPF_JSLT = 0xc0 -+ BPF_K = 0x0 -+ BPF_LD = 0x0 -+ BPF_LDX = 0x1 -+ BPF_LEN = 0x80 -+ BPF_LL_OFF = -0x200000 -+ BPF_LSH = 0x60 -+ BPF_MAJOR_VERSION = 0x1 -+ BPF_MAXINSNS = 0x1000 -+ BPF_MEM = 0x60 -+ BPF_MEMWORDS = 0x10 -+ BPF_MINOR_VERSION = 0x1 -+ BPF_MISC = 0x7 -+ BPF_MOD = 0x90 -+ BPF_MOV = 0xb0 -+ BPF_MSH = 0xa0 -+ BPF_MUL = 0x20 -+ BPF_NEG = 0x80 -+ BPF_NET_OFF = -0x100000 -+ BPF_OBJ_NAME_LEN = 0x10 -+ BPF_OR = 0x40 -+ BPF_PSEUDO_CALL = 0x1 -+ BPF_PSEUDO_MAP_FD = 0x1 -+ BPF_RET = 0x6 -+ BPF_RSH = 0x70 -+ BPF_ST = 0x2 -+ BPF_STX = 0x3 -+ BPF_SUB = 0x10 -+ BPF_TAG_SIZE = 0x8 -+ BPF_TAX = 0x0 -+ BPF_TO_BE = 0x8 -+ BPF_TO_LE = 0x0 -+ BPF_TXA = 0x80 -+ BPF_W = 0x0 -+ BPF_X = 0x8 -+ BPF_XADD = 0xc0 -+ BPF_XOR = 0xa0 -+ BRKINT = 0x2 -+ BS0 = 0x0 -+ BS1 = 0x8000 -+ BSDLY = 0x8000 -+ BTRFS_SUPER_MAGIC = 0x9123683e -+ BTRFS_TEST_MAGIC = 0x73727279 -+ BUS_BLUETOOTH = 0x5 -+ BUS_HIL = 0x4 -+ BUS_USB = 0x3 -+ BUS_VIRTUAL = 0x6 -+ CAN_BCM = 0x2 -+ CAN_EFF_FLAG = 0x80000000 -+ CAN_EFF_ID_BITS = 0x1d -+ CAN_EFF_MASK = 0x1fffffff -+ CAN_ERR_ACK = 0x20 -+ CAN_ERR_BUSERROR = 0x80 -+ CAN_ERR_BUSOFF = 0x40 -+ CAN_ERR_CRTL = 0x4 -+ CAN_ERR_CRTL_ACTIVE = 0x40 -+ CAN_ERR_CRTL_RX_OVERFLOW = 0x1 -+ CAN_ERR_CRTL_RX_PASSIVE = 0x10 -+ CAN_ERR_CRTL_RX_WARNING = 0x4 -+ CAN_ERR_CRTL_TX_OVERFLOW = 0x2 -+ CAN_ERR_CRTL_TX_PASSIVE = 0x20 -+ CAN_ERR_CRTL_TX_WARNING = 0x8 -+ CAN_ERR_CRTL_UNSPEC = 0x0 -+ CAN_ERR_DLC = 0x8 -+ CAN_ERR_FLAG = 0x20000000 -+ CAN_ERR_LOSTARB = 0x2 -+ CAN_ERR_LOSTARB_UNSPEC = 0x0 -+ CAN_ERR_MASK = 0x1fffffff -+ CAN_ERR_PROT = 0x8 -+ CAN_ERR_PROT_ACTIVE = 0x40 -+ CAN_ERR_PROT_BIT = 0x1 -+ CAN_ERR_PROT_BIT0 = 0x8 -+ CAN_ERR_PROT_BIT1 = 0x10 -+ CAN_ERR_PROT_FORM = 0x2 -+ CAN_ERR_PROT_LOC_ACK = 0x19 -+ CAN_ERR_PROT_LOC_ACK_DEL = 0x1b -+ CAN_ERR_PROT_LOC_CRC_DEL = 0x18 -+ CAN_ERR_PROT_LOC_CRC_SEQ = 0x8 -+ CAN_ERR_PROT_LOC_DATA = 0xa -+ CAN_ERR_PROT_LOC_DLC = 0xb -+ CAN_ERR_PROT_LOC_EOF = 0x1a -+ CAN_ERR_PROT_LOC_ID04_00 = 0xe -+ CAN_ERR_PROT_LOC_ID12_05 = 0xf -+ CAN_ERR_PROT_LOC_ID17_13 = 0x7 -+ CAN_ERR_PROT_LOC_ID20_18 = 0x6 -+ CAN_ERR_PROT_LOC_ID28_21 = 0x2 -+ CAN_ERR_PROT_LOC_IDE = 0x5 -+ CAN_ERR_PROT_LOC_INTERM = 0x12 -+ CAN_ERR_PROT_LOC_RES0 = 0x9 -+ CAN_ERR_PROT_LOC_RES1 = 0xd -+ CAN_ERR_PROT_LOC_RTR = 0xc -+ CAN_ERR_PROT_LOC_SOF = 0x3 -+ CAN_ERR_PROT_LOC_SRTR = 0x4 -+ CAN_ERR_PROT_LOC_UNSPEC = 0x0 -+ CAN_ERR_PROT_OVERLOAD = 0x20 -+ CAN_ERR_PROT_STUFF = 0x4 -+ CAN_ERR_PROT_TX = 0x80 -+ CAN_ERR_PROT_UNSPEC = 0x0 -+ CAN_ERR_RESTARTED = 0x100 -+ CAN_ERR_TRX = 0x10 -+ CAN_ERR_TRX_CANH_NO_WIRE = 0x4 -+ CAN_ERR_TRX_CANH_SHORT_TO_BAT = 0x5 -+ CAN_ERR_TRX_CANH_SHORT_TO_GND = 0x7 -+ CAN_ERR_TRX_CANH_SHORT_TO_VCC = 0x6 -+ CAN_ERR_TRX_CANL_NO_WIRE = 0x40 -+ CAN_ERR_TRX_CANL_SHORT_TO_BAT = 0x50 -+ CAN_ERR_TRX_CANL_SHORT_TO_CANH = 0x80 -+ CAN_ERR_TRX_CANL_SHORT_TO_GND = 0x70 -+ CAN_ERR_TRX_CANL_SHORT_TO_VCC = 0x60 -+ CAN_ERR_TRX_UNSPEC = 0x0 -+ CAN_ERR_TX_TIMEOUT = 0x1 -+ CAN_INV_FILTER = 0x20000000 -+ CAN_ISOTP = 0x6 -+ CAN_MAX_DLC = 0x8 -+ CAN_MAX_DLEN = 0x8 -+ CAN_MCNET = 0x5 -+ CAN_MTU = 0x10 -+ CAN_NPROTO = 0x7 -+ CAN_RAW = 0x1 -+ CAN_RAW_FILTER_MAX = 0x200 -+ CAN_RTR_FLAG = 0x40000000 -+ CAN_SFF_ID_BITS = 0xb -+ CAN_SFF_MASK = 0x7ff -+ CAN_TP16 = 0x3 -+ CAN_TP20 = 0x4 -+ CAP_AUDIT_CONTROL = 0x1e -+ CAP_AUDIT_READ = 0x25 -+ CAP_AUDIT_WRITE = 0x1d -+ CAP_BLOCK_SUSPEND = 0x24 -+ CAP_CHOWN = 0x0 -+ CAP_DAC_OVERRIDE = 0x1 -+ CAP_DAC_READ_SEARCH = 0x2 -+ CAP_FOWNER = 0x3 -+ CAP_FSETID = 0x4 -+ CAP_IPC_LOCK = 0xe -+ CAP_IPC_OWNER = 0xf -+ CAP_KILL = 0x5 -+ CAP_LAST_CAP = 0x25 -+ CAP_LEASE = 0x1c -+ CAP_LINUX_IMMUTABLE = 0x9 -+ CAP_MAC_ADMIN = 0x21 -+ CAP_MAC_OVERRIDE = 0x20 -+ CAP_MKNOD = 0x1b -+ CAP_NET_ADMIN = 0xc -+ CAP_NET_BIND_SERVICE = 0xa -+ CAP_NET_BROADCAST = 0xb -+ CAP_NET_RAW = 0xd -+ CAP_SETFCAP = 0x1f -+ CAP_SETGID = 0x6 -+ CAP_SETPCAP = 0x8 -+ CAP_SETUID = 0x7 -+ CAP_SYSLOG = 0x22 -+ CAP_SYS_ADMIN = 0x15 -+ CAP_SYS_BOOT = 0x16 -+ CAP_SYS_CHROOT = 0x12 -+ CAP_SYS_MODULE = 0x10 -+ CAP_SYS_NICE = 0x17 -+ CAP_SYS_PACCT = 0x14 -+ CAP_SYS_PTRACE = 0x13 -+ CAP_SYS_RAWIO = 0x11 -+ CAP_SYS_RESOURCE = 0x18 -+ CAP_SYS_TIME = 0x19 -+ CAP_SYS_TTY_CONFIG = 0x1a -+ CAP_WAKE_ALARM = 0x23 -+ CBAUD = 0x1f -+ CBAUDEX = 0x0 -+ CFLUSH = 0xf -+ CGROUP2_SUPER_MAGIC = 0x63677270 -+ CGROUP_SUPER_MAGIC = 0x27e0eb -+ CLOCAL = 0x8000 -+ CLOCK_BOOTTIME = 0x7 -+ CLOCK_BOOTTIME_ALARM = 0x9 -+ CLOCK_DEFAULT = 0x0 -+ CLOCK_EXT = 0x1 -+ CLOCK_INT = 0x2 -+ CLOCK_MONOTONIC = 0x1 -+ CLOCK_MONOTONIC_COARSE = 0x6 -+ CLOCK_MONOTONIC_RAW = 0x4 -+ CLOCK_PROCESS_CPUTIME_ID = 0x2 -+ CLOCK_REALTIME = 0x0 -+ CLOCK_REALTIME_ALARM = 0x8 -+ CLOCK_REALTIME_COARSE = 0x5 -+ CLOCK_TAI = 0xb -+ CLOCK_THREAD_CPUTIME_ID = 0x3 -+ CLOCK_TXFROMRX = 0x4 -+ CLOCK_TXINT = 0x3 -+ CLONE_CHILD_CLEARTID = 0x200000 -+ CLONE_CHILD_SETTID = 0x1000000 -+ CLONE_DETACHED = 0x400000 -+ CLONE_FILES = 0x400 -+ CLONE_FS = 0x200 -+ CLONE_IO = 0x80000000 -+ CLONE_NEWCGROUP = 0x2000000 -+ CLONE_NEWIPC = 0x8000000 -+ CLONE_NEWNET = 0x40000000 -+ CLONE_NEWNS = 0x20000 -+ CLONE_NEWPID = 0x20000000 -+ CLONE_NEWUSER = 0x10000000 -+ CLONE_NEWUTS = 0x4000000 -+ CLONE_PARENT = 0x8000 -+ CLONE_PARENT_SETTID = 0x100000 -+ CLONE_PTRACE = 0x2000 -+ CLONE_SETTLS = 0x80000 -+ CLONE_SIGHAND = 0x800 -+ CLONE_SYSVSEM = 0x40000 -+ CLONE_THREAD = 0x10000 -+ CLONE_UNTRACED = 0x800000 -+ CLONE_VFORK = 0x4000 -+ CLONE_VM = 0x100 -+ CMSPAR = 0x40000000 -+ CODA_SUPER_MAGIC = 0x73757245 -+ CR0 = 0x0 -+ CR1 = 0x1000 -+ CR2 = 0x2000 -+ CR3 = 0x3000 -+ CRAMFS_MAGIC = 0x28cd3d45 -+ CRDLY = 0x3000 -+ CREAD = 0x800 -+ CRTSCTS = 0x80000000 -+ CRYPTO_MAX_NAME = 0x40 -+ CRYPTO_MSG_MAX = 0x14 -+ CRYPTO_NR_MSGTYPES = 0x5 -+ CRYPTO_REPORT_MAXSIZE = 0x160 -+ CS5 = 0x0 -+ CS6 = 0x100 -+ CS7 = 0x200 -+ CS8 = 0x300 -+ CSIGNAL = 0xff -+ CSIZE = 0x300 -+ CSTART = 0x11 -+ CSTATUS = 0x0 -+ CSTOP = 0x13 -+ CSTOPB = 0x400 -+ CSUSP = 0x1a -+ DAXFS_MAGIC = 0x64646178 -+ DEBUGFS_MAGIC = 0x64626720 -+ DEVLINK_CMD_ESWITCH_MODE_GET = 0x1d -+ DEVLINK_CMD_ESWITCH_MODE_SET = 0x1e -+ DEVLINK_GENL_MCGRP_CONFIG_NAME = "config" -+ DEVLINK_GENL_NAME = "devlink" -+ DEVLINK_GENL_VERSION = 0x1 -+ DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX = 0x14 -+ DEVPTS_SUPER_MAGIC = 0x1cd1 -+ DM_ACTIVE_PRESENT_FLAG = 0x20 -+ DM_BUFFER_FULL_FLAG = 0x100 -+ DM_CONTROL_NODE = "control" -+ DM_DATA_OUT_FLAG = 0x10000 -+ DM_DEFERRED_REMOVE = 0x20000 -+ DM_DEV_ARM_POLL = 0xc138fd10 -+ DM_DEV_CREATE = 0xc138fd03 -+ DM_DEV_REMOVE = 0xc138fd04 -+ DM_DEV_RENAME = 0xc138fd05 -+ DM_DEV_SET_GEOMETRY = 0xc138fd0f -+ DM_DEV_STATUS = 0xc138fd07 -+ DM_DEV_SUSPEND = 0xc138fd06 -+ DM_DEV_WAIT = 0xc138fd08 -+ DM_DIR = "mapper" -+ DM_INACTIVE_PRESENT_FLAG = 0x40 -+ DM_INTERNAL_SUSPEND_FLAG = 0x40000 -+ DM_IOCTL = 0xfd -+ DM_LIST_DEVICES = 0xc138fd02 -+ DM_LIST_VERSIONS = 0xc138fd0d -+ DM_MAX_TYPE_NAME = 0x10 -+ DM_NAME_LEN = 0x80 -+ DM_NOFLUSH_FLAG = 0x800 -+ DM_PERSISTENT_DEV_FLAG = 0x8 -+ DM_QUERY_INACTIVE_TABLE_FLAG = 0x1000 -+ DM_READONLY_FLAG = 0x1 -+ DM_REMOVE_ALL = 0xc138fd01 -+ DM_SECURE_DATA_FLAG = 0x8000 -+ DM_SKIP_BDGET_FLAG = 0x200 -+ DM_SKIP_LOCKFS_FLAG = 0x400 -+ DM_STATUS_TABLE_FLAG = 0x10 -+ DM_SUSPEND_FLAG = 0x2 -+ DM_TABLE_CLEAR = 0xc138fd0a -+ DM_TABLE_DEPS = 0xc138fd0b -+ DM_TABLE_LOAD = 0xc138fd09 -+ DM_TABLE_STATUS = 0xc138fd0c -+ DM_TARGET_MSG = 0xc138fd0e -+ DM_UEVENT_GENERATED_FLAG = 0x2000 -+ DM_UUID_FLAG = 0x4000 -+ DM_UUID_LEN = 0x81 -+ DM_VERSION = 0xc138fd00 -+ DM_VERSION_EXTRA = "-ioctl (2018-04-03)" -+ DM_VERSION_MAJOR = 0x4 -+ DM_VERSION_MINOR = 0x27 -+ DM_VERSION_PATCHLEVEL = 0x0 -+ DT_BLK = 0x6 -+ DT_CHR = 0x2 -+ DT_DIR = 0x4 -+ DT_FIFO = 0x1 -+ DT_LNK = 0xa -+ DT_REG = 0x8 -+ DT_SOCK = 0xc -+ DT_UNKNOWN = 0x0 -+ DT_WHT = 0xe -+ ECHO = 0x8 -+ ECHOCTL = 0x40 -+ ECHOE = 0x2 -+ ECHOK = 0x4 -+ ECHOKE = 0x1 -+ ECHONL = 0x10 -+ ECHOPRT = 0x20 -+ ECRYPTFS_SUPER_MAGIC = 0xf15f -+ EFD_CLOEXEC = 0x200000 -+ EFD_NONBLOCK = 0x4 -+ EFD_SEMAPHORE = 0x1 -+ EFIVARFS_MAGIC = 0xde5e81e4 -+ EFS_SUPER_MAGIC = 0x414a53 -+ ENCODING_DEFAULT = 0x0 -+ ENCODING_FM_MARK = 0x3 -+ ENCODING_FM_SPACE = 0x4 -+ ENCODING_MANCHESTER = 0x5 -+ ENCODING_NRZ = 0x1 -+ ENCODING_NRZI = 0x2 -+ EPOLLERR = 0x8 -+ EPOLLET = 0x80000000 -+ EPOLLEXCLUSIVE = 0x10000000 -+ EPOLLHUP = 0x10 -+ EPOLLIN = 0x1 -+ EPOLLMSG = 0x400 -+ EPOLLONESHOT = 0x40000000 -+ EPOLLOUT = 0x4 -+ EPOLLPRI = 0x2 -+ EPOLLRDBAND = 0x80 -+ EPOLLRDHUP = 0x2000 -+ EPOLLRDNORM = 0x40 -+ EPOLLWAKEUP = 0x20000000 -+ EPOLLWRBAND = 0x200 -+ EPOLLWRNORM = 0x100 -+ EPOLL_CLOEXEC = 0x200000 -+ EPOLL_CTL_ADD = 0x1 -+ EPOLL_CTL_DEL = 0x2 -+ EPOLL_CTL_MOD = 0x3 -+ ETH_P_1588 = 0x88f7 -+ ETH_P_8021AD = 0x88a8 -+ ETH_P_8021AH = 0x88e7 -+ ETH_P_8021Q = 0x8100 -+ ETH_P_80221 = 0x8917 -+ ETH_P_802_2 = 0x4 -+ ETH_P_802_3 = 0x1 -+ ETH_P_802_3_MIN = 0x600 -+ ETH_P_802_EX1 = 0x88b5 -+ ETH_P_AARP = 0x80f3 -+ ETH_P_AF_IUCV = 0xfbfb -+ ETH_P_ALL = 0x3 -+ ETH_P_AOE = 0x88a2 -+ ETH_P_ARCNET = 0x1a -+ ETH_P_ARP = 0x806 -+ ETH_P_ATALK = 0x809b -+ ETH_P_ATMFATE = 0x8884 -+ ETH_P_ATMMPOA = 0x884c -+ ETH_P_AX25 = 0x2 -+ ETH_P_BATMAN = 0x4305 -+ ETH_P_BPQ = 0x8ff -+ ETH_P_CAIF = 0xf7 -+ ETH_P_CAN = 0xc -+ ETH_P_CANFD = 0xd -+ ETH_P_CONTROL = 0x16 -+ ETH_P_CUST = 0x6006 -+ ETH_P_DDCMP = 0x6 -+ ETH_P_DEC = 0x6000 -+ ETH_P_DIAG = 0x6005 -+ ETH_P_DNA_DL = 0x6001 -+ ETH_P_DNA_RC = 0x6002 -+ ETH_P_DNA_RT = 0x6003 -+ ETH_P_DSA = 0x1b -+ ETH_P_ECONET = 0x18 -+ ETH_P_EDSA = 0xdada -+ ETH_P_ERSPAN = 0x88be -+ ETH_P_ERSPAN2 = 0x22eb -+ ETH_P_FCOE = 0x8906 -+ ETH_P_FIP = 0x8914 -+ ETH_P_HDLC = 0x19 -+ ETH_P_HSR = 0x892f -+ ETH_P_IBOE = 0x8915 -+ ETH_P_IEEE802154 = 0xf6 -+ ETH_P_IEEEPUP = 0xa00 -+ ETH_P_IEEEPUPAT = 0xa01 -+ ETH_P_IFE = 0xed3e -+ ETH_P_IP = 0x800 -+ ETH_P_IPV6 = 0x86dd -+ ETH_P_IPX = 0x8137 -+ ETH_P_IRDA = 0x17 -+ ETH_P_LAT = 0x6004 -+ ETH_P_LINK_CTL = 0x886c -+ ETH_P_LOCALTALK = 0x9 -+ ETH_P_LOOP = 0x60 -+ ETH_P_LOOPBACK = 0x9000 -+ ETH_P_MACSEC = 0x88e5 -+ ETH_P_MAP = 0xf9 -+ ETH_P_MOBITEX = 0x15 -+ ETH_P_MPLS_MC = 0x8848 -+ ETH_P_MPLS_UC = 0x8847 -+ ETH_P_MVRP = 0x88f5 -+ ETH_P_NCSI = 0x88f8 -+ ETH_P_NSH = 0x894f -+ ETH_P_PAE = 0x888e -+ ETH_P_PAUSE = 0x8808 -+ ETH_P_PHONET = 0xf5 -+ ETH_P_PPPTALK = 0x10 -+ ETH_P_PPP_DISC = 0x8863 -+ ETH_P_PPP_MP = 0x8 -+ ETH_P_PPP_SES = 0x8864 -+ ETH_P_PREAUTH = 0x88c7 -+ ETH_P_PRP = 0x88fb -+ ETH_P_PUP = 0x200 -+ ETH_P_PUPAT = 0x201 -+ ETH_P_QINQ1 = 0x9100 -+ ETH_P_QINQ2 = 0x9200 -+ ETH_P_QINQ3 = 0x9300 -+ ETH_P_RARP = 0x8035 -+ ETH_P_SCA = 0x6007 -+ ETH_P_SLOW = 0x8809 -+ ETH_P_SNAP = 0x5 -+ ETH_P_TDLS = 0x890d -+ ETH_P_TEB = 0x6558 -+ ETH_P_TIPC = 0x88ca -+ ETH_P_TRAILER = 0x1c -+ ETH_P_TR_802_2 = 0x11 -+ ETH_P_TSN = 0x22f0 -+ ETH_P_WAN_PPP = 0x7 -+ ETH_P_WCCP = 0x883e -+ ETH_P_X25 = 0x805 -+ ETH_P_XDSA = 0xf8 -+ EXABYTE_ENABLE_NEST = 0xf0 -+ EXT2_SUPER_MAGIC = 0xef53 -+ EXT3_SUPER_MAGIC = 0xef53 -+ EXT4_SUPER_MAGIC = 0xef53 -+ EXTA = 0xe -+ EXTB = 0xf -+ EXTPROC = 0x10000000 -+ F2FS_SUPER_MAGIC = 0xf2f52010 -+ FALLOC_FL_COLLAPSE_RANGE = 0x8 -+ FALLOC_FL_INSERT_RANGE = 0x20 -+ FALLOC_FL_KEEP_SIZE = 0x1 -+ FALLOC_FL_NO_HIDE_STALE = 0x4 -+ FALLOC_FL_PUNCH_HOLE = 0x2 -+ FALLOC_FL_UNSHARE_RANGE = 0x40 -+ FALLOC_FL_ZERO_RANGE = 0x10 -+ FANOTIFY_METADATA_VERSION = 0x3 -+ FAN_ACCESS = 0x1 -+ FAN_ACCESS_PERM = 0x20000 -+ FAN_ALLOW = 0x1 -+ FAN_ALL_CLASS_BITS = 0xc -+ FAN_ALL_EVENTS = 0x3b -+ FAN_ALL_INIT_FLAGS = 0x3f -+ FAN_ALL_MARK_FLAGS = 0xff -+ FAN_ALL_OUTGOING_EVENTS = 0x3403b -+ FAN_ALL_PERM_EVENTS = 0x30000 -+ FAN_AUDIT = 0x10 -+ FAN_CLASS_CONTENT = 0x4 -+ FAN_CLASS_NOTIF = 0x0 -+ FAN_CLASS_PRE_CONTENT = 0x8 -+ FAN_CLOEXEC = 0x1 -+ FAN_CLOSE = 0x18 -+ FAN_CLOSE_NOWRITE = 0x10 -+ FAN_CLOSE_WRITE = 0x8 -+ FAN_DENY = 0x2 -+ FAN_ENABLE_AUDIT = 0x40 -+ FAN_EVENT_METADATA_LEN = 0x18 -+ FAN_EVENT_ON_CHILD = 0x8000000 -+ FAN_MARK_ADD = 0x1 -+ FAN_MARK_DONT_FOLLOW = 0x4 -+ FAN_MARK_FLUSH = 0x80 -+ FAN_MARK_IGNORED_MASK = 0x20 -+ FAN_MARK_IGNORED_SURV_MODIFY = 0x40 -+ FAN_MARK_MOUNT = 0x10 -+ FAN_MARK_ONLYDIR = 0x8 -+ FAN_MARK_REMOVE = 0x2 -+ FAN_MODIFY = 0x2 -+ FAN_NOFD = -0x1 -+ FAN_NONBLOCK = 0x2 -+ FAN_ONDIR = 0x40000000 -+ FAN_OPEN = 0x20 -+ FAN_OPEN_PERM = 0x10000 -+ FAN_Q_OVERFLOW = 0x4000 -+ FAN_UNLIMITED_MARKS = 0x20 -+ FAN_UNLIMITED_QUEUE = 0x10 -+ FD_CLOEXEC = 0x1 -+ FD_SETSIZE = 0x400 -+ FF0 = 0x0 -+ FF1 = 0x4000 -+ FFDLY = 0x4000 -+ FICLONE = 0x80049409 -+ FICLONERANGE = 0x8020940d -+ FIDEDUPERANGE = 0xc0189436 -+ FLUSHO = 0x800000 -+ FS_ENCRYPTION_MODE_AES_128_CBC = 0x5 -+ FS_ENCRYPTION_MODE_AES_128_CTS = 0x6 -+ FS_ENCRYPTION_MODE_AES_256_CBC = 0x3 -+ FS_ENCRYPTION_MODE_AES_256_CTS = 0x4 -+ FS_ENCRYPTION_MODE_AES_256_GCM = 0x2 -+ FS_ENCRYPTION_MODE_AES_256_XTS = 0x1 -+ FS_ENCRYPTION_MODE_INVALID = 0x0 -+ FS_ENCRYPTION_MODE_SPECK128_256_CTS = 0x8 -+ FS_ENCRYPTION_MODE_SPECK128_256_XTS = 0x7 -+ FS_IOC_GETFLAGS = 0x40086601 -+ FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615 -+ FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614 -+ FS_IOC_SETFLAGS = 0x80086602 -+ FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613 -+ FS_KEY_DESCRIPTOR_SIZE = 0x8 -+ FS_KEY_DESC_PREFIX = "fscrypt:" -+ FS_KEY_DESC_PREFIX_SIZE = 0x8 -+ FS_MAX_KEY_SIZE = 0x40 -+ FS_POLICY_FLAGS_PAD_16 = 0x2 -+ FS_POLICY_FLAGS_PAD_32 = 0x3 -+ FS_POLICY_FLAGS_PAD_4 = 0x0 -+ FS_POLICY_FLAGS_PAD_8 = 0x1 -+ FS_POLICY_FLAGS_PAD_MASK = 0x3 -+ FS_POLICY_FLAGS_VALID = 0x3 -+ FUTEXFS_SUPER_MAGIC = 0xbad1dea -+ F_ADD_SEALS = 0x409 -+ F_DUPFD = 0x0 -+ F_DUPFD_CLOEXEC = 0x406 -+ F_EXLCK = 0x10 -+ F_GETFD = 0x1 -+ F_GETFL = 0x3 -+ F_GETLEASE = 0x401 -+ F_GETLK = 0x7 -+ F_GETLK64 = 0x7 -+ F_GETOWN = 0x6 -+ F_GETOWN_EX = 0x10 -+ F_GETPIPE_SZ = 0x408 -+ F_GETSIG = 0xb -+ F_GET_FILE_RW_HINT = 0x40d -+ F_GET_RW_HINT = 0x40b -+ F_GET_SEALS = 0x40a -+ F_LOCK = 0x1 -+ F_NOTIFY = 0x402 -+ F_OFD_GETLK = 0x24 -+ F_OFD_SETLK = 0x25 -+ F_OFD_SETLKW = 0x26 -+ F_OK = 0x0 -+ F_RDLCK = 0x1 -+ F_SEAL_GROW = 0x4 -+ F_SEAL_SEAL = 0x1 -+ F_SEAL_SHRINK = 0x2 -+ F_SEAL_WRITE = 0x8 -+ F_SETFD = 0x2 -+ F_SETFL = 0x4 -+ F_SETLEASE = 0x400 -+ F_SETLK = 0x8 -+ F_SETLK64 = 0x8 -+ F_SETLKW = 0x9 -+ F_SETLKW64 = 0x9 -+ F_SETOWN = 0x5 -+ F_SETOWN_EX = 0xf -+ F_SETPIPE_SZ = 0x407 -+ F_SETSIG = 0xa -+ F_SET_FILE_RW_HINT = 0x40e -+ F_SET_RW_HINT = 0x40c -+ F_SHLCK = 0x20 -+ F_TEST = 0x3 -+ F_TLOCK = 0x2 -+ F_ULOCK = 0x0 -+ F_UNLCK = 0x8 -+ F_WRLCK = 0x2 -+ GENL_ADMIN_PERM = 0x1 -+ GENL_CMD_CAP_DO = 0x2 -+ GENL_CMD_CAP_DUMP = 0x4 -+ GENL_CMD_CAP_HASPOL = 0x8 -+ GENL_HDRLEN = 0x4 -+ GENL_ID_CTRL = 0x10 -+ GENL_ID_PMCRAID = 0x12 -+ GENL_ID_VFS_DQUOT = 0x11 -+ GENL_MAX_ID = 0x3ff -+ GENL_MIN_ID = 0x10 -+ GENL_NAMSIZ = 0x10 -+ GENL_START_ALLOC = 0x13 -+ GENL_UNS_ADMIN_PERM = 0x10 -+ GRND_NONBLOCK = 0x1 -+ GRND_RANDOM = 0x2 -+ HDIO_DRIVE_CMD = 0x31f -+ HDIO_DRIVE_CMD_AEB = 0x31e -+ HDIO_DRIVE_CMD_HDR_SIZE = 0x4 -+ HDIO_DRIVE_HOB_HDR_SIZE = 0x8 -+ HDIO_DRIVE_RESET = 0x31c -+ HDIO_DRIVE_TASK = 0x31e -+ HDIO_DRIVE_TASKFILE = 0x31d -+ HDIO_DRIVE_TASK_HDR_SIZE = 0x8 -+ HDIO_GETGEO = 0x301 -+ HDIO_GET_32BIT = 0x309 -+ HDIO_GET_ACOUSTIC = 0x30f -+ HDIO_GET_ADDRESS = 0x310 -+ HDIO_GET_BUSSTATE = 0x31a -+ HDIO_GET_DMA = 0x30b -+ HDIO_GET_IDENTITY = 0x30d -+ HDIO_GET_KEEPSETTINGS = 0x308 -+ HDIO_GET_MULTCOUNT = 0x304 -+ HDIO_GET_NICE = 0x30c -+ HDIO_GET_NOWERR = 0x30a -+ HDIO_GET_QDMA = 0x305 -+ HDIO_GET_UNMASKINTR = 0x302 -+ HDIO_GET_WCACHE = 0x30e -+ HDIO_OBSOLETE_IDENTITY = 0x307 -+ HDIO_SCAN_HWIF = 0x328 -+ HDIO_SET_32BIT = 0x324 -+ HDIO_SET_ACOUSTIC = 0x32c -+ HDIO_SET_ADDRESS = 0x32f -+ HDIO_SET_BUSSTATE = 0x32d -+ HDIO_SET_DMA = 0x326 -+ HDIO_SET_KEEPSETTINGS = 0x323 -+ HDIO_SET_MULTCOUNT = 0x321 -+ HDIO_SET_NICE = 0x329 -+ HDIO_SET_NOWERR = 0x325 -+ HDIO_SET_PIO_MODE = 0x327 -+ HDIO_SET_QDMA = 0x32e -+ HDIO_SET_UNMASKINTR = 0x322 -+ HDIO_SET_WCACHE = 0x32b -+ HDIO_SET_XFER = 0x306 -+ HDIO_TRISTATE_HWIF = 0x31b -+ HDIO_UNREGISTER_HWIF = 0x32a -+ HIDIOCGRAWINFO = 0x40084803 -+ HIDIOCGRDESC = 0x50044802 -+ HIDIOCGRDESCSIZE = 0x40044801 -+ HID_MAX_DESCRIPTOR_SIZE = 0x1000 -+ HOSTFS_SUPER_MAGIC = 0xc0ffee -+ HPFS_SUPER_MAGIC = 0xf995e849 -+ HUGETLBFS_MAGIC = 0x958458f6 -+ HUPCL = 0x4000 -+ ICANON = 0x100 -+ ICMPV6_FILTER = 0x1 -+ ICMPV6_FILTER_BLOCK = 0x1 -+ ICMPV6_FILTER_BLOCKOTHERS = 0x3 -+ ICMPV6_FILTER_PASS = 0x2 -+ ICMPV6_FILTER_PASSONLY = 0x4 -+ ICMP_FILTER = 0x1 -+ ICRNL = 0x100 -+ IEXTEN = 0x400 -+ IFA_F_DADFAILED = 0x8 -+ IFA_F_DEPRECATED = 0x20 -+ IFA_F_HOMEADDRESS = 0x10 -+ IFA_F_MANAGETEMPADDR = 0x100 -+ IFA_F_MCAUTOJOIN = 0x400 -+ IFA_F_NODAD = 0x2 -+ IFA_F_NOPREFIXROUTE = 0x200 -+ IFA_F_OPTIMISTIC = 0x4 -+ IFA_F_PERMANENT = 0x80 -+ IFA_F_SECONDARY = 0x1 -+ IFA_F_STABLE_PRIVACY = 0x800 -+ IFA_F_TEMPORARY = 0x1 -+ IFA_F_TENTATIVE = 0x40 -+ IFA_MAX = 0x9 -+ IFF_ALLMULTI = 0x200 -+ IFF_ATTACH_QUEUE = 0x200 -+ IFF_AUTOMEDIA = 0x4000 -+ IFF_BROADCAST = 0x2 -+ IFF_DEBUG = 0x4 -+ IFF_DETACH_QUEUE = 0x400 -+ IFF_DORMANT = 0x20000 -+ IFF_DYNAMIC = 0x8000 -+ IFF_ECHO = 0x40000 -+ IFF_LOOPBACK = 0x8 -+ IFF_LOWER_UP = 0x10000 -+ IFF_MASTER = 0x400 -+ IFF_MULTICAST = 0x1000 -+ IFF_MULTI_QUEUE = 0x100 -+ IFF_NAPI = 0x10 -+ IFF_NAPI_FRAGS = 0x20 -+ IFF_NOARP = 0x80 -+ IFF_NOFILTER = 0x1000 -+ IFF_NOTRAILERS = 0x20 -+ IFF_NO_PI = 0x1000 -+ IFF_ONE_QUEUE = 0x2000 -+ IFF_PERSIST = 0x800 -+ IFF_POINTOPOINT = 0x10 -+ IFF_PORTSEL = 0x2000 -+ IFF_PROMISC = 0x100 -+ IFF_RUNNING = 0x40 -+ IFF_SLAVE = 0x800 -+ IFF_TAP = 0x2 -+ IFF_TUN = 0x1 -+ IFF_TUN_EXCL = 0x8000 -+ IFF_UP = 0x1 -+ IFF_VNET_HDR = 0x4000 -+ IFF_VOLATILE = 0x70c5a -+ IFNAMSIZ = 0x10 -+ IGNBRK = 0x1 -+ IGNCR = 0x80 -+ IGNPAR = 0x4 -+ IMAXBEL = 0x2000 -+ INLCR = 0x40 -+ INPCK = 0x10 -+ IN_ACCESS = 0x1 -+ IN_ALL_EVENTS = 0xfff -+ IN_ATTRIB = 0x4 -+ IN_CLASSA_HOST = 0xffffff -+ IN_CLASSA_MAX = 0x80 -+ IN_CLASSA_NET = 0xff000000 -+ IN_CLASSA_NSHIFT = 0x18 -+ IN_CLASSB_HOST = 0xffff -+ IN_CLASSB_MAX = 0x10000 -+ IN_CLASSB_NET = 0xffff0000 -+ IN_CLASSB_NSHIFT = 0x10 -+ IN_CLASSC_HOST = 0xff -+ IN_CLASSC_NET = 0xffffff00 -+ IN_CLASSC_NSHIFT = 0x8 -+ IN_CLOEXEC = 0x200000 -+ IN_CLOSE = 0x18 -+ IN_CLOSE_NOWRITE = 0x10 -+ IN_CLOSE_WRITE = 0x8 -+ IN_CREATE = 0x100 -+ IN_DELETE = 0x200 -+ IN_DELETE_SELF = 0x400 -+ IN_DONT_FOLLOW = 0x2000000 -+ IN_EXCL_UNLINK = 0x4000000 -+ IN_IGNORED = 0x8000 -+ IN_ISDIR = 0x40000000 -+ IN_LOOPBACKNET = 0x7f -+ IN_MASK_ADD = 0x20000000 -+ IN_MODIFY = 0x2 -+ IN_MOVE = 0xc0 -+ IN_MOVED_FROM = 0x40 -+ IN_MOVED_TO = 0x80 -+ IN_MOVE_SELF = 0x800 -+ IN_NONBLOCK = 0x4 -+ IN_ONESHOT = 0x80000000 -+ IN_ONLYDIR = 0x1000000 -+ IN_OPEN = 0x20 -+ IN_Q_OVERFLOW = 0x4000 -+ IN_UNMOUNT = 0x2000 -+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x200007b9 -+ IPPROTO_AH = 0x33 -+ IPPROTO_BEETPH = 0x5e -+ IPPROTO_COMP = 0x6c -+ IPPROTO_DCCP = 0x21 -+ IPPROTO_DSTOPTS = 0x3c -+ IPPROTO_EGP = 0x8 -+ IPPROTO_ENCAP = 0x62 -+ IPPROTO_ESP = 0x32 -+ IPPROTO_FRAGMENT = 0x2c -+ IPPROTO_GRE = 0x2f -+ IPPROTO_HOPOPTS = 0x0 -+ IPPROTO_ICMP = 0x1 -+ IPPROTO_ICMPV6 = 0x3a -+ IPPROTO_IDP = 0x16 -+ IPPROTO_IGMP = 0x2 -+ IPPROTO_IP = 0x0 -+ IPPROTO_IPIP = 0x4 -+ IPPROTO_IPV6 = 0x29 -+ IPPROTO_L2TP = 0x73 -+ IPPROTO_MH = 0x87 -+ IPPROTO_MPLS = 0x89 -+ IPPROTO_MTP = 0x5c -+ IPPROTO_NONE = 0x3b -+ IPPROTO_PIM = 0x67 -+ IPPROTO_PUP = 0xc -+ IPPROTO_RAW = 0xff -+ IPPROTO_ROUTING = 0x2b -+ IPPROTO_RSVP = 0x2e -+ IPPROTO_SCTP = 0x84 -+ IPPROTO_TCP = 0x6 -+ IPPROTO_TP = 0x1d -+ IPPROTO_UDP = 0x11 -+ IPPROTO_UDPLITE = 0x88 -+ IPV6_2292DSTOPTS = 0x4 -+ IPV6_2292HOPLIMIT = 0x8 -+ IPV6_2292HOPOPTS = 0x3 -+ IPV6_2292PKTINFO = 0x2 -+ IPV6_2292PKTOPTIONS = 0x6 -+ IPV6_2292RTHDR = 0x5 -+ IPV6_ADDRFORM = 0x1 -+ IPV6_ADDR_PREFERENCES = 0x48 -+ IPV6_ADD_MEMBERSHIP = 0x14 -+ IPV6_AUTHHDR = 0xa -+ IPV6_AUTOFLOWLABEL = 0x46 -+ IPV6_CHECKSUM = 0x7 -+ IPV6_DONTFRAG = 0x3e -+ IPV6_DROP_MEMBERSHIP = 0x15 -+ IPV6_DSTOPTS = 0x3b -+ IPV6_FREEBIND = 0x4e -+ IPV6_HDRINCL = 0x24 -+ IPV6_HOPLIMIT = 0x34 -+ IPV6_HOPOPTS = 0x36 -+ IPV6_IPSEC_POLICY = 0x22 -+ IPV6_JOIN_ANYCAST = 0x1b -+ IPV6_JOIN_GROUP = 0x14 -+ IPV6_LEAVE_ANYCAST = 0x1c -+ IPV6_LEAVE_GROUP = 0x15 -+ IPV6_MINHOPCOUNT = 0x49 -+ IPV6_MTU = 0x18 -+ IPV6_MTU_DISCOVER = 0x17 -+ IPV6_MULTICAST_HOPS = 0x12 -+ IPV6_MULTICAST_IF = 0x11 -+ IPV6_MULTICAST_LOOP = 0x13 -+ IPV6_NEXTHOP = 0x9 -+ IPV6_ORIGDSTADDR = 0x4a -+ IPV6_PATHMTU = 0x3d -+ IPV6_PKTINFO = 0x32 -+ IPV6_PMTUDISC_DO = 0x2 -+ IPV6_PMTUDISC_DONT = 0x0 -+ IPV6_PMTUDISC_INTERFACE = 0x4 -+ IPV6_PMTUDISC_OMIT = 0x5 -+ IPV6_PMTUDISC_PROBE = 0x3 -+ IPV6_PMTUDISC_WANT = 0x1 -+ IPV6_RECVDSTOPTS = 0x3a -+ IPV6_RECVERR = 0x19 -+ IPV6_RECVFRAGSIZE = 0x4d -+ IPV6_RECVHOPLIMIT = 0x33 -+ IPV6_RECVHOPOPTS = 0x35 -+ IPV6_RECVORIGDSTADDR = 0x4a -+ IPV6_RECVPATHMTU = 0x3c -+ IPV6_RECVPKTINFO = 0x31 -+ IPV6_RECVRTHDR = 0x38 -+ IPV6_RECVTCLASS = 0x42 -+ IPV6_ROUTER_ALERT = 0x16 -+ IPV6_RTHDR = 0x39 -+ IPV6_RTHDRDSTOPTS = 0x37 -+ IPV6_RTHDR_LOOSE = 0x0 -+ IPV6_RTHDR_STRICT = 0x1 -+ IPV6_RTHDR_TYPE_0 = 0x0 -+ IPV6_RXDSTOPTS = 0x3b -+ IPV6_RXHOPOPTS = 0x36 -+ IPV6_TCLASS = 0x43 -+ IPV6_TRANSPARENT = 0x4b -+ IPV6_UNICAST_HOPS = 0x10 -+ IPV6_UNICAST_IF = 0x4c -+ IPV6_V6ONLY = 0x1a -+ IPV6_XFRM_POLICY = 0x23 -+ IP_ADD_MEMBERSHIP = 0x23 -+ IP_ADD_SOURCE_MEMBERSHIP = 0x27 -+ IP_BIND_ADDRESS_NO_PORT = 0x18 -+ IP_BLOCK_SOURCE = 0x26 -+ IP_CHECKSUM = 0x17 -+ IP_DEFAULT_MULTICAST_LOOP = 0x1 -+ IP_DEFAULT_MULTICAST_TTL = 0x1 -+ IP_DF = 0x4000 -+ IP_DROP_MEMBERSHIP = 0x24 -+ IP_DROP_SOURCE_MEMBERSHIP = 0x28 -+ IP_FREEBIND = 0xf -+ IP_HDRINCL = 0x3 -+ IP_IPSEC_POLICY = 0x10 -+ IP_MAXPACKET = 0xffff -+ IP_MAX_MEMBERSHIPS = 0x14 -+ IP_MF = 0x2000 -+ IP_MINTTL = 0x15 -+ IP_MSFILTER = 0x29 -+ IP_MSS = 0x240 -+ IP_MTU = 0xe -+ IP_MTU_DISCOVER = 0xa -+ IP_MULTICAST_ALL = 0x31 -+ IP_MULTICAST_IF = 0x20 -+ IP_MULTICAST_LOOP = 0x22 -+ IP_MULTICAST_TTL = 0x21 -+ IP_NODEFRAG = 0x16 -+ IP_OFFMASK = 0x1fff -+ IP_OPTIONS = 0x4 -+ IP_ORIGDSTADDR = 0x14 -+ IP_PASSSEC = 0x12 -+ IP_PKTINFO = 0x8 -+ IP_PKTOPTIONS = 0x9 -+ IP_PMTUDISC = 0xa -+ IP_PMTUDISC_DO = 0x2 -+ IP_PMTUDISC_DONT = 0x0 -+ IP_PMTUDISC_INTERFACE = 0x4 -+ IP_PMTUDISC_OMIT = 0x5 -+ IP_PMTUDISC_PROBE = 0x3 -+ IP_PMTUDISC_WANT = 0x1 -+ IP_RECVERR = 0xb -+ IP_RECVFRAGSIZE = 0x19 -+ IP_RECVOPTS = 0x6 -+ IP_RECVORIGDSTADDR = 0x14 -+ IP_RECVRETOPTS = 0x7 -+ IP_RECVTOS = 0xd -+ IP_RECVTTL = 0xc -+ IP_RETOPTS = 0x7 -+ IP_RF = 0x8000 -+ IP_ROUTER_ALERT = 0x5 -+ IP_TOS = 0x1 -+ IP_TRANSPARENT = 0x13 -+ IP_TTL = 0x2 -+ IP_UNBLOCK_SOURCE = 0x25 -+ IP_UNICAST_IF = 0x32 -+ IP_XFRM_POLICY = 0x11 -+ ISIG = 0x80 -+ ISOFS_SUPER_MAGIC = 0x9660 -+ ISTRIP = 0x20 -+ IUCLC = 0x1000 -+ IUTF8 = 0x4000 -+ IXANY = 0x800 -+ IXOFF = 0x400 -+ IXON = 0x200 -+ JFFS2_SUPER_MAGIC = 0x72b6 -+ KEXEC_ARCH_386 = 0x30000 -+ KEXEC_ARCH_68K = 0x40000 -+ KEXEC_ARCH_AARCH64 = 0xb70000 -+ KEXEC_ARCH_ARM = 0x280000 -+ KEXEC_ARCH_DEFAULT = 0x0 -+ KEXEC_ARCH_IA_64 = 0x320000 -+ KEXEC_ARCH_MASK = 0xffff0000 -+ KEXEC_ARCH_MIPS = 0x80000 -+ KEXEC_ARCH_MIPS_LE = 0xa0000 -+ KEXEC_ARCH_PPC = 0x140000 -+ KEXEC_ARCH_PPC64 = 0x150000 -+ KEXEC_ARCH_S390 = 0x160000 -+ KEXEC_ARCH_SH = 0x2a0000 -+ KEXEC_ARCH_SW_64 = 0x99160000 -+ KEXEC_ARCH_X86_64 = 0x3e0000 -+ KEXEC_FILE_NO_INITRAMFS = 0x4 -+ KEXEC_FILE_ON_CRASH = 0x2 -+ KEXEC_FILE_UNLOAD = 0x1 -+ KEXEC_ON_CRASH = 0x1 -+ KEXEC_PRESERVE_CONTEXT = 0x2 -+ KEXEC_SEGMENT_MAX = 0x10 -+ KEYCTL_ASSUME_AUTHORITY = 0x10 -+ KEYCTL_CHOWN = 0x4 -+ KEYCTL_CLEAR = 0x7 -+ KEYCTL_DESCRIBE = 0x6 -+ KEYCTL_DH_COMPUTE = 0x17 -+ KEYCTL_GET_KEYRING_ID = 0x0 -+ KEYCTL_GET_PERSISTENT = 0x16 -+ KEYCTL_GET_SECURITY = 0x11 -+ KEYCTL_INSTANTIATE = 0xc -+ KEYCTL_INSTANTIATE_IOV = 0x14 -+ KEYCTL_INVALIDATE = 0x15 -+ KEYCTL_JOIN_SESSION_KEYRING = 0x1 -+ KEYCTL_LINK = 0x8 -+ KEYCTL_NEGATE = 0xd -+ KEYCTL_READ = 0xb -+ KEYCTL_REJECT = 0x13 -+ KEYCTL_RESTRICT_KEYRING = 0x1d -+ KEYCTL_REVOKE = 0x3 -+ KEYCTL_SEARCH = 0xa -+ KEYCTL_SESSION_TO_PARENT = 0x12 -+ KEYCTL_SETPERM = 0x5 -+ KEYCTL_SET_REQKEY_KEYRING = 0xe -+ KEYCTL_SET_TIMEOUT = 0xf -+ KEYCTL_UNLINK = 0x9 -+ KEYCTL_UPDATE = 0x2 -+ KEY_REQKEY_DEFL_DEFAULT = 0x0 -+ KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6 -+ KEY_REQKEY_DEFL_NO_CHANGE = -0x1 -+ KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2 -+ KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7 -+ KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3 -+ KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1 -+ KEY_REQKEY_DEFL_USER_KEYRING = 0x4 -+ KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5 -+ KEY_SPEC_GROUP_KEYRING = -0x6 -+ KEY_SPEC_PROCESS_KEYRING = -0x2 -+ KEY_SPEC_REQKEY_AUTH_KEY = -0x7 -+ KEY_SPEC_REQUESTOR_KEYRING = -0x8 -+ KEY_SPEC_SESSION_KEYRING = -0x3 -+ KEY_SPEC_THREAD_KEYRING = -0x1 -+ KEY_SPEC_USER_KEYRING = -0x4 -+ KEY_SPEC_USER_SESSION_KEYRING = -0x5 -+ LINUX_REBOOT_CMD_CAD_OFF = 0x0 -+ LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef -+ LINUX_REBOOT_CMD_HALT = 0xcdef0123 -+ LINUX_REBOOT_CMD_KEXEC = 0x45584543 -+ LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc -+ LINUX_REBOOT_CMD_RESTART = 0x1234567 -+ LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4 -+ LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2 -+ LINUX_REBOOT_MAGIC1 = 0xfee1dead -+ LINUX_REBOOT_MAGIC2 = 0x28121969 -+ LOCK_EX = 0x2 -+ LOCK_NB = 0x4 -+ LOCK_SH = 0x1 -+ LOCK_UN = 0x8 -+ LOOP_CLR_FD = 0x4c01 -+ LOOP_CTL_ADD = 0x4c80 -+ LOOP_CTL_GET_FREE = 0x4c82 -+ LOOP_CTL_REMOVE = 0x4c81 -+ LOOP_GET_STATUS = 0x4c03 -+ LOOP_GET_STATUS64 = 0x4c05 -+ LOOP_SET_BLOCK_SIZE = 0x4c09 -+ LOOP_SET_CAPACITY = 0x4c07 -+ LOOP_SET_DIRECT_IO = 0x4c08 -+ LOOP_SET_FD = 0x4c00 -+ LOOP_SET_STATUS = 0x4c02 -+ LOOP_SET_STATUS64 = 0x4c04 -+ LO_KEY_SIZE = 0x20 -+ LO_NAME_SIZE = 0x40 -+ LWTUNNEL_IP6_MAX = 0x7 -+ LWTUNNEL_IP_MAX = 0x7 -+ MADV_DODUMP = 0x11 -+ MADV_DOFORK = 0xb -+ MADV_DONTDUMP = 0x10 -+ MADV_DONTFORK = 0xa -+ MADV_DONTNEED = 0x6 -+ MADV_FREE = 0x8 -+ MADV_HUGEPAGE = 0xe -+ MADV_HWPOISON = 0x64 -+ MADV_KEEPONFORK = 0x13 -+ MADV_MERGEABLE = 0xc -+ MADV_NOHUGEPAGE = 0xf -+ MADV_NORMAL = 0x0 -+ MADV_RANDOM = 0x1 -+ MADV_REMOVE = 0x9 -+ MADV_SEQUENTIAL = 0x2 -+ MADV_UNMERGEABLE = 0xd -+ MADV_WILLNEED = 0x3 -+ MADV_WIPEONFORK = 0x12 -+ MAP_ANON = 0x10 -+ MAP_ANONYMOUS = 0x10 -+ MAP_DENYWRITE = 0x2000 -+ MAP_EXECUTABLE = 0x4000 -+ MAP_FILE = 0x0 -+ MAP_FIXED = 0x100 -+ MAP_FIXED_NOREPLACE = 0x200000 -+ MAP_GROWSDOWN = 0x1000 -+ MAP_HUGETLB = 0x100000 -+ MAP_HUGE_MASK = 0x3f -+ MAP_HUGE_SHIFT = 0x1a -+ MAP_LOCKED = 0x8000 -+ MAP_NONBLOCK = 0x40000 -+ MAP_NORESERVE = 0x10000 -+ MAP_POPULATE = 0x20000 -+ MAP_PRIVATE = 0x2 -+ MAP_SHARED = 0x1 -+ MAP_SHARED_VALIDATE = 0x3 -+ MAP_STACK = 0x80000 -+ MAP_TYPE = 0xf -+ MCAST_BLOCK_SOURCE = 0x2b -+ MCAST_EXCLUDE = 0x0 -+ MCAST_INCLUDE = 0x1 -+ MCAST_JOIN_GROUP = 0x2a -+ MCAST_JOIN_SOURCE_GROUP = 0x2e -+ MCAST_LEAVE_GROUP = 0x2d -+ MCAST_LEAVE_SOURCE_GROUP = 0x2f -+ MCAST_MSFILTER = 0x30 -+ MCAST_UNBLOCK_SOURCE = 0x2c -+ MCL_CURRENT = 0x2000 -+ MCL_FUTURE = 0x4000 -+ MCL_ONFAULT = 0x8000 -+ MFD_ALLOW_SEALING = 0x2 -+ MFD_CLOEXEC = 0x1 -+ MFD_HUGETLB = 0x4 -+ MFD_HUGE_16GB = -0x78000000 -+ MFD_HUGE_16MB = 0x60000000 -+ MFD_HUGE_1GB = 0x78000000 -+ MFD_HUGE_1MB = 0x50000000 -+ MFD_HUGE_256MB = 0x70000000 -+ MFD_HUGE_2GB = 0x7c000000 -+ MFD_HUGE_2MB = 0x54000000 -+ MFD_HUGE_32MB = 0x64000000 -+ MFD_HUGE_512KB = 0x4c000000 -+ MFD_HUGE_512MB = 0x74000000 -+ MFD_HUGE_64KB = 0x40000000 -+ MFD_HUGE_8MB = 0x5c000000 -+ MFD_HUGE_MASK = 0x3f -+ MFD_HUGE_SHIFT = 0x1a -+ MINIX2_SUPER_MAGIC = 0x2468 -+ MINIX2_SUPER_MAGIC2 = 0x2478 -+ MINIX3_SUPER_MAGIC = 0x4d5a -+ MINIX_SUPER_MAGIC = 0x137f -+ MINIX_SUPER_MAGIC2 = 0x138f -+ MNT_DETACH = 0x2 -+ MNT_EXPIRE = 0x4 -+ MNT_FORCE = 0x1 -+ MODULE_INIT_IGNORE_MODVERSIONS = 0x1 -+ MODULE_INIT_IGNORE_VERMAGIC = 0x2 -+ MSDOS_SUPER_MAGIC = 0x4d44 -+ MSG_BATCH = 0x40000 -+ MSG_CMSG_CLOEXEC = 0x40000000 -+ MSG_CONFIRM = 0x800 -+ MSG_CTRUNC = 0x8 -+ MSG_DONTROUTE = 0x4 -+ MSG_DONTWAIT = 0x40 -+ MSG_EOR = 0x80 -+ MSG_ERRQUEUE = 0x2000 -+ MSG_FASTOPEN = 0x20000000 -+ MSG_FIN = 0x200 -+ MSG_MORE = 0x8000 -+ MSG_NOSIGNAL = 0x4000 -+ MSG_OOB = 0x1 -+ MSG_PEEK = 0x2 -+ MSG_PROXY = 0x10 -+ MSG_RST = 0x1000 -+ MSG_SYN = 0x400 -+ MSG_TRUNC = 0x20 -+ MSG_TRYHARD = 0x4 -+ MSG_WAITALL = 0x100 -+ MSG_WAITFORONE = 0x10000 -+ MSG_ZEROCOPY = 0x4000000 -+ MS_ACTIVE = 0x40000000 -+ MS_ASYNC = 0x1 -+ MS_BIND = 0x1000 -+ MS_BORN = 0x20000000 -+ MS_DIRSYNC = 0x80 -+ MS_INVALIDATE = 0x4 -+ MS_I_VERSION = 0x800000 -+ MS_KERNMOUNT = 0x400000 -+ MS_LAZYTIME = 0x2000000 -+ MS_MANDLOCK = 0x40 -+ MS_MGC_MSK = 0xffff0000 -+ MS_MGC_VAL = 0xc0ed0000 -+ MS_MOVE = 0x2000 -+ MS_NOATIME = 0x400 -+ MS_NODEV = 0x4 -+ MS_NODIRATIME = 0x800 -+ MS_NOEXEC = 0x8 -+ MS_NOREMOTELOCK = 0x8000000 -+ MS_NOSEC = 0x10000000 -+ MS_NOSUID = 0x2 -+ MS_NOUSER = -0x80000000 -+ MS_POSIXACL = 0x10000 -+ MS_PRIVATE = 0x40000 -+ MS_RDONLY = 0x1 -+ MS_REC = 0x4000 -+ MS_RELATIME = 0x200000 -+ MS_REMOUNT = 0x20 -+ MS_RMT_MASK = 0x2800051 -+ MS_SHARED = 0x100000 -+ MS_SILENT = 0x8000 -+ MS_SLAVE = 0x80000 -+ MS_STRICTATIME = 0x1000000 -+ MS_SUBMOUNT = 0x4000000 -+ MS_SYNC = 0x2 -+ MS_SYNCHRONOUS = 0x10 -+ MS_UNBINDABLE = 0x20000 -+ MS_VERBOSE = 0x8000 -+ MTD_INODE_FS_MAGIC = 0x11307854 -+ NAME_MAX = 0xff -+ NCP_SUPER_MAGIC = 0x564c -+ NETLINK_ADD_MEMBERSHIP = 0x1 -+ NETLINK_AUDIT = 0x9 -+ NETLINK_BROADCAST_ERROR = 0x4 -+ NETLINK_CAP_ACK = 0xa -+ NETLINK_CONNECTOR = 0xb -+ NETLINK_CRYPTO = 0x15 -+ NETLINK_DNRTMSG = 0xe -+ NETLINK_DROP_MEMBERSHIP = 0x2 -+ NETLINK_ECRYPTFS = 0x13 -+ NETLINK_EXT_ACK = 0xb -+ NETLINK_FIB_LOOKUP = 0xa -+ NETLINK_FIREWALL = 0x3 -+ NETLINK_GENERIC = 0x10 -+ NETLINK_INET_DIAG = 0x4 -+ NETLINK_IP6_FW = 0xd -+ NETLINK_ISCSI = 0x8 -+ NETLINK_KOBJECT_UEVENT = 0xf -+ NETLINK_LISTEN_ALL_NSID = 0x8 -+ NETLINK_LIST_MEMBERSHIPS = 0x9 -+ NETLINK_NETFILTER = 0xc -+ NETLINK_NFLOG = 0x5 -+ NETLINK_NO_ENOBUFS = 0x5 -+ NETLINK_PKTINFO = 0x3 -+ NETLINK_RDMA = 0x14 -+ NETLINK_ROUTE = 0x0 -+ NETLINK_RX_RING = 0x6 -+ NETLINK_SCSITRANSPORT = 0x12 -+ NETLINK_SELINUX = 0x7 -+ NETLINK_SMC = 0x16 -+ NETLINK_SOCK_DIAG = 0x4 -+ NETLINK_TX_RING = 0x7 -+ NETLINK_UNUSED = 0x1 -+ NETLINK_USERSOCK = 0x2 -+ NETLINK_XFRM = 0x6 -+ NETNSA_MAX = 0x3 -+ NETNSA_NSID_NOT_ASSIGNED = -0x1 -+ NFDBITS = 0x40 -+ NFNETLINK_V0 = 0x0 -+ NFNLGRP_ACCT_QUOTA = 0x8 -+ NFNLGRP_CONNTRACK_DESTROY = 0x3 -+ NFNLGRP_CONNTRACK_EXP_DESTROY = 0x6 -+ NFNLGRP_CONNTRACK_EXP_NEW = 0x4 -+ NFNLGRP_CONNTRACK_EXP_UPDATE = 0x5 -+ NFNLGRP_CONNTRACK_NEW = 0x1 -+ NFNLGRP_CONNTRACK_UPDATE = 0x2 -+ NFNLGRP_MAX = 0x9 -+ NFNLGRP_NFTABLES = 0x7 -+ NFNLGRP_NFTRACE = 0x9 -+ NFNLGRP_NONE = 0x0 -+ NFNL_BATCH_MAX = 0x1 -+ NFNL_MSG_BATCH_BEGIN = 0x10 -+ NFNL_MSG_BATCH_END = 0x11 -+ NFNL_NFA_NEST = 0x8000 -+ NFNL_SUBSYS_ACCT = 0x7 -+ NFNL_SUBSYS_COUNT = 0xc -+ NFNL_SUBSYS_CTHELPER = 0x9 -+ NFNL_SUBSYS_CTNETLINK = 0x1 -+ NFNL_SUBSYS_CTNETLINK_EXP = 0x2 -+ NFNL_SUBSYS_CTNETLINK_TIMEOUT = 0x8 -+ NFNL_SUBSYS_IPSET = 0x6 -+ NFNL_SUBSYS_NFTABLES = 0xa -+ NFNL_SUBSYS_NFT_COMPAT = 0xb -+ NFNL_SUBSYS_NONE = 0x0 -+ NFNL_SUBSYS_OSF = 0x5 -+ NFNL_SUBSYS_QUEUE = 0x3 -+ NFNL_SUBSYS_ULOG = 0x4 -+ NFS_SUPER_MAGIC = 0x6969 -+ NILFS_SUPER_MAGIC = 0x3434 -+ NL0 = 0x0 -+ NL1 = 0x100 -+ NL2 = 0x200 -+ NL3 = 0x300 -+ NLA_ALIGNTO = 0x4 -+ NLA_F_NESTED = 0x8000 -+ NLA_F_NET_BYTEORDER = 0x4000 -+ NLA_HDRLEN = 0x4 -+ NLDLY = 0x300 -+ NLMSG_ALIGNTO = 0x4 -+ NLMSG_DONE = 0x3 -+ NLMSG_ERROR = 0x2 -+ NLMSG_HDRLEN = 0x10 -+ NLMSG_MIN_TYPE = 0x10 -+ NLMSG_NOOP = 0x1 -+ NLMSG_OVERRUN = 0x4 -+ NLM_F_ACK = 0x4 -+ NLM_F_ACK_TLVS = 0x200 -+ NLM_F_APPEND = 0x800 -+ NLM_F_ATOMIC = 0x400 -+ NLM_F_CAPPED = 0x100 -+ NLM_F_CREATE = 0x400 -+ NLM_F_DUMP = 0x300 -+ NLM_F_DUMP_FILTERED = 0x20 -+ NLM_F_DUMP_INTR = 0x10 -+ NLM_F_ECHO = 0x8 -+ NLM_F_EXCL = 0x200 -+ NLM_F_MATCH = 0x200 -+ NLM_F_MULTI = 0x2 -+ NLM_F_NONREC = 0x100 -+ NLM_F_REPLACE = 0x100 -+ NLM_F_REQUEST = 0x1 -+ NLM_F_ROOT = 0x100 -+ NOFLSH = 0x80000000 -+ NSFS_MAGIC = 0x6e736673 -+ NS_GET_NSTYPE = 0x2000b703 -+ NS_GET_OWNER_UID = 0x2000b704 -+ NS_GET_PARENT = 0x2000b702 -+ NS_GET_USERNS = 0x2000b701 -+ OCFS2_SUPER_MAGIC = 0x7461636f -+ OCRNL = 0x8 -+ OFDEL = 0x80 -+ OFILL = 0x40 -+ OLCUC = 0x4 -+ ONLCR = 0x2 -+ ONLRET = 0x20 -+ ONOCR = 0x10 -+ OPENPROM_SUPER_MAGIC = 0x9fa1 -+ OPOST = 0x1 -+ OVERLAYFS_SUPER_MAGIC = 0x794c7630 -+ O_ACCMODE = 0x3 -+ O_APPEND = 0x8 -+ O_ASYNC = 0x2000 -+ O_CLOEXEC = 0x200000 -+ O_CREAT = 0x200 -+ O_DIRECT = 0x80000 -+ O_DIRECTORY = 0x8000 -+ O_DSYNC = 0x4000 -+ O_EXCL = 0x800 -+ O_FSYNC = 0x404000 -+ O_LARGEFILE = 0x0 -+ O_NDELAY = 0x4 -+ O_NOATIME = 0x100000 -+ O_NOCTTY = 0x1000 -+ O_NOFOLLOW = 0x10000 -+ O_NONBLOCK = 0x4 -+ O_PATH = 0x800000 -+ O_RDONLY = 0x0 -+ O_RDWR = 0x2 -+ O_RSYNC = 0x404000 -+ O_SYNC = 0x404000 -+ O_TMPFILE = 0x1008000 -+ O_TRUNC = 0x400 -+ O_WRONLY = 0x1 -+ PACKET_ADD_MEMBERSHIP = 0x1 -+ PACKET_AUXDATA = 0x8 -+ PACKET_BROADCAST = 0x1 -+ PACKET_COPY_THRESH = 0x7 -+ PACKET_DROP_MEMBERSHIP = 0x2 -+ PACKET_FANOUT = 0x12 -+ PACKET_FANOUT_CBPF = 0x6 -+ PACKET_FANOUT_CPU = 0x2 -+ PACKET_FANOUT_DATA = 0x16 -+ PACKET_FANOUT_EBPF = 0x7 -+ PACKET_FANOUT_FLAG_DEFRAG = 0x8000 -+ PACKET_FANOUT_FLAG_ROLLOVER = 0x1000 -+ PACKET_FANOUT_FLAG_UNIQUEID = 0x2000 -+ PACKET_FANOUT_HASH = 0x0 -+ PACKET_FANOUT_LB = 0x1 -+ PACKET_FANOUT_QM = 0x5 -+ PACKET_FANOUT_RND = 0x4 -+ PACKET_FANOUT_ROLLOVER = 0x3 -+ PACKET_FASTROUTE = 0x6 -+ PACKET_HDRLEN = 0xb -+ PACKET_HOST = 0x0 -+ PACKET_KERNEL = 0x7 -+ PACKET_LOOPBACK = 0x5 -+ PACKET_LOSS = 0xe -+ PACKET_MR_ALLMULTI = 0x2 -+ PACKET_MR_MULTICAST = 0x0 -+ PACKET_MR_PROMISC = 0x1 -+ PACKET_MR_UNICAST = 0x3 -+ PACKET_MULTICAST = 0x2 -+ PACKET_ORIGDEV = 0x9 -+ PACKET_OTHERHOST = 0x3 -+ PACKET_OUTGOING = 0x4 -+ PACKET_QDISC_BYPASS = 0x14 -+ PACKET_RECV_OUTPUT = 0x3 -+ PACKET_RESERVE = 0xc -+ PACKET_ROLLOVER_STATS = 0x15 -+ PACKET_RX_RING = 0x5 -+ PACKET_STATISTICS = 0x6 -+ PACKET_TIMESTAMP = 0x11 -+ PACKET_TX_HAS_OFF = 0x13 -+ PACKET_TX_RING = 0xd -+ PACKET_TX_TIMESTAMP = 0x10 -+ PACKET_USER = 0x6 -+ PACKET_VERSION = 0xa -+ PACKET_VNET_HDR = 0xf -+ PARENB = 0x1000 -+ PARITY_CRC16_PR0 = 0x2 -+ PARITY_CRC16_PR0_CCITT = 0x4 -+ PARITY_CRC16_PR1 = 0x3 -+ PARITY_CRC16_PR1_CCITT = 0x5 -+ PARITY_CRC32_PR0_CCITT = 0x6 -+ PARITY_CRC32_PR1_CCITT = 0x7 -+ PARITY_DEFAULT = 0x0 -+ PARITY_NONE = 0x1 -+ PARMRK = 0x8 -+ PARODD = 0x2000 -+ PENDIN = 0x20000000 -+ PERF_ATTR_SIZE_VER0 = 0x40 -+ PERF_ATTR_SIZE_VER1 = 0x48 -+ PERF_ATTR_SIZE_VER2 = 0x50 -+ PERF_ATTR_SIZE_VER3 = 0x60 -+ PERF_ATTR_SIZE_VER4 = 0x68 -+ PERF_ATTR_SIZE_VER5 = 0x70 -+ PERF_AUX_FLAG_COLLISION = 0x8 -+ PERF_AUX_FLAG_OVERWRITE = 0x2 -+ PERF_AUX_FLAG_PARTIAL = 0x4 -+ PERF_AUX_FLAG_TRUNCATED = 0x1 -+ PERF_EVENT_IOC_DISABLE = 0x20002401 -+ PERF_EVENT_IOC_ENABLE = 0x20002400 -+ PERF_EVENT_IOC_ID = 0x40082407 -+ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8008240b -+ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409 -+ PERF_EVENT_IOC_PERIOD = 0x80082404 -+ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a -+ PERF_EVENT_IOC_REFRESH = 0x20002402 -+ PERF_EVENT_IOC_RESET = 0x20002403 -+ PERF_EVENT_IOC_SET_BPF = 0x80042408 -+ PERF_EVENT_IOC_SET_FILTER = 0x80082406 -+ PERF_EVENT_IOC_SET_OUTPUT = 0x20002405 -+ PERF_FLAG_FD_CLOEXEC = 0x8 -+ PERF_FLAG_FD_NO_GROUP = 0x1 -+ PERF_FLAG_FD_OUTPUT = 0x2 -+ PERF_FLAG_PID_CGROUP = 0x4 -+ PERF_MAX_CONTEXTS_PER_STACK = 0x8 -+ PERF_MAX_STACK_DEPTH = 0x7f -+ PERF_MEM_LOCK_LOCKED = 0x2 -+ PERF_MEM_LOCK_NA = 0x1 -+ PERF_MEM_LOCK_SHIFT = 0x18 -+ PERF_MEM_LVLNUM_ANY_CACHE = 0xb -+ PERF_MEM_LVLNUM_L1 = 0x1 -+ PERF_MEM_LVLNUM_L2 = 0x2 -+ PERF_MEM_LVLNUM_L3 = 0x3 -+ PERF_MEM_LVLNUM_L4 = 0x4 -+ PERF_MEM_LVLNUM_LFB = 0xc -+ PERF_MEM_LVLNUM_NA = 0xf -+ PERF_MEM_LVLNUM_PMEM = 0xe -+ PERF_MEM_LVLNUM_RAM = 0xd -+ PERF_MEM_LVLNUM_SHIFT = 0x21 -+ PERF_MEM_LVL_HIT = 0x2 -+ PERF_MEM_LVL_IO = 0x1000 -+ PERF_MEM_LVL_L1 = 0x8 -+ PERF_MEM_LVL_L2 = 0x20 -+ PERF_MEM_LVL_L3 = 0x40 -+ PERF_MEM_LVL_LFB = 0x10 -+ PERF_MEM_LVL_LOC_RAM = 0x80 -+ PERF_MEM_LVL_MISS = 0x4 -+ PERF_MEM_LVL_NA = 0x1 -+ PERF_MEM_LVL_REM_CCE1 = 0x400 -+ PERF_MEM_LVL_REM_CCE2 = 0x800 -+ PERF_MEM_LVL_REM_RAM1 = 0x100 -+ PERF_MEM_LVL_REM_RAM2 = 0x200 -+ PERF_MEM_LVL_SHIFT = 0x5 -+ PERF_MEM_LVL_UNC = 0x2000 -+ PERF_MEM_OP_EXEC = 0x10 -+ PERF_MEM_OP_LOAD = 0x2 -+ PERF_MEM_OP_NA = 0x1 -+ PERF_MEM_OP_PFETCH = 0x8 -+ PERF_MEM_OP_SHIFT = 0x0 -+ PERF_MEM_OP_STORE = 0x4 -+ PERF_MEM_REMOTE_REMOTE = 0x1 -+ PERF_MEM_REMOTE_SHIFT = 0x25 -+ PERF_MEM_SNOOPX_FWD = 0x1 -+ PERF_MEM_SNOOPX_SHIFT = 0x25 -+ PERF_MEM_SNOOP_HIT = 0x4 -+ PERF_MEM_SNOOP_HITM = 0x10 -+ PERF_MEM_SNOOP_MISS = 0x8 -+ PERF_MEM_SNOOP_NA = 0x1 -+ PERF_MEM_SNOOP_NONE = 0x2 -+ PERF_MEM_SNOOP_SHIFT = 0x13 -+ PERF_MEM_TLB_HIT = 0x2 -+ PERF_MEM_TLB_L1 = 0x8 -+ PERF_MEM_TLB_L2 = 0x10 -+ PERF_MEM_TLB_MISS = 0x4 -+ PERF_MEM_TLB_NA = 0x1 -+ PERF_MEM_TLB_OS = 0x40 -+ PERF_MEM_TLB_SHIFT = 0x1a -+ PERF_MEM_TLB_WK = 0x20 -+ PERF_RECORD_MISC_COMM_EXEC = 0x2000 -+ PERF_RECORD_MISC_CPUMODE_MASK = 0x7 -+ PERF_RECORD_MISC_CPUMODE_UNKNOWN = 0x0 -+ PERF_RECORD_MISC_EXACT_IP = 0x4000 -+ PERF_RECORD_MISC_EXT_RESERVED = 0x8000 -+ PERF_RECORD_MISC_GUEST_KERNEL = 0x4 -+ PERF_RECORD_MISC_GUEST_USER = 0x5 -+ PERF_RECORD_MISC_HYPERVISOR = 0x3 -+ PERF_RECORD_MISC_KERNEL = 0x1 -+ PERF_RECORD_MISC_MMAP_DATA = 0x2000 -+ PERF_RECORD_MISC_PROC_MAP_PARSE_TIMEOUT = 0x1000 -+ PERF_RECORD_MISC_SWITCH_OUT = 0x2000 -+ PERF_RECORD_MISC_SWITCH_OUT_PREEMPT = 0x4000 -+ PERF_RECORD_MISC_USER = 0x2 -+ PERF_SAMPLE_BRANCH_PLM_ALL = 0x7 -+ PIPEFS_MAGIC = 0x50495045 -+ PPPIOCATTACH = 0x8004743d -+ PPPIOCATTCHAN = 0x80047438 -+ PPPIOCCONNECT = 0x8004743a -+ PPPIOCDETACH = 0x8004743c -+ PPPIOCDISCONN = 0x20007439 -+ PPPIOCGASYNCMAP = 0x40047458 -+ PPPIOCGCHAN = 0x40047437 -+ PPPIOCGDEBUG = 0x40047441 -+ PPPIOCGFLAGS = 0x4004745a -+ PPPIOCGIDLE = 0x4010743f -+ PPPIOCGL2TPSTATS = 0x40487436 -+ PPPIOCGMRU = 0x40047453 -+ PPPIOCGNPMODE = 0xc008744c -+ PPPIOCGRASYNCMAP = 0x40047455 -+ PPPIOCGUNIT = 0x40047456 -+ PPPIOCGXASYNCMAP = 0x40207450 -+ PPPIOCNEWUNIT = 0xc004743e -+ PPPIOCSACTIVE = 0x80107446 -+ PPPIOCSASYNCMAP = 0x80047457 -+ PPPIOCSCOMPRESS = 0x8010744d -+ PPPIOCSDEBUG = 0x80047440 -+ PPPIOCSFLAGS = 0x80047459 -+ PPPIOCSMAXCID = 0x80047451 -+ PPPIOCSMRRU = 0x8004743b -+ PPPIOCSMRU = 0x80047452 -+ PPPIOCSNPMODE = 0x8008744b -+ PPPIOCSPASS = 0x80107447 -+ PPPIOCSRASYNCMAP = 0x80047454 -+ PPPIOCSXASYNCMAP = 0x8020744f -+ PPPIOCXFERUNIT = 0x2000744e -+ PRIO_PGRP = 0x1 -+ PRIO_PROCESS = 0x0 -+ PRIO_USER = 0x2 -+ PROC_SUPER_MAGIC = 0x9fa0 -+ PROT_EXEC = 0x4 -+ PROT_GROWSDOWN = 0x1000000 -+ PROT_GROWSUP = 0x2000000 -+ PROT_NONE = 0x0 -+ PROT_READ = 0x1 -+ PROT_WRITE = 0x2 -+ PR_CAPBSET_DROP = 0x18 -+ PR_CAPBSET_READ = 0x17 -+ PR_CAP_AMBIENT = 0x2f -+ PR_CAP_AMBIENT_CLEAR_ALL = 0x4 -+ PR_CAP_AMBIENT_IS_SET = 0x1 -+ PR_CAP_AMBIENT_LOWER = 0x3 -+ PR_CAP_AMBIENT_RAISE = 0x2 -+ PR_ENDIAN_BIG = 0x0 -+ PR_ENDIAN_LITTLE = 0x1 -+ PR_ENDIAN_PPC_LITTLE = 0x2 -+ PR_FPEMU_NOPRINT = 0x1 -+ PR_FPEMU_SIGFPE = 0x2 -+ PR_FP_EXC_ASYNC = 0x2 -+ PR_FP_EXC_DISABLED = 0x0 -+ PR_FP_EXC_DIV = 0x10000 -+ PR_FP_EXC_INV = 0x100000 -+ PR_FP_EXC_NONRECOV = 0x1 -+ PR_FP_EXC_OVF = 0x20000 -+ PR_FP_EXC_PRECISE = 0x3 -+ PR_FP_EXC_RES = 0x80000 -+ PR_FP_EXC_SW_ENABLE = 0x80 -+ PR_FP_EXC_UND = 0x40000 -+ PR_FP_MODE_FR = 0x1 -+ PR_FP_MODE_FRE = 0x2 -+ PR_GET_CHILD_SUBREAPER = 0x25 -+ PR_GET_DUMPABLE = 0x3 -+ PR_GET_ENDIAN = 0x13 -+ PR_GET_FPEMU = 0x9 -+ PR_GET_FPEXC = 0xb -+ PR_GET_FP_MODE = 0x2e -+ PR_GET_KEEPCAPS = 0x7 -+ PR_GET_NAME = 0x10 -+ PR_GET_NO_NEW_PRIVS = 0x27 -+ PR_GET_PDEATHSIG = 0x2 -+ PR_GET_SECCOMP = 0x15 -+ PR_GET_SECUREBITS = 0x1b -+ PR_GET_SPECULATION_CTRL = 0x34 -+ PR_GET_THP_DISABLE = 0x2a -+ PR_GET_TID_ADDRESS = 0x28 -+ PR_GET_TIMERSLACK = 0x1e -+ PR_GET_TIMING = 0xd -+ PR_GET_TSC = 0x19 -+ PR_GET_UNALIGN = 0x5 -+ PR_MCE_KILL = 0x21 -+ PR_MCE_KILL_CLEAR = 0x0 -+ PR_MCE_KILL_DEFAULT = 0x2 -+ PR_MCE_KILL_EARLY = 0x1 -+ PR_MCE_KILL_GET = 0x22 -+ PR_MCE_KILL_LATE = 0x0 -+ PR_MCE_KILL_SET = 0x1 -+ PR_MPX_DISABLE_MANAGEMENT = 0x2c -+ PR_MPX_ENABLE_MANAGEMENT = 0x2b -+ PR_SET_CHILD_SUBREAPER = 0x24 -+ PR_SET_DUMPABLE = 0x4 -+ PR_SET_ENDIAN = 0x14 -+ PR_SET_FPEMU = 0xa -+ PR_SET_FPEXC = 0xc -+ PR_SET_FP_MODE = 0x2d -+ PR_SET_KEEPCAPS = 0x8 -+ PR_SET_MM = 0x23 -+ PR_SET_MM_ARG_END = 0x9 -+ PR_SET_MM_ARG_START = 0x8 -+ PR_SET_MM_AUXV = 0xc -+ PR_SET_MM_BRK = 0x7 -+ PR_SET_MM_END_CODE = 0x2 -+ PR_SET_MM_END_DATA = 0x4 -+ PR_SET_MM_ENV_END = 0xb -+ PR_SET_MM_ENV_START = 0xa -+ PR_SET_MM_EXE_FILE = 0xd -+ PR_SET_MM_MAP = 0xe -+ PR_SET_MM_MAP_SIZE = 0xf -+ PR_SET_MM_START_BRK = 0x6 -+ PR_SET_MM_START_CODE = 0x1 -+ PR_SET_MM_START_DATA = 0x3 -+ PR_SET_MM_START_STACK = 0x5 -+ PR_SET_NAME = 0xf -+ PR_SET_NO_NEW_PRIVS = 0x26 -+ PR_SET_PDEATHSIG = 0x1 -+ PR_SET_PTRACER = 0x59616d61 -+ PR_SET_PTRACER_ANY = 0xffffffffffffffff -+ PR_SET_SECCOMP = 0x16 -+ PR_SET_SECUREBITS = 0x1c -+ PR_SET_SPECULATION_CTRL = 0x35 -+ PR_SET_THP_DISABLE = 0x29 -+ PR_SET_TIMERSLACK = 0x1d -+ PR_SET_TIMING = 0xe -+ PR_SET_TSC = 0x1a -+ PR_SET_UNALIGN = 0x6 -+ PR_SPEC_DISABLE = 0x4 -+ PR_SPEC_ENABLE = 0x2 -+ PR_SPEC_FORCE_DISABLE = 0x8 -+ PR_SPEC_INDIRECT_BRANCH = 0x1 -+ PR_SPEC_NOT_AFFECTED = 0x0 -+ PR_SPEC_PRCTL = 0x1 -+ PR_SPEC_STORE_BYPASS = 0x0 -+ PR_SVE_GET_VL = 0x33 -+ PR_SVE_SET_VL = 0x32 -+ PR_SVE_SET_VL_ONEXEC = 0x40000 -+ PR_SVE_VL_INHERIT = 0x20000 -+ PR_SVE_VL_LEN_MASK = 0xffff -+ PR_TASK_PERF_EVENTS_DISABLE = 0x1f -+ PR_TASK_PERF_EVENTS_ENABLE = 0x20 -+ PR_TIMING_STATISTICAL = 0x0 -+ PR_TIMING_TIMESTAMP = 0x1 -+ PR_TSC_ENABLE = 0x1 -+ PR_TSC_SIGSEGV = 0x2 -+ PR_UNALIGN_NOPRINT = 0x1 -+ PR_UNALIGN_SIGBUS = 0x2 -+ PSTOREFS_MAGIC = 0x6165676c -+ PTRACE_ATTACH = 0x10 -+ PTRACE_CONT = 0x7 -+ PTRACE_DETACH = 0x11 -+ PTRACE_EVENT_CLONE = 0x3 -+ PTRACE_EVENT_EXEC = 0x4 -+ PTRACE_EVENT_EXIT = 0x6 -+ PTRACE_EVENT_FORK = 0x1 -+ PTRACE_EVENT_SECCOMP = 0x7 -+ PTRACE_EVENT_STOP = 0x80 -+ PTRACE_EVENT_VFORK = 0x2 -+ PTRACE_EVENT_VFORK_DONE = 0x5 -+ PTRACE_GETEVENTMSG = 0x4201 -+ PTRACE_GETFPREGS = 0xe -+ PTRACE_GETREGS = 0xc -+ PTRACE_GETREGSET = 0x4204 -+ PTRACE_GETSIGINFO = 0x4202 -+ PTRACE_GETSIGMASK = 0x420a -+ PTRACE_INTERRUPT = 0x4207 -+ PTRACE_KILL = 0x8 -+ PTRACE_LISTEN = 0x4208 -+ PTRACE_O_EXITKILL = 0x100000 -+ PTRACE_O_MASK = 0x3000ff -+ PTRACE_O_SUSPEND_SECCOMP = 0x200000 -+ PTRACE_O_TRACECLONE = 0x8 -+ PTRACE_O_TRACEEXEC = 0x10 -+ PTRACE_O_TRACEEXIT = 0x40 -+ PTRACE_O_TRACEFORK = 0x2 -+ PTRACE_O_TRACESECCOMP = 0x80 -+ PTRACE_O_TRACESYSGOOD = 0x1 -+ PTRACE_O_TRACEVFORK = 0x4 -+ PTRACE_O_TRACEVFORKDONE = 0x20 -+ PTRACE_PEEKDATA = 0x2 -+ PTRACE_PEEKSIGINFO = 0x4209 -+ PTRACE_PEEKSIGINFO_SHARED = 0x1 -+ PTRACE_PEEKTEXT = 0x1 -+ PTRACE_PEEKUSR = 0x3 -+ PTRACE_POKEDATA = 0x5 -+ PTRACE_POKETEXT = 0x4 -+ PTRACE_POKEUSR = 0x6 -+ PTRACE_SECCOMP_GET_FILTER = 0x420c -+ PTRACE_SECCOMP_GET_METADATA = 0x420d -+ PTRACE_SEIZE = 0x4206 -+ PTRACE_SETFPREGS = 0xf -+ PTRACE_SETOPTIONS = 0x4200 -+ PTRACE_SETREGS = 0xd -+ PTRACE_SETREGSET = 0x4205 -+ PTRACE_SETSIGINFO = 0x4203 -+ PTRACE_SETSIGMASK = 0x420b -+ PTRACE_SINGLESTEP = 0x9 -+ PTRACE_SYSCALL = 0x18 -+ PTRACE_TRACEME = 0x0 -+ QNX4_SUPER_MAGIC = 0x2f -+ QNX6_SUPER_MAGIC = 0x68191122 -+ RAMFS_MAGIC = 0x858458f6 -+ RDTGROUP_SUPER_MAGIC = 0x7655821 -+ REISERFS_SUPER_MAGIC = 0x52654973 -+ RENAME_EXCHANGE = 0x2 -+ RENAME_NOREPLACE = 0x1 -+ RENAME_WHITEOUT = 0x4 -+ RLIMIT_AS = 0x7 -+ RLIMIT_CORE = 0x4 -+ RLIMIT_CPU = 0x0 -+ RLIMIT_DATA = 0x2 -+ RLIMIT_FSIZE = 0x1 -+ RLIMIT_LOCKS = 0xa -+ RLIMIT_MEMLOCK = 0x9 -+ RLIMIT_MSGQUEUE = 0xc -+ RLIMIT_NICE = 0xd -+ RLIMIT_NOFILE = 0x6 -+ RLIMIT_NPROC = 0x8 -+ RLIMIT_RSS = 0x5 -+ RLIMIT_RTPRIO = 0xe -+ RLIMIT_RTTIME = 0xf -+ RLIMIT_SIGPENDING = 0xb -+ RLIMIT_STACK = 0x3 -+ RLIM_INFINITY = 0xffffffffffffffff -+ RNDADDENTROPY = 0x80085203 -+ RNDADDTOENTCNT = 0x80045201 -+ RNDCLEARPOOL = 0x20005206 -+ RNDGETENTCNT = 0x40045200 -+ RNDGETPOOL = 0x40085202 -+ RNDRESEEDCRNG = 0x20005207 -+ RNDZAPENTCNT = 0x20005204 -+ RTAX_ADVMSS = 0x8 -+ RTAX_CC_ALGO = 0x10 -+ RTAX_CWND = 0x7 -+ RTAX_FASTOPEN_NO_COOKIE = 0x11 -+ RTAX_FEATURES = 0xc -+ RTAX_FEATURE_ALLFRAG = 0x8 -+ RTAX_FEATURE_ECN = 0x1 -+ RTAX_FEATURE_MASK = 0xf -+ RTAX_FEATURE_SACK = 0x2 -+ RTAX_FEATURE_TIMESTAMP = 0x4 -+ RTAX_HOPLIMIT = 0xa -+ RTAX_INITCWND = 0xb -+ RTAX_INITRWND = 0xe -+ RTAX_LOCK = 0x1 -+ RTAX_MAX = 0x11 -+ RTAX_MTU = 0x2 -+ RTAX_QUICKACK = 0xf -+ RTAX_REORDERING = 0x9 -+ RTAX_RTO_MIN = 0xd -+ RTAX_RTT = 0x4 -+ RTAX_RTTVAR = 0x5 -+ RTAX_SSTHRESH = 0x6 -+ RTAX_UNSPEC = 0x0 -+ RTAX_WINDOW = 0x3 -+ RTA_ALIGNTO = 0x4 -+ RTA_MAX = 0x1d -+ RTCF_DIRECTSRC = 0x4000000 -+ RTCF_DOREDIRECT = 0x1000000 -+ RTCF_LOG = 0x2000000 -+ RTCF_MASQ = 0x400000 -+ RTCF_NAT = 0x800000 -+ RTCF_VALVE = 0x200000 -+ RTC_AF = 0x20 -+ RTC_AIE_OFF = 0x20007002 -+ RTC_AIE_ON = 0x20007001 -+ RTC_ALM_READ = 0x40247008 -+ RTC_ALM_SET = 0x80247007 -+ RTC_EPOCH_READ = 0x4008700d -+ RTC_EPOCH_SET = 0x8008700e -+ RTC_IRQF = 0x80 -+ RTC_IRQP_READ = 0x4008700b -+ RTC_IRQP_SET = 0x8008700c -+ RTC_MAX_FREQ = 0x2000 -+ RTC_PF = 0x40 -+ RTC_PIE_OFF = 0x20007006 -+ RTC_PIE_ON = 0x20007005 -+ RTC_PLL_GET = 0x40207011 -+ RTC_PLL_SET = 0x80207012 -+ RTC_RD_TIME = 0x40247009 -+ RTC_SET_TIME = 0x8024700a -+ RTC_UF = 0x10 -+ RTC_UIE_OFF = 0x20007004 -+ RTC_UIE_ON = 0x20007003 -+ RTC_VL_CLR = 0x20007014 -+ RTC_VL_READ = 0x40047013 -+ RTC_WIE_OFF = 0x20007010 -+ RTC_WIE_ON = 0x2000700f -+ RTC_WKALM_RD = 0x40287010 -+ RTC_WKALM_SET = 0x8028700f -+ RTF_ADDRCLASSMASK = 0xf8000000 -+ RTF_ADDRCONF = 0x40000 -+ RTF_ALLONLINK = 0x20000 -+ RTF_BROADCAST = 0x10000000 -+ RTF_CACHE = 0x1000000 -+ RTF_DEFAULT = 0x10000 -+ RTF_DYNAMIC = 0x10 -+ RTF_FLOW = 0x2000000 -+ RTF_GATEWAY = 0x2 -+ RTF_HOST = 0x4 -+ RTF_INTERFACE = 0x40000000 -+ RTF_IRTT = 0x100 -+ RTF_LINKRT = 0x100000 -+ RTF_LOCAL = 0x80000000 -+ RTF_MODIFIED = 0x20 -+ RTF_MSS = 0x40 -+ RTF_MTU = 0x40 -+ RTF_MULTICAST = 0x20000000 -+ RTF_NAT = 0x8000000 -+ RTF_NOFORWARD = 0x1000 -+ RTF_NONEXTHOP = 0x200000 -+ RTF_NOPMTUDISC = 0x4000 -+ RTF_POLICY = 0x4000000 -+ RTF_REINSTATE = 0x8 -+ RTF_REJECT = 0x200 -+ RTF_STATIC = 0x400 -+ RTF_THROW = 0x2000 -+ RTF_UP = 0x1 -+ RTF_WINDOW = 0x80 -+ RTF_XRESOLVE = 0x800 -+ RTMGRP_DECnet_IFADDR = 0x1000 -+ RTMGRP_DECnet_ROUTE = 0x4000 -+ RTMGRP_IPV4_IFADDR = 0x10 -+ RTMGRP_IPV4_MROUTE = 0x20 -+ RTMGRP_IPV4_ROUTE = 0x40 -+ RTMGRP_IPV4_RULE = 0x80 -+ RTMGRP_IPV6_IFADDR = 0x100 -+ RTMGRP_IPV6_IFINFO = 0x800 -+ RTMGRP_IPV6_MROUTE = 0x200 -+ RTMGRP_IPV6_PREFIX = 0x20000 -+ RTMGRP_IPV6_ROUTE = 0x400 -+ RTMGRP_LINK = 0x1 -+ RTMGRP_NEIGH = 0x4 -+ RTMGRP_NOTIFY = 0x2 -+ RTMGRP_TC = 0x8 -+ RTM_BASE = 0x10 -+ RTM_DELACTION = 0x31 -+ RTM_DELADDR = 0x15 -+ RTM_DELADDRLABEL = 0x49 -+ RTM_DELCHAIN = 0x65 -+ RTM_DELLINK = 0x11 -+ RTM_DELMDB = 0x55 -+ RTM_DELNEIGH = 0x1d -+ RTM_DELNETCONF = 0x51 -+ RTM_DELNSID = 0x59 -+ RTM_DELQDISC = 0x25 -+ RTM_DELROUTE = 0x19 -+ RTM_DELRULE = 0x21 -+ RTM_DELTCLASS = 0x29 -+ RTM_DELTFILTER = 0x2d -+ RTM_F_CLONED = 0x200 -+ RTM_F_EQUALIZE = 0x400 -+ RTM_F_FIB_MATCH = 0x2000 -+ RTM_F_LOOKUP_TABLE = 0x1000 -+ RTM_F_NOTIFY = 0x100 -+ RTM_F_PREFIX = 0x800 -+ RTM_GETACTION = 0x32 -+ RTM_GETADDR = 0x16 -+ RTM_GETADDRLABEL = 0x4a -+ RTM_GETANYCAST = 0x3e -+ RTM_GETCHAIN = 0x66 -+ RTM_GETDCB = 0x4e -+ RTM_GETLINK = 0x12 -+ RTM_GETMDB = 0x56 -+ RTM_GETMULTICAST = 0x3a -+ RTM_GETNEIGH = 0x1e -+ RTM_GETNEIGHTBL = 0x42 -+ RTM_GETNETCONF = 0x52 -+ RTM_GETNSID = 0x5a -+ RTM_GETQDISC = 0x26 -+ RTM_GETROUTE = 0x1a -+ RTM_GETRULE = 0x22 -+ RTM_GETSTATS = 0x5e -+ RTM_GETTCLASS = 0x2a -+ RTM_GETTFILTER = 0x2e -+ RTM_MAX = 0x67 -+ RTM_NEWACTION = 0x30 -+ RTM_NEWADDR = 0x14 -+ RTM_NEWADDRLABEL = 0x48 -+ RTM_NEWCACHEREPORT = 0x60 -+ RTM_NEWCHAIN = 0x64 -+ RTM_NEWLINK = 0x10 -+ RTM_NEWMDB = 0x54 -+ RTM_NEWNDUSEROPT = 0x44 -+ RTM_NEWNEIGH = 0x1c -+ RTM_NEWNEIGHTBL = 0x40 -+ RTM_NEWNETCONF = 0x50 -+ RTM_NEWNSID = 0x58 -+ RTM_NEWPREFIX = 0x34 -+ RTM_NEWQDISC = 0x24 -+ RTM_NEWROUTE = 0x18 -+ RTM_NEWRULE = 0x20 -+ RTM_NEWSTATS = 0x5c -+ RTM_NEWTCLASS = 0x28 -+ RTM_NEWTFILTER = 0x2c -+ RTM_NR_FAMILIES = 0x16 -+ RTM_NR_MSGTYPES = 0x58 -+ RTM_SETDCB = 0x4f -+ RTM_SETLINK = 0x13 -+ RTM_SETNEIGHTBL = 0x43 -+ RTNH_ALIGNTO = 0x4 -+ RTNH_COMPARE_MASK = 0x19 -+ RTNH_F_DEAD = 0x1 -+ RTNH_F_LINKDOWN = 0x10 -+ RTNH_F_OFFLOAD = 0x8 -+ RTNH_F_ONLINK = 0x4 -+ RTNH_F_PERVASIVE = 0x2 -+ RTNH_F_UNRESOLVED = 0x20 -+ RTN_MAX = 0xb -+ RTPROT_BABEL = 0x2a -+ RTPROT_BGP = 0xba -+ RTPROT_BIRD = 0xc -+ RTPROT_BOOT = 0x3 -+ RTPROT_DHCP = 0x10 -+ RTPROT_DNROUTED = 0xd -+ RTPROT_EIGRP = 0xc0 -+ RTPROT_GATED = 0x8 -+ RTPROT_ISIS = 0xbb -+ RTPROT_KERNEL = 0x2 -+ RTPROT_MROUTED = 0x11 -+ RTPROT_MRT = 0xa -+ RTPROT_NTK = 0xf -+ RTPROT_OSPF = 0xbc -+ RTPROT_RA = 0x9 -+ RTPROT_REDIRECT = 0x1 -+ RTPROT_RIP = 0xbd -+ RTPROT_STATIC = 0x4 -+ RTPROT_UNSPEC = 0x0 -+ RTPROT_XORP = 0xe -+ RTPROT_ZEBRA = 0xb -+ RT_CLASS_DEFAULT = 0xfd -+ RT_CLASS_LOCAL = 0xff -+ RT_CLASS_MAIN = 0xfe -+ RT_CLASS_MAX = 0xff -+ RT_CLASS_UNSPEC = 0x0 -+ RUSAGE_CHILDREN = -0x1 -+ RUSAGE_SELF = 0x0 -+ RUSAGE_THREAD = 0x1 -+ RWF_APPEND = 0x10 -+ RWF_DSYNC = 0x2 -+ RWF_HIPRI = 0x1 -+ RWF_NOWAIT = 0x8 -+ RWF_SUPPORTED = 0x1f -+ RWF_SYNC = 0x4 -+ RWF_WRITE_LIFE_NOT_SET = 0x0 -+ SCM_CREDENTIALS = 0x2 -+ SCM_RIGHTS = 0x1 -+ SCM_TIMESTAMP = 0x1d -+ SCM_TIMESTAMPING = 0x25 -+ SCM_TIMESTAMPING_OPT_STATS = 0x36 -+ SCM_TIMESTAMPING_PKTINFO = 0x3a -+ SCM_TIMESTAMPNS = 0x23 -+ SCM_TXTIME = 0x3d -+ SCM_WIFI_STATUS = 0x29 -+ SC_LOG_FLUSH = 0x100000 -+ SECCOMP_MODE_DISABLED = 0x0 -+ SECCOMP_MODE_FILTER = 0x2 -+ SECCOMP_MODE_STRICT = 0x1 -+ SECURITYFS_MAGIC = 0x73636673 -+ SELINUX_MAGIC = 0xf97cff8c -+ SFD_CLOEXEC = 0x200000 -+ SFD_NONBLOCK = 0x4 -+ SHUT_RD = 0x0 -+ SHUT_RDWR = 0x2 -+ SHUT_WR = 0x1 -+ SIOCADDDLCI = 0x8980 -+ SIOCADDMULTI = 0x8931 -+ SIOCADDRT = 0x890b -+ SIOCATMARK = 0x40047307 -+ SIOCBONDCHANGEACTIVE = 0x8995 -+ SIOCBONDENSLAVE = 0x8990 -+ SIOCBONDINFOQUERY = 0x8994 -+ SIOCBONDRELEASE = 0x8991 -+ SIOCBONDSETHWADDR = 0x8992 -+ SIOCBONDSLAVEINFOQUERY = 0x8993 -+ SIOCBRADDBR = 0x89a0 -+ SIOCBRADDIF = 0x89a2 -+ SIOCBRDELBR = 0x89a1 -+ SIOCBRDELIF = 0x89a3 -+ SIOCDARP = 0x8953 -+ SIOCDELDLCI = 0x8981 -+ SIOCDELMULTI = 0x8932 -+ SIOCDELRT = 0x890c -+ SIOCDEVPRIVATE = 0x89f0 -+ SIOCDIFADDR = 0x8936 -+ SIOCDRARP = 0x8960 -+ SIOCETHTOOL = 0x8946 -+ SIOCGARP = 0x8954 -+ SIOCGETLINKNAME = 0x89e0 -+ SIOCGETNODEID = 0x89e1 -+ SIOCGHWTSTAMP = 0x89b1 -+ SIOCGIFADDR = 0x8915 -+ SIOCGIFBR = 0x8940 -+ SIOCGIFBRDADDR = 0x8919 -+ SIOCGIFCONF = 0x8912 -+ SIOCGIFCOUNT = 0x8938 -+ SIOCGIFDSTADDR = 0x8917 -+ SIOCGIFENCAP = 0x8925 -+ SIOCGIFFLAGS = 0x8913 -+ SIOCGIFHWADDR = 0x8927 -+ SIOCGIFINDEX = 0x8933 -+ SIOCGIFMAP = 0x8970 -+ SIOCGIFMEM = 0x891f -+ SIOCGIFMETRIC = 0x891d -+ SIOCGIFMTU = 0x8921 -+ SIOCGIFNAME = 0x8910 -+ SIOCGIFNETMASK = 0x891b -+ SIOCGIFPFLAGS = 0x8935 -+ SIOCGIFSLAVE = 0x8929 -+ SIOCGIFTXQLEN = 0x8942 -+ SIOCGIFVLAN = 0x8982 -+ SIOCGMIIPHY = 0x8947 -+ SIOCGMIIREG = 0x8948 -+ SIOCGPGRP = 0x40047309 -+ SIOCGPPPCSTATS = 0x89f2 -+ SIOCGPPPSTATS = 0x89f0 -+ SIOCGPPPVER = 0x89f1 -+ SIOCGRARP = 0x8961 -+ SIOCGSKNS = 0x894c -+ SIOCGSTAMP = 0x8906 -+ SIOCGSTAMPNS = 0x8907 -+ SIOCINQ = 0x4004667f -+ SIOCOUTQ = 0x40047473 -+ SIOCOUTQNSD = 0x894b -+ SIOCPROTOPRIVATE = 0x89e0 -+ SIOCRTMSG = 0x890d -+ SIOCSARP = 0x8955 -+ SIOCSHWTSTAMP = 0x89b0 -+ SIOCSIFADDR = 0x8916 -+ SIOCSIFBR = 0x8941 -+ SIOCSIFBRDADDR = 0x891a -+ SIOCSIFDSTADDR = 0x8918 -+ SIOCSIFENCAP = 0x8926 -+ SIOCSIFFLAGS = 0x8914 -+ SIOCSIFHWADDR = 0x8924 -+ SIOCSIFHWBROADCAST = 0x8937 -+ SIOCSIFLINK = 0x8911 -+ SIOCSIFMAP = 0x8971 -+ SIOCSIFMEM = 0x8920 -+ SIOCSIFMETRIC = 0x891e -+ SIOCSIFMTU = 0x8922 -+ SIOCSIFNAME = 0x8923 -+ SIOCSIFNETMASK = 0x891c -+ SIOCSIFPFLAGS = 0x8934 -+ SIOCSIFSLAVE = 0x8930 -+ SIOCSIFTXQLEN = 0x8943 -+ SIOCSIFVLAN = 0x8983 -+ SIOCSMIIREG = 0x8949 -+ SIOCSPGRP = 0x80047308 -+ SIOCSRARP = 0x8962 -+ SIOCWANDEV = 0x894a -+ SMACK_MAGIC = 0x43415d53 -+ SMART_AUTOSAVE = 0xd2 -+ SMART_AUTO_OFFLINE = 0xdb -+ SMART_DISABLE = 0xd9 -+ SMART_ENABLE = 0xd8 -+ SMART_HCYL_PASS = 0xc2 -+ SMART_IMMEDIATE_OFFLINE = 0xd4 -+ SMART_LCYL_PASS = 0x4f -+ SMART_READ_LOG_SECTOR = 0xd5 -+ SMART_READ_THRESHOLDS = 0xd1 -+ SMART_READ_VALUES = 0xd0 -+ SMART_SAVE = 0xd3 -+ SMART_STATUS = 0xda -+ SMART_WRITE_LOG_SECTOR = 0xd6 -+ SMART_WRITE_THRESHOLDS = 0xd7 -+ SMB_SUPER_MAGIC = 0x517b -+ SOCKFS_MAGIC = 0x534f434b -+ SOCK_CLOEXEC = 0x200000 -+ SOCK_DCCP = 0x6 -+ SOCK_DGRAM = 0x2 -+ SOCK_IOC_TYPE = 0x89 -+ SOCK_NONBLOCK = 0x40000000 -+ SOCK_PACKET = 0xa -+ SOCK_RAW = 0x3 -+ SOCK_RDM = 0x4 -+ SOCK_SEQPACKET = 0x5 -+ SOCK_STREAM = 0x1 -+ SOL_AAL = 0x109 -+ SOL_ALG = 0x117 -+ SOL_ATM = 0x108 -+ SOL_CAIF = 0x116 -+ SOL_CAN_BASE = 0x64 -+ SOL_CAN_RAW = 0x65 -+ SOL_DCCP = 0x10d -+ SOL_DECNET = 0x105 -+ SOL_ICMPV6 = 0x3a -+ SOL_IP = 0x0 -+ SOL_IPV6 = 0x29 -+ SOL_IRDA = 0x10a -+ SOL_IUCV = 0x115 -+ SOL_KCM = 0x119 -+ SOL_LLC = 0x10c -+ SOL_NETBEUI = 0x10b -+ SOL_NETLINK = 0x10e -+ SOL_NFC = 0x118 -+ SOL_PACKET = 0x107 -+ SOL_PNPIPE = 0x113 -+ SOL_PPPOL2TP = 0x111 -+ SOL_RAW = 0xff -+ SOL_RDS = 0x114 -+ SOL_RXRPC = 0x110 -+ SOL_SOCKET = 0xffff -+ SOL_TCP = 0x6 -+ SOL_TIPC = 0x10f -+ SOL_TLS = 0x11a -+ SOL_X25 = 0x106 -+ SOMAXCONN = 0x80 -+ SO_ACCEPTCONN = 0x1014 -+ SO_ATTACH_BPF = 0x32 -+ SO_ATTACH_FILTER = 0x1a -+ SO_ATTACH_REUSEPORT_CBPF = 0x33 -+ SO_ATTACH_REUSEPORT_EBPF = 0x34 -+ SO_BINDTODEVICE = 0x19 -+ SO_BPF_EXTENSIONS = 0x30 -+ SO_BROADCAST = 0x20 -+ SO_BSDCOMPAT = 0xe -+ SO_BUSY_POLL = 0x2e -+ SO_CNX_ADVICE = 0x35 -+ SO_COOKIE = 0x39 -+ SO_DEBUG = 0x1 -+ SO_DETACH_BPF = 0x1b -+ SO_DETACH_FILTER = 0x1b -+ SO_DOMAIN = 0x1029 -+ SO_DONTROUTE = 0x10 -+ SO_EE_CODE_TXTIME_INVALID_PARAM = 0x1 -+ SO_EE_CODE_TXTIME_MISSED = 0x2 -+ SO_EE_CODE_ZEROCOPY_COPIED = 0x1 -+ SO_EE_ORIGIN_ICMP = 0x2 -+ SO_EE_ORIGIN_ICMP6 = 0x3 -+ SO_EE_ORIGIN_LOCAL = 0x1 -+ SO_EE_ORIGIN_NONE = 0x0 -+ SO_EE_ORIGIN_TIMESTAMPING = 0x4 -+ SO_EE_ORIGIN_TXSTATUS = 0x4 -+ SO_EE_ORIGIN_TXTIME = 0x6 -+ SO_EE_ORIGIN_ZEROCOPY = 0x5 -+ SO_ERROR = 0x1007 -+ SO_GET_FILTER = 0x1a -+ SO_INCOMING_CPU = 0x31 -+ SO_INCOMING_NAPI_ID = 0x38 -+ SO_KEEPALIVE = 0x8 -+ SO_LINGER = 0x80 -+ SO_LOCK_FILTER = 0x2c -+ SO_MARK = 0x24 -+ SO_MAX_PACING_RATE = 0x2f -+ SO_MEMINFO = 0x37 -+ SO_NOFCS = 0x2b -+ SO_NO_CHECK = 0xb -+ SO_OOBINLINE = 0x100 -+ SO_PASSCRED = 0x11 -+ SO_PASSSEC = 0x22 -+ SO_PEEK_OFF = 0x2a -+ SO_PEERCRED = 0x12 -+ SO_PEERGROUPS = 0x3b -+ SO_PEERNAME = 0x1c -+ SO_PEERSEC = 0x1e -+ SO_PRIORITY = 0xc -+ SO_PROTOCOL = 0x1028 -+ SO_RCVBUF = 0x1002 -+ SO_RCVBUFFORCE = 0x100b -+ SO_RCVLOWAT = 0x1010 -+ SO_RCVTIMEO = 0x1012 -+ SO_REUSEADDR = 0x4 -+ SO_REUSEPORT = 0x200 -+ SO_RXQ_OVFL = 0x28 -+ SO_SECURITY_AUTHENTICATION = 0x13 -+ SO_SECURITY_ENCRYPTION_NETWORK = 0x15 -+ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x14 -+ SO_SELECT_ERR_QUEUE = 0x2d -+ SO_SNDBUF = 0x1001 -+ SO_SNDBUFFORCE = 0x100a -+ SO_SNDLOWAT = 0x1011 -+ SO_SNDTIMEO = 0x1013 -+ SO_TIMESTAMP = 0x1d -+ SO_TIMESTAMPING = 0x25 -+ SO_TIMESTAMPNS = 0x23 -+ SO_TXTIME = 0x3d -+ SO_TYPE = 0x1008 -+ SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2 -+ SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1 -+ SO_VM_SOCKETS_BUFFER_SIZE = 0x0 -+ SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6 -+ SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7 -+ SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3 -+ SO_VM_SOCKETS_TRUSTED = 0x5 -+ SO_WIFI_STATUS = 0x29 -+ SO_ZEROCOPY = 0x3c -+ SPLICE_F_GIFT = 0x8 -+ SPLICE_F_MORE = 0x4 -+ SPLICE_F_MOVE = 0x1 -+ SPLICE_F_NONBLOCK = 0x2 -+ SQUASHFS_MAGIC = 0x73717368 -+ STACK_END_MAGIC = 0x57ac6e9d -+ STATX_ALL = 0xfff -+ STATX_ATIME = 0x20 -+ STATX_ATTR_APPEND = 0x20 -+ STATX_ATTR_AUTOMOUNT = 0x1000 -+ STATX_ATTR_COMPRESSED = 0x4 -+ STATX_ATTR_ENCRYPTED = 0x800 -+ STATX_ATTR_IMMUTABLE = 0x10 -+ STATX_ATTR_NODUMP = 0x40 -+ STATX_BASIC_STATS = 0x7ff -+ STATX_BLOCKS = 0x400 -+ STATX_BTIME = 0x800 -+ STATX_CTIME = 0x80 -+ STATX_GID = 0x10 -+ STATX_INO = 0x100 -+ STATX_MODE = 0x2 -+ STATX_MTIME = 0x40 -+ STATX_NLINK = 0x4 -+ STATX_SIZE = 0x200 -+ STATX_TYPE = 0x1 -+ STATX_UID = 0x8 -+ STATX__RESERVED = 0x80000000 -+ SYNC_FILE_RANGE_WAIT_AFTER = 0x4 -+ SYNC_FILE_RANGE_WAIT_BEFORE = 0x1 -+ SYNC_FILE_RANGE_WRITE = 0x2 -+ SYSFS_MAGIC = 0x62656572 -+ S_BLKSIZE = 0x200 -+ S_IEXEC = 0x40 -+ S_IFBLK = 0x6000 -+ S_IFCHR = 0x2000 -+ S_IFDIR = 0x4000 -+ S_IFIFO = 0x1000 -+ S_IFLNK = 0xa000 -+ S_IFMT = 0xf000 -+ S_IFREG = 0x8000 -+ S_IFSOCK = 0xc000 -+ S_IREAD = 0x100 -+ S_IRGRP = 0x20 -+ S_IROTH = 0x4 -+ S_IRUSR = 0x100 -+ S_IRWXG = 0x38 -+ S_IRWXO = 0x7 -+ S_IRWXU = 0x1c0 -+ S_ISGID = 0x400 -+ S_ISUID = 0x800 -+ S_ISVTX = 0x200 -+ S_IWGRP = 0x10 -+ S_IWOTH = 0x2 -+ S_IWRITE = 0x80 -+ S_IWUSR = 0x80 -+ S_IXGRP = 0x8 -+ S_IXOTH = 0x1 -+ S_IXUSR = 0x40 -+ TAB0 = 0x0 -+ TAB1 = 0x400 -+ TAB2 = 0x800 -+ TAB3 = 0xc00 -+ TABDLY = 0xc00 -+ TASKSTATS_CMD_ATTR_MAX = 0x4 -+ TASKSTATS_CMD_MAX = 0x2 -+ TASKSTATS_GENL_NAME = "TASKSTATS" -+ TASKSTATS_GENL_VERSION = 0x1 -+ TASKSTATS_TYPE_MAX = 0x6 -+ TASKSTATS_VERSION = 0x8 -+ TCFLSH = 0x2000741f -+ TCGETA = 0x40127417 -+ TCGETS = 0x402c7413 -+ TCIFLUSH = 0x0 -+ TCIOFF = 0x2 -+ TCIOFLUSH = 0x2 -+ TCION = 0x3 -+ TCOFLUSH = 0x1 -+ TCOOFF = 0x0 -+ TCOON = 0x1 -+ TCP_CC_INFO = 0x1a -+ TCP_CONGESTION = 0xd -+ TCP_COOKIE_IN_ALWAYS = 0x1 -+ TCP_COOKIE_MAX = 0x10 -+ TCP_COOKIE_MIN = 0x8 -+ TCP_COOKIE_OUT_NEVER = 0x2 -+ TCP_COOKIE_PAIR_SIZE = 0x20 -+ TCP_COOKIE_TRANSACTIONS = 0xf -+ TCP_CORK = 0x3 -+ TCP_DEFER_ACCEPT = 0x9 -+ TCP_FASTOPEN = 0x17 -+ TCP_FASTOPEN_CONNECT = 0x1e -+ TCP_FASTOPEN_KEY = 0x21 -+ TCP_FASTOPEN_NO_COOKIE = 0x22 -+ TCP_INFO = 0xb -+ TCP_KEEPCNT = 0x6 -+ TCP_KEEPIDLE = 0x4 -+ TCP_KEEPINTVL = 0x5 -+ TCP_LINGER2 = 0x8 -+ TCP_MAXSEG = 0x2 -+ TCP_MAXWIN = 0xffff -+ TCP_MAX_WINSHIFT = 0xe -+ TCP_MD5SIG = 0xe -+ TCP_MD5SIG_EXT = 0x20 -+ TCP_MD5SIG_FLAG_PREFIX = 0x1 -+ TCP_MD5SIG_MAXKEYLEN = 0x50 -+ TCP_MSS = 0x200 -+ TCP_MSS_DEFAULT = 0x218 -+ TCP_MSS_DESIRED = 0x4c4 -+ TCP_NODELAY = 0x1 -+ TCP_NOTSENT_LOWAT = 0x19 -+ TCP_QUEUE_SEQ = 0x15 -+ TCP_QUICKACK = 0xc -+ TCP_REPAIR = 0x13 -+ TCP_REPAIR_OPTIONS = 0x16 -+ TCP_REPAIR_QUEUE = 0x14 -+ TCP_REPAIR_WINDOW = 0x1d -+ TCP_SAVED_SYN = 0x1c -+ TCP_SAVE_SYN = 0x1b -+ TCP_SYNCNT = 0x7 -+ TCP_S_DATA_IN = 0x4 -+ TCP_S_DATA_OUT = 0x8 -+ TCP_THIN_DUPACK = 0x11 -+ TCP_THIN_LINEAR_TIMEOUTS = 0x10 -+ TCP_TIMESTAMP = 0x18 -+ TCP_ULP = 0x1f -+ TCP_USER_TIMEOUT = 0x12 -+ TCP_WINDOW_CLAMP = 0xa -+ TCSAFLUSH = 0x2 -+ TCSBRK = 0x2000741d -+ TCSBRKP = 0x5425 -+ TCSETA = 0x80127418 -+ TCSETAF = 0x8012741c -+ TCSETAW = 0x80127419 -+ TCSETS = 0x802c7414 -+ TCSETSF = 0x802c7416 -+ TCSETSW = 0x802c7415 -+ TCXONC = 0x2000741e -+ TFD_CLOEXEC = 0x200000 -+ TFD_NONBLOCK = 0x4 -+ TFD_TIMER_ABSTIME = 0x1 -+ TFD_TIMER_CANCEL_ON_SET = 0x2 -+ TIMER_ABSTIME = 0x1 -+ TIOCCBRK = 0x5428 -+ TIOCCONS = 0x541d -+ TIOCEXCL = 0x540c -+ TIOCGDEV = 0x40045432 -+ TIOCGETD = 0x5424 -+ TIOCGEXCL = 0x40045440 -+ TIOCGICOUNT = 0x545d -+ TIOCGLCKTRMIOS = 0x5456 -+ TIOCGPGRP = 0x40047477 -+ TIOCGPKT = 0x40045438 -+ TIOCGPTLCK = 0x40045439 -+ TIOCGPTN = 0x40045430 -+ TIOCGPTPEER = 0x20005441 -+ TIOCGSERIAL = 0x541e -+ TIOCGSID = 0x5429 -+ TIOCGSOFTCAR = 0x5419 -+ TIOCLINUX = 0x541c -+ TIOCMBIC = 0x5417 -+ TIOCMBIS = 0x5416 -+ TIOCMGET = 0x5415 -+ TIOCMIWAIT = 0x545c -+ TIOCMSET = 0x5418 -+ TIOCM_CAR = 0x40 -+ TIOCM_CD = 0x40 -+ TIOCM_CTS = 0x20 -+ TIOCM_DSR = 0x100 -+ TIOCM_DTR = 0x2 -+ TIOCM_LE = 0x1 -+ TIOCM_LOOP = 0x8000 -+ TIOCM_OUT1 = 0x2000 -+ TIOCM_OUT2 = 0x4000 -+ TIOCM_RI = 0x80 -+ TIOCM_RNG = 0x80 -+ TIOCM_RTS = 0x4 -+ TIOCM_SR = 0x10 -+ TIOCM_ST = 0x8 -+ TIOCNOTTY = 0x5422 -+ TIOCNXCL = 0x540d -+ TIOCOUTQ = 0x40047473 -+ TIOCPKT = 0x5420 -+ TIOCPKT_DATA = 0x0 -+ TIOCPKT_DOSTOP = 0x20 -+ TIOCPKT_FLUSHREAD = 0x1 -+ TIOCPKT_FLUSHWRITE = 0x2 -+ TIOCPKT_IOCTL = 0x40 -+ TIOCPKT_NOSTOP = 0x10 -+ TIOCPKT_START = 0x8 -+ TIOCPKT_STOP = 0x4 -+ TIOCSBRK = 0x5427 -+ TIOCSCTTY = 0x540e -+ TIOCSERCONFIG = 0x5453 -+ TIOCSERGETLSR = 0x5459 -+ TIOCSERGETMULTI = 0x545a -+ TIOCSERGSTRUCT = 0x5458 -+ TIOCSERGWILD = 0x5454 -+ TIOCSERSETMULTI = 0x545b -+ TIOCSERSWILD = 0x5455 -+ TIOCSER_TEMT = 0x1 -+ TIOCSETD = 0x5423 -+ TIOCSIG = 0x80045436 -+ TIOCSLCKTRMIOS = 0x5457 -+ TIOCSPGRP = 0x80047476 -+ TIOCSPTLCK = 0x80045431 -+ TIOCSSERIAL = 0x541f -+ TIOCSSOFTCAR = 0x541a -+ TIOCSTART = 0x2000746e -+ TIOCSTI = 0x5412 -+ TIOCSTOP = 0x2000746f -+ TIOCVHANGUP = 0x5437 -+ TIPC_ADDR_ID = 0x3 -+ TIPC_ADDR_MCAST = 0x1 -+ TIPC_ADDR_NAME = 0x2 -+ TIPC_ADDR_NAMESEQ = 0x1 -+ TIPC_CFG_SRV = 0x0 -+ TIPC_CLUSTER_BITS = 0xc -+ TIPC_CLUSTER_MASK = 0xfff000 -+ TIPC_CLUSTER_OFFSET = 0xc -+ TIPC_CLUSTER_SIZE = 0xfff -+ TIPC_CONN_SHUTDOWN = 0x5 -+ TIPC_CONN_TIMEOUT = 0x82 -+ TIPC_CRITICAL_IMPORTANCE = 0x3 -+ TIPC_DESTNAME = 0x3 -+ TIPC_DEST_DROPPABLE = 0x81 -+ TIPC_ERRINFO = 0x1 -+ TIPC_ERR_NO_NAME = 0x1 -+ TIPC_ERR_NO_NODE = 0x3 -+ TIPC_ERR_NO_PORT = 0x2 -+ TIPC_ERR_OVERLOAD = 0x4 -+ TIPC_GROUP_JOIN = 0x87 -+ TIPC_GROUP_LEAVE = 0x88 -+ TIPC_GROUP_LOOPBACK = 0x1 -+ TIPC_GROUP_MEMBER_EVTS = 0x2 -+ TIPC_HIGH_IMPORTANCE = 0x2 -+ TIPC_IMPORTANCE = 0x7f -+ TIPC_LINK_STATE = 0x2 -+ TIPC_LOW_IMPORTANCE = 0x0 -+ TIPC_MAX_BEARER_NAME = 0x20 -+ TIPC_MAX_IF_NAME = 0x10 -+ TIPC_MAX_LINK_NAME = 0x44 -+ TIPC_MAX_MEDIA_NAME = 0x10 -+ TIPC_MAX_USER_MSG_SIZE = 0x101d0 -+ TIPC_MCAST_BROADCAST = 0x85 -+ TIPC_MCAST_REPLICAST = 0x86 -+ TIPC_MEDIUM_IMPORTANCE = 0x1 -+ TIPC_NODEID_LEN = 0x10 -+ TIPC_NODE_BITS = 0xc -+ TIPC_NODE_MASK = 0xfff -+ TIPC_NODE_OFFSET = 0x0 -+ TIPC_NODE_RECVQ_DEPTH = 0x83 -+ TIPC_NODE_SIZE = 0xfff -+ TIPC_NODE_STATE = 0x0 -+ TIPC_OK = 0x0 -+ TIPC_PUBLISHED = 0x1 -+ TIPC_RESERVED_TYPES = 0x40 -+ TIPC_RETDATA = 0x2 -+ TIPC_SERVICE_ADDR = 0x2 -+ TIPC_SERVICE_RANGE = 0x1 -+ TIPC_SOCKET_ADDR = 0x3 -+ TIPC_SOCK_RECVQ_DEPTH = 0x84 -+ TIPC_SRC_DROPPABLE = 0x80 -+ TIPC_SUBSCR_TIMEOUT = 0x3 -+ TIPC_SUB_CANCEL = 0x4 -+ TIPC_SUB_PORTS = 0x1 -+ TIPC_SUB_SERVICE = 0x2 -+ TIPC_TOP_SRV = 0x1 -+ TIPC_WAIT_FOREVER = 0xffffffff -+ TIPC_WITHDRAWN = 0x2 -+ TIPC_ZONE_BITS = 0x8 -+ TIPC_ZONE_CLUSTER_MASK = 0xfffff000 -+ TIPC_ZONE_MASK = 0xff000000 -+ TIPC_ZONE_OFFSET = 0x18 -+ TIPC_ZONE_SCOPE = 0x1 -+ TIPC_ZONE_SIZE = 0xff -+ TMPFS_MAGIC = 0x1021994 -+ TOSTOP = 0x400000 -+ TPACKET_ALIGNMENT = 0x10 -+ TPACKET_HDRLEN = 0x34 -+ TP_STATUS_AVAILABLE = 0x0 -+ TP_STATUS_BLK_TMO = 0x20 -+ TP_STATUS_COPY = 0x2 -+ TP_STATUS_CSUMNOTREADY = 0x8 -+ TP_STATUS_CSUM_VALID = 0x80 -+ TP_STATUS_KERNEL = 0x0 -+ TP_STATUS_LOSING = 0x4 -+ TP_STATUS_SENDING = 0x2 -+ TP_STATUS_SEND_REQUEST = 0x1 -+ TP_STATUS_TS_RAW_HARDWARE = -0x80000000 -+ TP_STATUS_TS_SOFTWARE = 0x20000000 -+ TP_STATUS_TS_SYS_HARDWARE = 0x40000000 -+ TP_STATUS_USER = 0x1 -+ TP_STATUS_VLAN_TPID_VALID = 0x40 -+ TP_STATUS_VLAN_VALID = 0x10 -+ TP_STATUS_WRONG_FORMAT = 0x4 -+ TRACEFS_MAGIC = 0x74726163 -+ TS_COMM_LEN = 0x20 -+ TUNATTACHFILTER = 0x801054d5 -+ TUNDETACHFILTER = 0x801054d6 -+ TUNGETFEATURES = 0x400454cf -+ TUNGETFILTER = 0x401054db -+ TUNGETIFF = 0x400454d2 -+ TUNGETSNDBUF = 0x400454d3 -+ TUNGETVNETBE = 0x400454df -+ TUNGETVNETHDRSZ = 0x400454d7 -+ TUNGETVNETLE = 0x400454dd -+ TUNSETDEBUG = 0x800454c9 -+ TUNSETFILTEREBPF = 0x400454e1 -+ TUNSETGROUP = 0x800454ce -+ TUNSETIFF = 0x800454ca -+ TUNSETIFINDEX = 0x800454da -+ TUNSETLINK = 0x800454cd -+ TUNSETNOCSUM = 0x800454c8 -+ TUNSETOFFLOAD = 0x800454d0 -+ TUNSETOWNER = 0x800454cc -+ TUNSETPERSIST = 0x800454cb -+ TUNSETQUEUE = 0x800454d9 -+ TUNSETSNDBUF = 0x800454d4 -+ TUNSETSTEERINGEBPF = 0x400454e0 -+ TUNSETTXFILTER = 0x800454d1 -+ TUNSETVNETBE = 0x800454de -+ TUNSETVNETHDRSZ = 0x800454d8 -+ TUNSETVNETLE = 0x800454dc -+ UBI_IOCATT = 0x80186f40 -+ UBI_IOCDET = 0x80046f41 -+ UBI_IOCEBCH = 0x80044f02 -+ UBI_IOCEBER = 0x80044f01 -+ UBI_IOCEBISMAP = 0x40044f05 -+ UBI_IOCEBMAP = 0x80084f03 -+ UBI_IOCEBUNMAP = 0x80044f04 -+ UBI_IOCMKVOL = 0x80986f00 -+ UBI_IOCRMVOL = 0x80046f01 -+ UBI_IOCRNVOL = 0x91106f03 -+ UBI_IOCRSVOL = 0x800c6f02 -+ UBI_IOCSETVOLPROP = 0x80104f06 -+ UBI_IOCVOLCRBLK = 0x80804f07 -+ UBI_IOCVOLRMBLK = 0x20004f08 -+ UBI_IOCVOLUP = 0x80084f00 -+ UDF_SUPER_MAGIC = 0x15013346 -+ UMOUNT_NOFOLLOW = 0x8 -+ USBDEVICE_SUPER_MAGIC = 0x9fa2 -+ UTIME_NOW = 0x3fffffff -+ UTIME_OMIT = 0x3ffffffe -+ V9FS_MAGIC = 0x1021997 -+ VDISCARD = 0xf -+ VEOF = 0x0 -+ VEOL = 0x1 -+ VEOL2 = 0x2 -+ VERASE = 0x3 -+ VINTR = 0x8 -+ VKILL = 0x5 -+ VLNEXT = 0xe -+ VMADDR_CID_ANY = 0xffffffff -+ VMADDR_CID_HOST = 0x2 -+ VMADDR_CID_HYPERVISOR = 0x0 -+ VMADDR_CID_RESERVED = 0x1 -+ VMADDR_PORT_ANY = 0xffffffff -+ VMIN = 0x10 -+ VM_SOCKETS_INVALID_VERSION = 0xffffffff -+ VQUIT = 0x9 -+ VREPRINT = 0x6 -+ VSTART = 0xc -+ VSTOP = 0xd -+ VSUSP = 0xa -+ VSWTC = 0x7 -+ VT0 = 0x0 -+ VT1 = 0x10000 -+ VTDLY = 0x10000 -+ VTIME = 0x11 -+ VWERASE = 0x4 -+ WALL = 0x40000000 -+ WCLONE = 0x80000000 -+ WCONTINUED = 0x8 -+ WDIOC_GETBOOTSTATUS = 0x40045702 -+ WDIOC_GETPRETIMEOUT = 0x40045709 -+ WDIOC_GETSTATUS = 0x40045701 -+ WDIOC_GETSUPPORT = 0x40285700 -+ WDIOC_GETTEMP = 0x40045703 -+ WDIOC_GETTIMELEFT = 0x4004570a -+ WDIOC_GETTIMEOUT = 0x40045707 -+ WDIOC_KEEPALIVE = 0x40045705 -+ WDIOC_SETOPTIONS = 0x40045704 -+ WDIOC_SETPRETIMEOUT = 0xc0045708 -+ WDIOC_SETTIMEOUT = 0xc0045706 -+ WDIOF_ALARMONLY = 0x400 -+ WDIOF_CARDRESET = 0x20 -+ WDIOF_EXTERN1 = 0x4 -+ WDIOF_EXTERN2 = 0x8 -+ WDIOF_FANFAULT = 0x2 -+ WDIOF_KEEPALIVEPING = 0x8000 -+ WDIOF_MAGICCLOSE = 0x100 -+ WDIOF_OVERHEAT = 0x1 -+ WDIOF_POWEROVER = 0x40 -+ WDIOF_POWERUNDER = 0x10 -+ WDIOF_PRETIMEOUT = 0x200 -+ WDIOF_SETTIMEOUT = 0x80 -+ WDIOF_UNKNOWN = -0x1 -+ WDIOS_DISABLECARD = 0x1 -+ WDIOS_ENABLECARD = 0x2 -+ WDIOS_TEMPPANIC = 0x4 -+ WDIOS_UNKNOWN = -0x1 -+ WEXITED = 0x4 -+ WIN_ACKMEDIACHANGE = 0xdb -+ WIN_CHECKPOWERMODE1 = 0xe5 -+ WIN_CHECKPOWERMODE2 = 0x98 -+ WIN_DEVICE_RESET = 0x8 -+ WIN_DIAGNOSE = 0x90 -+ WIN_DOORLOCK = 0xde -+ WIN_DOORUNLOCK = 0xdf -+ WIN_DOWNLOAD_MICROCODE = 0x92 -+ WIN_FLUSH_CACHE = 0xe7 -+ WIN_FLUSH_CACHE_EXT = 0xea -+ WIN_FORMAT = 0x50 -+ WIN_GETMEDIASTATUS = 0xda -+ WIN_IDENTIFY = 0xec -+ WIN_IDENTIFY_DMA = 0xee -+ WIN_IDLEIMMEDIATE = 0xe1 -+ WIN_INIT = 0x60 -+ WIN_MEDIAEJECT = 0xed -+ WIN_MULTREAD = 0xc4 -+ WIN_MULTREAD_EXT = 0x29 -+ WIN_MULTWRITE = 0xc5 -+ WIN_MULTWRITE_EXT = 0x39 -+ WIN_NOP = 0x0 -+ WIN_PACKETCMD = 0xa0 -+ WIN_PIDENTIFY = 0xa1 -+ WIN_POSTBOOT = 0xdc -+ WIN_PREBOOT = 0xdd -+ WIN_QUEUED_SERVICE = 0xa2 -+ WIN_READ = 0x20 -+ WIN_READDMA = 0xc8 -+ WIN_READDMA_EXT = 0x25 -+ WIN_READDMA_ONCE = 0xc9 -+ WIN_READDMA_QUEUED = 0xc7 -+ WIN_READDMA_QUEUED_EXT = 0x26 -+ WIN_READ_BUFFER = 0xe4 -+ WIN_READ_EXT = 0x24 -+ WIN_READ_LONG = 0x22 -+ WIN_READ_LONG_ONCE = 0x23 -+ WIN_READ_NATIVE_MAX = 0xf8 -+ WIN_READ_NATIVE_MAX_EXT = 0x27 -+ WIN_READ_ONCE = 0x21 -+ WIN_RECAL = 0x10 -+ WIN_RESTORE = 0x10 -+ WIN_SECURITY_DISABLE = 0xf6 -+ WIN_SECURITY_ERASE_PREPARE = 0xf3 -+ WIN_SECURITY_ERASE_UNIT = 0xf4 -+ WIN_SECURITY_FREEZE_LOCK = 0xf5 -+ WIN_SECURITY_SET_PASS = 0xf1 -+ WIN_SECURITY_UNLOCK = 0xf2 -+ WIN_SEEK = 0x70 -+ WIN_SETFEATURES = 0xef -+ WIN_SETIDLE1 = 0xe3 -+ WIN_SETIDLE2 = 0x97 -+ WIN_SETMULT = 0xc6 -+ WIN_SET_MAX = 0xf9 -+ WIN_SET_MAX_EXT = 0x37 -+ WIN_SLEEPNOW1 = 0xe6 -+ WIN_SLEEPNOW2 = 0x99 -+ WIN_SMART = 0xb0 -+ WIN_SPECIFY = 0x91 -+ WIN_SRST = 0x8 -+ WIN_STANDBY = 0xe2 -+ WIN_STANDBY2 = 0x96 -+ WIN_STANDBYNOW1 = 0xe0 -+ WIN_STANDBYNOW2 = 0x94 -+ WIN_VERIFY = 0x40 -+ WIN_VERIFY_EXT = 0x42 -+ WIN_VERIFY_ONCE = 0x41 -+ WIN_WRITE = 0x30 -+ WIN_WRITEDMA = 0xca -+ WIN_WRITEDMA_EXT = 0x35 -+ WIN_WRITEDMA_ONCE = 0xcb -+ WIN_WRITEDMA_QUEUED = 0xcc -+ WIN_WRITEDMA_QUEUED_EXT = 0x36 -+ WIN_WRITE_BUFFER = 0xe8 -+ WIN_WRITE_EXT = 0x34 -+ WIN_WRITE_LONG = 0x32 -+ WIN_WRITE_LONG_ONCE = 0x33 -+ WIN_WRITE_ONCE = 0x31 -+ WIN_WRITE_SAME = 0xe9 -+ WIN_WRITE_VERIFY = 0x3c -+ WNOHANG = 0x1 -+ WNOTHREAD = 0x20000000 -+ WNOWAIT = 0x1000000 -+ WORDSIZE = 0x40 -+ WSTOPPED = 0x2 -+ WUNTRACED = 0x2 -+ XATTR_CREATE = 0x1 -+ XATTR_REPLACE = 0x2 -+ XCASE = 0x4000 -+ XDP_COPY = 0x2 -+ XDP_FLAGS_DRV_MODE = 0x4 -+ XDP_FLAGS_HW_MODE = 0x8 -+ XDP_FLAGS_MASK = 0xf -+ XDP_FLAGS_MODES = 0xe -+ XDP_FLAGS_SKB_MODE = 0x2 -+ XDP_FLAGS_UPDATE_IF_NOEXIST = 0x1 -+ XDP_MMAP_OFFSETS = 0x1 -+ XDP_PACKET_HEADROOM = 0x100 -+ XDP_PGOFF_RX_RING = 0x0 -+ XDP_PGOFF_TX_RING = 0x80000000 -+ XDP_RX_RING = 0x2 -+ XDP_SHARED_UMEM = 0x1 -+ XDP_STATISTICS = 0x7 -+ XDP_TX_RING = 0x3 -+ XDP_UMEM_COMPLETION_RING = 0x6 -+ XDP_UMEM_FILL_RING = 0x5 -+ XDP_UMEM_PGOFF_COMPLETION_RING = 0x180000000 -+ XDP_UMEM_PGOFF_FILL_RING = 0x100000000 -+ XDP_UMEM_REG = 0x4 -+ XDP_ZEROCOPY = 0x4 -+ XENFS_SUPER_MAGIC = 0xabba1974 -+ XTABS = 0x40000 -+ ZSMALLOC_MAGIC = 0x58295829 -+ _HIDIOCGRAWNAME = 0x40804804 -+ _HIDIOCGRAWNAME_LEN = 0x80 -+ _HIDIOCGRAWPHYS = 0x40404805 -+ _HIDIOCGRAWPHYS_LEN = 0x40 -+ //_HIDIOCGRAWUNIQ = _Cmacro__HIDIOCGRAWUNIQ() //TODO:unsupported -+ _HIDIOCGRAWUNIQ_LEN = 0x40 -+) -+ -+// Errors -+const ( -+ E2BIG = syscall.Errno(0x7) -+ EACCES = syscall.Errno(0xd) -+ EADDRINUSE = syscall.Errno(0x30) -+ EADDRNOTAVAIL = syscall.Errno(0x31) -+ EADV = syscall.Errno(0x6b) -+ EAFNOSUPPORT = syscall.Errno(0x2f) -+ EAGAIN = syscall.Errno(0x23) -+ EALREADY = syscall.Errno(0x25) -+ EBADE = syscall.Errno(0x61) -+ EBADF = syscall.Errno(0x9) -+ EBADFD = syscall.Errno(0x72) -+ EBADMSG = syscall.Errno(0x54) -+ EBADR = syscall.Errno(0x62) -+ EBADRQC = syscall.Errno(0x65) -+ EBADSLT = syscall.Errno(0x66) -+ EBFONT = syscall.Errno(0x68) -+ EBUSY = syscall.Errno(0x10) -+ ECANCELED = syscall.Errno(0x83) -+ ECHILD = syscall.Errno(0xa) -+ ECHRNG = syscall.Errno(0x58) -+ ECOMM = syscall.Errno(0x6d) -+ ECONNABORTED = syscall.Errno(0x35) -+ ECONNREFUSED = syscall.Errno(0x3d) -+ ECONNRESET = syscall.Errno(0x36) -+ EDEADLK = syscall.Errno(0xb) -+ EDEADLOCK = syscall.Errno(0xb) -+ EDESTADDRREQ = syscall.Errno(0x27) -+ EDOM = syscall.Errno(0x21) -+ EDOTDOT = syscall.Errno(0x6f) -+ EDQUOT = syscall.Errno(0x45) -+ EEXIST = syscall.Errno(0x11) -+ EFAULT = syscall.Errno(0xe) -+ EFBIG = syscall.Errno(0x1b) -+ EHOSTDOWN = syscall.Errno(0x40) -+ EHOSTUNREACH = syscall.Errno(0x41) -+ EHWPOISON = syscall.Errno(0x8b) -+ EIDRM = syscall.Errno(0x51) -+ EILSEQ = syscall.Errno(0x74) -+ EINPROGRESS = syscall.Errno(0x24) -+ EINTR = syscall.Errno(0x4) -+ EINVAL = syscall.Errno(0x16) -+ EIO = syscall.Errno(0x5) -+ EISCONN = syscall.Errno(0x38) -+ EISDIR = syscall.Errno(0x15) -+ EISNAM = syscall.Errno(0x78) -+ EKEYEXPIRED = syscall.Errno(0x85) -+ EKEYREJECTED = syscall.Errno(0x87) -+ EKEYREVOKED = syscall.Errno(0x86) -+ EL2HLT = syscall.Errno(0x60) -+ EL2NSYNC = syscall.Errno(0x59) -+ EL3HLT = syscall.Errno(0x5a) -+ EL3RST = syscall.Errno(0x5b) -+ ELIBACC = syscall.Errno(0x7a) -+ ELIBBAD = syscall.Errno(0x7b) -+ ELIBEXEC = syscall.Errno(0x7e) -+ ELIBMAX = syscall.Errno(0x7d) -+ ELIBSCN = syscall.Errno(0x7c) -+ ELNRNG = syscall.Errno(0x5d) -+ ELOOP = syscall.Errno(0x3e) -+ EMEDIUMTYPE = syscall.Errno(0x82) -+ EMFILE = syscall.Errno(0x18) -+ EMLINK = syscall.Errno(0x1f) -+ EMSGSIZE = syscall.Errno(0x28) -+ EMULTIHOP = syscall.Errno(0x6e) -+ ENAMETOOLONG = syscall.Errno(0x3f) -+ ENAVAIL = syscall.Errno(0x77) -+ ENETDOWN = syscall.Errno(0x32) -+ ENETRESET = syscall.Errno(0x34) -+ ENETUNREACH = syscall.Errno(0x33) -+ ENFILE = syscall.Errno(0x17) -+ ENOANO = syscall.Errno(0x64) -+ ENOBUFS = syscall.Errno(0x37) -+ ENOCSI = syscall.Errno(0x5f) -+ ENODATA = syscall.Errno(0x56) -+ ENODEV = syscall.Errno(0x13) -+ ENOENT = syscall.Errno(0x2) -+ ENOEXEC = syscall.Errno(0x8) -+ ENOKEY = syscall.Errno(0x84) -+ ENOLCK = syscall.Errno(0x4d) -+ ENOLINK = syscall.Errno(0x6a) -+ ENOMEDIUM = syscall.Errno(0x81) -+ ENOMEM = syscall.Errno(0xc) -+ ENOMSG = syscall.Errno(0x50) -+ ENONET = syscall.Errno(0x69) -+ ENOPKG = syscall.Errno(0x5c) -+ ENOPROTOOPT = syscall.Errno(0x2a) -+ ENOSPC = syscall.Errno(0x1c) -+ ENOSR = syscall.Errno(0x52) -+ ENOSTR = syscall.Errno(0x57) -+ ENOSYS = syscall.Errno(0x4e) -+ ENOTBLK = syscall.Errno(0xf) -+ ENOTCONN = syscall.Errno(0x39) -+ ENOTDIR = syscall.Errno(0x14) -+ ENOTEMPTY = syscall.Errno(0x42) -+ ENOTNAM = syscall.Errno(0x76) -+ ENOTRECOVERABLE = syscall.Errno(0x89) -+ ENOTSOCK = syscall.Errno(0x26) -+ ENOTSUP = syscall.Errno(0x2d) -+ ENOTTY = syscall.Errno(0x19) -+ ENOTUNIQ = syscall.Errno(0x71) -+ ENXIO = syscall.Errno(0x6) -+ EOPNOTSUPP = syscall.Errno(0x2d) -+ EOVERFLOW = syscall.Errno(0x70) -+ EOWNERDEAD = syscall.Errno(0x88) -+ EPERM = syscall.Errno(0x1) -+ EPFNOSUPPORT = syscall.Errno(0x2e) -+ EPIPE = syscall.Errno(0x20) -+ EPROTO = syscall.Errno(0x55) -+ EPROTONOSUPPORT = syscall.Errno(0x2b) -+ EPROTOTYPE = syscall.Errno(0x29) -+ ERANGE = syscall.Errno(0x22) -+ EREMCHG = syscall.Errno(0x73) -+ EREMOTE = syscall.Errno(0x47) -+ EREMOTEIO = syscall.Errno(0x79) -+ ERESTART = syscall.Errno(0x7f) -+ ERFKILL = syscall.Errno(0x8a) -+ EROFS = syscall.Errno(0x1e) -+ ESHUTDOWN = syscall.Errno(0x3a) -+ ESOCKTNOSUPPORT = syscall.Errno(0x2c) -+ ESPIPE = syscall.Errno(0x1d) -+ ESRCH = syscall.Errno(0x3) -+ ESRMNT = syscall.Errno(0x6c) -+ ESTALE = syscall.Errno(0x46) -+ ESTRPIPE = syscall.Errno(0x80) -+ ETIME = syscall.Errno(0x53) -+ ETIMEDOUT = syscall.Errno(0x3c) -+ ETOOMANYREFS = syscall.Errno(0x3b) -+ ETXTBSY = syscall.Errno(0x1a) -+ EUCLEAN = syscall.Errno(0x75) -+ EUNATCH = syscall.Errno(0x5e) -+ EUSERS = syscall.Errno(0x44) -+ EWOULDBLOCK = syscall.Errno(0x23) -+ EXDEV = syscall.Errno(0x12) -+ EXFULL = syscall.Errno(0x63) -+) -+ -+// Signals -+const ( -+ SIGABRT = syscall.Signal(0x6) -+ SIGALRM = syscall.Signal(0xe) -+ SIGBUS = syscall.Signal(0xa) -+ SIGCHLD = syscall.Signal(0x14) -+ SIGCLD = syscall.Signal(0x14) -+ SIGCONT = syscall.Signal(0x13) -+ SIGEMT = syscall.Signal(0x7) -+ SIGFPE = syscall.Signal(0x8) -+ SIGHUP = syscall.Signal(0x1) -+ SIGILL = syscall.Signal(0x4) -+ SIGINFO = syscall.Signal(0x1d) -+ SIGINT = syscall.Signal(0x2) -+ SIGIO = syscall.Signal(0x17) -+ SIGIOT = syscall.Signal(0x6) -+ SIGKILL = syscall.Signal(0x9) -+ SIGPIPE = syscall.Signal(0xd) -+ SIGPOLL = syscall.Signal(0x17) -+ SIGPROF = syscall.Signal(0x1b) -+ SIGPWR = syscall.Signal(0x1d) -+ SIGQUIT = syscall.Signal(0x3) -+ SIGSEGV = syscall.Signal(0xb) -+ SIGSTOP = syscall.Signal(0x11) -+ SIGSYS = syscall.Signal(0xc) -+ SIGTERM = syscall.Signal(0xf) -+ SIGTRAP = syscall.Signal(0x5) -+ SIGTSTP = syscall.Signal(0x12) -+ SIGTTIN = syscall.Signal(0x15) -+ SIGTTOU = syscall.Signal(0x16) -+ SIGURG = syscall.Signal(0x10) -+ SIGUSR1 = syscall.Signal(0x1e) -+ SIGUSR2 = syscall.Signal(0x1f) -+ SIGVTALRM = syscall.Signal(0x1a) -+ SIGWINCH = syscall.Signal(0x1c) -+ SIGXCPU = syscall.Signal(0x18) -+ SIGXFSZ = syscall.Signal(0x19) -+) -+ -+// Error table -+var errorList = [...]struct { -+ num syscall.Errno -+ name string -+ desc string -+}{ -+ {1, "EPERM", "operation not permitted"}, -+ {2, "ENOENT", "no such file or directory"}, -+ {3, "ESRCH", "no such process"}, -+ {4, "EINTR", "interrupted system call"}, -+ {5, "EIO", "input/output error"}, -+ {6, "ENXIO", "no such device or address"}, -+ {7, "E2BIG", "argument list too long"}, -+ {8, "ENOEXEC", "exec format error"}, -+ {9, "EBADF", "bad file descriptor"}, -+ {10, "ECHILD", "no child processes"}, -+ {11, "EDEADLK", "resource deadlock avoided"}, -+ {12, "ENOMEM", "cannot allocate memory"}, -+ {13, "EACCES", "permission denied"}, -+ {14, "EFAULT", "bad address"}, -+ {15, "ENOTBLK", "block device required"}, -+ {16, "EBUSY", "device or resource busy"}, -+ {17, "EEXIST", "file exists"}, -+ {18, "EXDEV", "invalid cross-device link"}, -+ {19, "ENODEV", "no such device"}, -+ {20, "ENOTDIR", "not a directory"}, -+ {21, "EISDIR", "is a directory"}, -+ {22, "EINVAL", "invalid argument"}, -+ {23, "ENFILE", "too many open files in system"}, -+ {24, "EMFILE", "too many open files"}, -+ {25, "ENOTTY", "inappropriate ioctl for device"}, -+ {26, "ETXTBSY", "text file busy"}, -+ {27, "EFBIG", "file too large"}, -+ {28, "ENOSPC", "no space left on device"}, -+ {29, "ESPIPE", "illegal seek"}, -+ {30, "EROFS", "read-only file system"}, -+ {31, "EMLINK", "too many links"}, -+ {32, "EPIPE", "broken pipe"}, -+ {33, "EDOM", "numerical argument out of domain"}, -+ {34, "ERANGE", "numerical result out of range"}, -+ {35, "EAGAIN", "resource temporarily unavailable"}, -+ {36, "EINPROGRESS", "operation now in progress"}, -+ {37, "EALREADY", "operation already in progress"}, -+ {38, "ENOTSOCK", "socket operation on non-socket"}, -+ {39, "EDESTADDRREQ", "destination address required"}, -+ {40, "EMSGSIZE", "message too long"}, -+ {41, "EPROTOTYPE", "protocol wrong type for socket"}, -+ {42, "ENOPROTOOPT", "protocol not available"}, -+ {43, "EPROTONOSUPPORT", "protocol not supported"}, -+ {44, "ESOCKTNOSUPPORT", "socket type not supported"}, -+ {45, "ENOTSUP", "operation not supported"}, -+ {46, "EPFNOSUPPORT", "protocol family not supported"}, -+ {47, "EAFNOSUPPORT", "address family not supported by protocol"}, -+ {48, "EADDRINUSE", "address already in use"}, -+ {49, "EADDRNOTAVAIL", "cannot assign requested address"}, -+ {50, "ENETDOWN", "network is down"}, -+ {51, "ENETUNREACH", "network is unreachable"}, -+ {52, "ENETRESET", "network dropped connection on reset"}, -+ {53, "ECONNABORTED", "software caused connection abort"}, -+ {54, "ECONNRESET", "connection reset by peer"}, -+ {55, "ENOBUFS", "no buffer space available"}, -+ {56, "EISCONN", "transport endpoint is already connected"}, -+ {57, "ENOTCONN", "transport endpoint is not connected"}, -+ {58, "ESHUTDOWN", "cannot send after transport endpoint shutdown"}, -+ {59, "ETOOMANYREFS", "too many references: cannot splice"}, -+ {60, "ETIMEDOUT", "connection timed out"}, -+ {61, "ECONNREFUSED", "connection refused"}, -+ {62, "ELOOP", "too many levels of symbolic links"}, -+ {63, "ENAMETOOLONG", "file name too long"}, -+ {64, "EHOSTDOWN", "host is down"}, -+ {65, "EHOSTUNREACH", "no route to host"}, -+ {66, "ENOTEMPTY", "directory not empty"}, -+ {68, "EUSERS", "too many users"}, -+ {69, "EDQUOT", "disk quota exceeded"}, -+ {70, "ESTALE", "stale file handle"}, -+ {71, "EREMOTE", "object is remote"}, -+ {77, "ENOLCK", "no locks available"}, -+ {78, "ENOSYS", "function not implemented"}, -+ {80, "ENOMSG", "no message of desired type"}, -+ {81, "EIDRM", "identifier removed"}, -+ {82, "ENOSR", "out of streams resources"}, -+ {83, "ETIME", "timer expired"}, -+ {84, "EBADMSG", "bad message"}, -+ {85, "EPROTO", "protocol error"}, -+ {86, "ENODATA", "no data available"}, -+ {87, "ENOSTR", "device not a stream"}, -+ {88, "ECHRNG", "channel number out of range"}, -+ {89, "EL2NSYNC", "level 2 not synchronized"}, -+ {90, "EL3HLT", "level 3 halted"}, -+ {91, "EL3RST", "level 3 reset"}, -+ {92, "ENOPKG", "package not installed"}, -+ {93, "ELNRNG", "link number out of range"}, -+ {94, "EUNATCH", "protocol driver not attached"}, -+ {95, "ENOCSI", "no CSI structure available"}, -+ {96, "EL2HLT", "level 2 halted"}, -+ {97, "EBADE", "invalid exchange"}, -+ {98, "EBADR", "invalid request descriptor"}, -+ {99, "EXFULL", "exchange full"}, -+ {100, "ENOANO", "no anode"}, -+ {101, "EBADRQC", "invalid request code"}, -+ {102, "EBADSLT", "invalid slot"}, -+ {104, "EBFONT", "bad font file format"}, -+ {105, "ENONET", "machine is not on the network"}, -+ {106, "ENOLINK", "link has been severed"}, -+ {107, "EADV", "advertise error"}, -+ {108, "ESRMNT", "srmount error"}, -+ {109, "ECOMM", "communication error on send"}, -+ {110, "EMULTIHOP", "multihop attempted"}, -+ {111, "EDOTDOT", "RFS specific error"}, -+ {112, "EOVERFLOW", "value too large for defined data type"}, -+ {113, "ENOTUNIQ", "name not unique on network"}, -+ {114, "EBADFD", "file descriptor in bad state"}, -+ {115, "EREMCHG", "remote address changed"}, -+ {116, "EILSEQ", "invalid or incomplete multibyte or wide character"}, -+ {117, "EUCLEAN", "structure needs cleaning"}, -+ {118, "ENOTNAM", "not a XENIX named type file"}, -+ {119, "ENAVAIL", "no XENIX semaphores available"}, -+ {120, "EISNAM", "is a named type file"}, -+ {121, "EREMOTEIO", "remote I/O error"}, -+ {122, "ELIBACC", "can not access a needed shared library"}, -+ {123, "ELIBBAD", "accessing a corrupted shared library"}, -+ {124, "ELIBSCN", ".lib section in a.out corrupted"}, -+ {125, "ELIBMAX", "attempting to link in too many shared libraries"}, -+ {126, "ELIBEXEC", "cannot exec a shared library directly"}, -+ {127, "ERESTART", "interrupted system call should be restarted"}, -+ {128, "ESTRPIPE", "streams pipe error"}, -+ {129, "ENOMEDIUM", "no medium found"}, -+ {130, "EMEDIUMTYPE", "wrong medium type"}, -+ {131, "ECANCELED", "operation canceled"}, -+ {132, "ENOKEY", "required key not available"}, -+ {133, "EKEYEXPIRED", "key has expired"}, -+ {134, "EKEYREVOKED", "key has been revoked"}, -+ {135, "EKEYREJECTED", "key was rejected by service"}, -+ {136, "EOWNERDEAD", "owner died"}, -+ {137, "ENOTRECOVERABLE", "state not recoverable"}, -+ {138, "ERFKILL", "operation not possible due to RF-kill"}, -+ {139, "EHWPOISON", "memory page has hardware error"}, -+} -+ -+// Signal table -+var signalList = [...]struct { -+ num syscall.Signal -+ name string -+ desc string -+}{ -+ {1, "SIGHUP", "hangup"}, -+ {2, "SIGINT", "interrupt"}, -+ {3, "SIGQUIT", "quit"}, -+ {4, "SIGILL", "illegal instruction"}, -+ {5, "SIGTRAP", "trace/breakpoint trap"}, -+ {6, "SIGABRT", "aborted"}, -+ {7, "SIGEMT", "EMT trap"}, -+ {8, "SIGFPE", "floating point exception"}, -+ {9, "SIGKILL", "killed"}, -+ {10, "SIGBUS", "bus error"}, -+ {11, "SIGSEGV", "segmentation fault"}, -+ {12, "SIGSYS", "bad system call"}, -+ {13, "SIGPIPE", "broken pipe"}, -+ {14, "SIGALRM", "alarm clock"}, -+ {15, "SIGTERM", "terminated"}, -+ {16, "SIGURG", "urgent I/O condition"}, -+ {17, "SIGSTOP", "stopped (signal)"}, -+ {18, "SIGTSTP", "stopped"}, -+ {19, "SIGCONT", "continued"}, -+ {20, "SIGCHLD", "child exited"}, -+ {21, "SIGTTIN", "stopped (tty input)"}, -+ {22, "SIGTTOU", "stopped (tty output)"}, -+ {23, "SIGIO", "I/O possible"}, -+ {24, "SIGXCPU", "CPU time limit exceeded"}, -+ {25, "SIGXFSZ", "file size limit exceeded"}, -+ {26, "SIGVTALRM", "virtual timer expired"}, -+ {27, "SIGPROF", "profiling timer expired"}, -+ {28, "SIGWINCH", "window changed"}, -+ {29, "SIGINFO", "power failure"}, -+ {30, "SIGUSR1", "user defined signal 1"}, -+ {31, "SIGUSR2", "user defined signal 2"}, -+} -diff -Naur etcd-3.4.14.org/vendor/golang.org/x/sys/unix/zsyscall_linux_sw64.go etcd-3.4.14.sw/vendor/golang.org/x/sys/unix/zsyscall_linux_sw64.go ---- etcd-3.4.14.org/vendor/golang.org/x/sys/unix/zsyscall_linux_sw64.go 1970-01-01 08:00:00.000000000 +0800 -+++ etcd-3.4.14.sw/vendor/golang.org/x/sys/unix/zsyscall_linux_sw64.go 2022-09-16 15:17:54.150000000 +0800 -@@ -0,0 +1,2648 @@ -+// go run mksyscall.go -tags linux,sw64 syscall_linux.go syscall_linux_sw64.go -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build linux && sw64 -+// +build linux,sw64 -+ -+package unix -+ -+import ( -+ "syscall" -+ "unsafe" -+) -+ -+var _ syscall.Errno -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) { -+ r0, _, e1 := Syscall(SYS_FANOTIFY_INIT, uintptr(flags), uintptr(event_f_flags), 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) { -+ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func fchmodat(dirfd int, path string, mode uint32) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func ioctl(fd int, req uint, arg uintptr) (err error) { -+ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(oldpath) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(newpath) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func openat2(dirfd int, path string, open_how *OpenHow, size int) (fd int, err error) { -+ print("sw64 unsupport on linux 4.19 SYS_OPENAT2") //TODO -+ // var _p0 *byte -+ // _p0, err = BytePtrFromString(path) -+ // if err != nil { -+ // return -+ // } -+ // r0, _, e1 := Syscall6(SYS_OPENAT2, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(open_how)), uintptr(size), 0, 0) -+ // fd = int(r0) -+ // if e1 != 0 { -+ // err = errnoErr(e1) -+ // } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) { -+ r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ var _p1 unsafe.Pointer -+ if len(buf) > 0 { -+ _p1 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p1 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(oldpath) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(newpath) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Unlinkat(dirfd int, path string, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getcwd(buf []byte) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(buf) > 0 { -+ _p0 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) { -+ r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) -+ wpid = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) { -+ r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0) -+ ret = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) { -+ var _p0 unsafe.Pointer -+ if len(buf) > 0 { -+ _p0 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0) -+ ret = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func keyctlJoin(cmd int, arg2 string) (ret int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(arg2) -+ if err != nil { -+ return -+ } -+ r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0) -+ ret = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(arg3) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(arg4) -+ if err != nil { -+ return -+ } -+ r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0) -+ ret = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) { -+ var _p0 unsafe.Pointer -+ if len(payload) > 0 { -+ _p0 = unsafe.Pointer(&payload[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) { -+ var _p0 unsafe.Pointer -+ if len(buf) > 0 { -+ _p0 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0) -+ ret = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(keyType) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(restriction) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func keyctlRestrictKeyring(cmd int, arg2 int) (err error) { -+ _, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) { -+ _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(arg) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(source) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(target) -+ if err != nil { -+ return -+ } -+ var _p2 *byte -+ _p2, err = BytePtrFromString(fstype) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Acct(path string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(keyType) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(description) -+ if err != nil { -+ return -+ } -+ var _p2 unsafe.Pointer -+ if len(payload) > 0 { -+ _p2 = unsafe.Pointer(&payload[0]) -+ } else { -+ _p2 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0) -+ id = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Adjtimex(buf *Timex) (state int, err error) { -+ r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0) -+ state = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Capget(hdr *CapUserHeader, data *CapUserData) (err error) { -+ _, _, e1 := RawSyscall(SYS_CAPGET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Capset(hdr *CapUserHeader, data *CapUserData) (err error) { -+ _, _, e1 := RawSyscall(SYS_CAPSET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Chdir(path string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Chroot(path string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func ClockGetres(clockid int32, res *Timespec) (err error) { -+ _, _, e1 := Syscall(SYS_CLOCK_GETRES, uintptr(clockid), uintptr(unsafe.Pointer(res)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func ClockGettime(clockid int32, time *Timespec) (err error) { -+ _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) { -+ _, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Close(fd int) (err error) { -+ _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func CloseRange(first uint, last uint, flags uint) (err error) { -+ println("sw64 unsupport on linux 4.19 SYS_CLOSE_RANGE") //TODO -+ // _, _, e1 := Syscall(SYS_CLOSE_RANGE, uintptr(first), uintptr(last), uintptr(flags)) -+ // if e1 != 0 { -+ // err = errnoErr(e1) -+ // } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) { -+ r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func DeleteModule(name string, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(name) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_DELETE_MODULE, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Dup(oldfd int) (fd int, err error) { -+ r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Dup3(oldfd int, newfd int, flags int) (err error) { -+ _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func EpollCreate1(flag int) (fd int, err error) { -+ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) { -+ _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Eventfd(initval uint, flags int) (fd int, err error) { -+ r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Exit(code int) { -+ SyscallNoError(SYS_EXIT_GROUP, uintptr(code), 0, 0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) { -+ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fchdir(fd int) (err error) { -+ _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fchmod(fd int, mode uint32) (err error) { -+ _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fdatasync(fd int) (err error) { -+ _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(attr) -+ if err != nil { -+ return -+ } -+ var _p1 unsafe.Pointer -+ if len(dest) > 0 { -+ _p1 = unsafe.Pointer(&dest[0]) -+ } else { -+ _p1 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), 0, 0) -+ sz = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func FinitModule(fd int, params string, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(params) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_FINIT_MODULE, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Flistxattr(fd int, dest []byte) (sz int, err error) { -+ var _p0 unsafe.Pointer -+ if len(dest) > 0 { -+ _p0 = unsafe.Pointer(&dest[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall(SYS_FLISTXATTR, uintptr(fd), uintptr(_p0), uintptr(len(dest))) -+ sz = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Flock(fd int, how int) (err error) { -+ _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fremovexattr(fd int, attr string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(attr) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fsetxattr(fd int, attr string, dest []byte, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(attr) -+ if err != nil { -+ return -+ } -+ var _p1 unsafe.Pointer -+ if len(dest) > 0 { -+ _p1 = unsafe.Pointer(&dest[0]) -+ } else { -+ _p1 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), uintptr(flags), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fsync(fd int) (err error) { -+ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getdents(fd int, buf []byte) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(buf) > 0 { -+ _p0 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf))) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getpgid(pid int) (pgid int, err error) { -+ r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0) -+ pgid = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+//func Getpid() (pid int) { -+// r0, _ := RawSyscallNoError(SYS_GETPID, 0, 0, 0) -+// pid = int(r0) -+// return -+//} -+// -+//// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+// -+//func Getppid() (ppid int) { -+// r0, _ := RawSyscallNoError(SYS_GETPPID, 0, 0, 0) -+// ppid = int(r0) -+// return -+//} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getpriority(which int, who int) (prio int, err error) { -+ r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0) -+ prio = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getrandom(buf []byte, flags int) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(buf) > 0 { -+ _p0 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getrusage(who int, rusage *Rusage) (err error) { -+ _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getsid(pid int) (sid int, err error) { -+ r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0) -+ sid = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Gettid() (tid int) { -+ r0, _ := RawSyscallNoError(SYS_GETTID, 0, 0, 0) -+ tid = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getxattr(path string, attr string, dest []byte) (sz int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(attr) -+ if err != nil { -+ return -+ } -+ var _p2 unsafe.Pointer -+ if len(dest) > 0 { -+ _p2 = unsafe.Pointer(&dest[0]) -+ } else { -+ _p2 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0) -+ sz = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func InitModule(moduleImage []byte, params string) (err error) { -+ var _p0 unsafe.Pointer -+ if len(moduleImage) > 0 { -+ _p0 = unsafe.Pointer(&moduleImage[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(params) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_INIT_MODULE, uintptr(_p0), uintptr(len(moduleImage)), uintptr(unsafe.Pointer(_p1))) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(pathname) -+ if err != nil { -+ return -+ } -+ r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask)) -+ watchdesc = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func InotifyInit1(flags int) (fd int, err error) { -+ r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) { -+ r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0) -+ success = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Kill(pid int, sig syscall.Signal) (err error) { -+ _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Klogctl(typ int, buf []byte) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(buf) > 0 { -+ _p0 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf))) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(attr) -+ if err != nil { -+ return -+ } -+ var _p2 unsafe.Pointer -+ if len(dest) > 0 { -+ _p2 = unsafe.Pointer(&dest[0]) -+ } else { -+ _p2 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0) -+ sz = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Listxattr(path string, dest []byte) (sz int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ var _p1 unsafe.Pointer -+ if len(dest) > 0 { -+ _p1 = unsafe.Pointer(&dest[0]) -+ } else { -+ _p1 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest))) -+ sz = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Llistxattr(path string, dest []byte) (sz int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ var _p1 unsafe.Pointer -+ if len(dest) > 0 { -+ _p1 = unsafe.Pointer(&dest[0]) -+ } else { -+ _p1 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest))) -+ sz = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Lremovexattr(path string, attr string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(attr) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Lsetxattr(path string, attr string, data []byte, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(attr) -+ if err != nil { -+ return -+ } -+ var _p2 unsafe.Pointer -+ if len(data) > 0 { -+ _p2 = unsafe.Pointer(&data[0]) -+ } else { -+ _p2 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func MemfdCreate(name string, flags int) (fd int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(name) -+ if err != nil { -+ return -+ } -+ r0, _, e1 := Syscall(SYS_MEMFD_CREATE, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Mkdirat(dirfd int, path string, mode uint32) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Nanosleep(time *Timespec, leftover *Timespec) (err error) { -+ _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func PerfEventOpen(attr *PerfEventAttr, pid int, cpu int, groupFd int, flags int) (fd int, err error) { -+ r0, _, e1 := Syscall6(SYS_PERF_EVENT_OPEN, uintptr(unsafe.Pointer(attr)), uintptr(pid), uintptr(cpu), uintptr(groupFd), uintptr(flags), 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func PivotRoot(newroot string, putold string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(newroot) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(putold) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) { -+ _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) { -+ _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) { -+ r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask))) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func read(fd int, p []byte) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p))) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Removexattr(path string, attr string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(attr) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(oldpath) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(newpath) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_RENAMEAT2, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(keyType) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(description) -+ if err != nil { -+ return -+ } -+ var _p2 *byte -+ _p2, err = BytePtrFromString(callback) -+ if err != nil { -+ return -+ } -+ r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0) -+ id = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setdomainname(p []byte) (err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Sethostname(p []byte) (err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setpgid(pid int, pgid int) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setsid() (pid int, err error) { -+ r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0) -+ pid = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Settimeofday(tv *Timeval) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setns(fd int, nstype int) (err error) { -+ _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setpriority(which int, who int, prio int) (err error) { -+ _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setxattr(path string, attr string, data []byte, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(attr) -+ if err != nil { -+ return -+ } -+ var _p2 unsafe.Pointer -+ if len(data) > 0 { -+ _p2 = unsafe.Pointer(&data[0]) -+ } else { -+ _p2 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) { -+ r0, _, e1 := Syscall6(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(sigmask)), uintptr(maskSize), uintptr(flags), 0, 0) -+ newfd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_STATX, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mask), uintptr(unsafe.Pointer(stat)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Sync() { -+ SyscallNoError(SYS_SYNC, 0, 0, 0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Syncfs(fd int) (err error) { -+ _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Sysinfo(info *Sysinfo_t) (err error) { -+ _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { -+ r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0) -+ n = int64(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func TimerfdCreate(clockid int, flags int) (fd int, err error) { -+ r0, _, e1 := RawSyscall(SYS_TIMERFD_CREATE, uintptr(clockid), uintptr(flags), 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func TimerfdGettime(fd int, currValue *ItimerSpec) (err error) { -+ _, _, e1 := RawSyscall(SYS_TIMERFD_GETTIME, uintptr(fd), uintptr(unsafe.Pointer(currValue)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func TimerfdSettime(fd int, flags int, newValue *ItimerSpec, oldValue *ItimerSpec) (err error) { -+ _, _, e1 := RawSyscall6(SYS_TIMERFD_SETTIME, uintptr(fd), uintptr(flags), uintptr(unsafe.Pointer(newValue)), uintptr(unsafe.Pointer(oldValue)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) { -+ _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Times(tms *Tms) (ticks uintptr, err error) { -+ r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0) -+ ticks = uintptr(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Umask(mask int) (oldmask int) { -+ r0, _ := RawSyscallNoError(SYS_UMASK, uintptr(mask), 0, 0) -+ oldmask = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Uname(buf *Utsname) (err error) { -+ _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Unmount(target string, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(target) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Unshare(flags int) (err error) { -+ _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func write(fd int, p []byte) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p))) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func exitThread(code int) (err error) { -+ _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func readlen(fd int, p *byte, np int) (n int, err error) { -+ r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func writelen(fd int, p *byte, np int) (n int, err error) { -+ r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func readv(fd int, iovs []Iovec) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(iovs) > 0 { -+ _p0 = unsafe.Pointer(&iovs[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall(SYS_READV, uintptr(fd), uintptr(_p0), uintptr(len(iovs))) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func writev(fd int, iovs []Iovec) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(iovs) > 0 { -+ _p0 = unsafe.Pointer(&iovs[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall(SYS_WRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs))) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(iovs) > 0 { -+ _p0 = unsafe.Pointer(&iovs[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_PREADV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(iovs) > 0 { -+ _p0 = unsafe.Pointer(&iovs[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_PWRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(iovs) > 0 { -+ _p0 = unsafe.Pointer(&iovs[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_PREADV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), uintptr(flags)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(iovs) > 0 { -+ _p0 = unsafe.Pointer(&iovs[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_PWRITEV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), uintptr(flags)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func munmap(addr uintptr, length uintptr) (err error) { -+ _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Madvise(b []byte, advice int) (err error) { -+ var _p0 unsafe.Pointer -+ if len(b) > 0 { -+ _p0 = unsafe.Pointer(&b[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Mprotect(b []byte, prot int) (err error) { -+ var _p0 unsafe.Pointer -+ if len(b) > 0 { -+ _p0 = unsafe.Pointer(&b[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Mlock(b []byte) (err error) { -+ var _p0 unsafe.Pointer -+ if len(b) > 0 { -+ _p0 = unsafe.Pointer(&b[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Mlockall(flags int) (err error) { -+ _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Msync(b []byte, flags int) (err error) { -+ var _p0 unsafe.Pointer -+ if len(b) > 0 { -+ _p0 = unsafe.Pointer(&b[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Munlock(b []byte) (err error) { -+ var _p0 unsafe.Pointer -+ if len(b) > 0 { -+ _p0 = unsafe.Pointer(&b[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Munlockall() (err error) { -+ _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func faccessat(dirfd int, path string, mode uint32) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Faccessat2(dirfd int, path string, mode uint32, flags int) (err error) { -+ print("sw64 unsupport on linux 4.19 SYS_FACCESSAT2") //TODO -+ // var _p0 *byte -+ // _p0, err = BytePtrFromString(path) -+ // if err != nil { -+ // return -+ // } -+ // _, _, e1 := Syscall6(SYS_FACCESSAT2, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -+ // if e1 != 0 { -+ // err = errnoErr(e1) -+ // } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(pathname) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_NAME_TO_HANDLE_AT, uintptr(dirFD), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(fh)), uintptr(unsafe.Pointer(mountID)), uintptr(flags), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) { -+ r0, _, e1 := Syscall(SYS_OPEN_BY_HANDLE_AT, uintptr(mountFD), uintptr(unsafe.Pointer(fh)), uintptr(flags)) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+//// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+// -+//func ProcessVMReadv(pid int, localIov []Iovec, remoteIov []RemoteIovec, flags uint) (n int, err error) { -+// var _p0 unsafe.Pointer -+// if len(localIov) > 0 { -+// _p0 = unsafe.Pointer(&localIov[0]) -+// } else { -+// _p0 = unsafe.Pointer(&_zero) -+// } -+// var _p1 unsafe.Pointer -+// if len(remoteIov) > 0 { -+// _p1 = unsafe.Pointer(&remoteIov[0]) -+// } else { -+// _p1 = unsafe.Pointer(&_zero) -+// } -+// r0, _, e1 := Syscall6(SYS_PROCESS_VM_READV, uintptr(pid), uintptr(_p0), uintptr(len(localIov)), uintptr(_p1), uintptr(len(remoteIov)), uintptr(flags)) -+// n = int(r0) -+// if e1 != 0 { -+// err = errnoErr(e1) -+// } -+// return -+//} -+// -+//// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+// -+//func ProcessVMWritev(pid int, localIov []Iovec, remoteIov []RemoteIovec, flags uint) (n int, err error) { -+// var _p0 unsafe.Pointer -+// if len(localIov) > 0 { -+// _p0 = unsafe.Pointer(&localIov[0]) -+// } else { -+// _p0 = unsafe.Pointer(&_zero) -+// } -+// var _p1 unsafe.Pointer -+// if len(remoteIov) > 0 { -+// _p1 = unsafe.Pointer(&remoteIov[0]) -+// } else { -+// _p1 = unsafe.Pointer(&_zero) -+// } -+// r0, _, e1 := Syscall6(SYS_PROCESS_VM_WRITEV, uintptr(pid), uintptr(_p0), uintptr(len(localIov)), uintptr(_p1), uintptr(len(remoteIov)), uintptr(flags)) -+// n = int(r0) -+// if e1 != 0 { -+// err = errnoErr(e1) -+// } -+// return -+//} -+// -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getxpid() (pid int, ppid int) { -+ r0, r1 := RawSyscallNoError(SYS_GETXPID, 0, 0, 0) -+ pid = int(r0) -+ ppid = int(r1) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Ustat(dev int, ubuf *Ustat_t) (err error) { -+ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func utimes(path string, times *[2]Timeval) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fstat64(fd int, st *Stat_t) (err error) { -+ _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(st)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Lstat64(path string, st *Stat_t) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(st)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Stat64(path string, st *Stat_t) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(st)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getxuid() (uid int, euid int) { -+ r0, r1 := SyscallNoError(SYS_GETXUID, 0, 0, 0) -+ uid = int(r0) -+ euid = int(r1) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getxgid() (gid int, egid int) { -+ r0, r1 := SyscallNoError(SYS_GETXGID, 0, 0, 0) -+ gid = int(r0) -+ egid = int(r1) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Statfs(path string, buf *Statfs_t) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fstatfs(fd int, buf *Statfs_t) (err error) { -+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(buf)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func dup2(oldfd int, newfd int) (err error) { -+ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fchown(fd int, uid int, gid int) (err error) { -+ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Ftruncate(fd int, length int64) (err error) { -+ _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getrlimit(resource int, rlim *Rlimit) (err error) { -+ _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Lchown(path string, uid int, gid int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Listen(s int, n int) (err error) { -+ _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(n), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Pread(fd int, p []byte, offset int64) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_PREAD64, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_PWRITE64, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Seek(fd int, offset int64, whence int) (off int64, err error) { -+ r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence)) -+ off = int64(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) { -+ r0, _, e1 := Syscall6(SYS_SENDFILE, uintptr(outfd), uintptr(infd), uintptr(unsafe.Pointer(offset)), uintptr(count), 0, 0) -+ written = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func setfsgid(gid int) (prev int, err error) { -+ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0) -+ prev = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func setfsuid(uid int) (prev int, err error) { -+ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0) -+ prev = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setregid(rgid int, egid int) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setresgid(rgid int, egid int, sgid int) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setresuid(ruid int, euid int, suid int) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setrlimit(resource int, rlim *Rlimit) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setreuid(ruid int, euid int) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Shutdown(fd int, how int) (err error) { -+ _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(fd), uintptr(how), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) { -+ r0, _, e1 := Syscall6(SYS_SPLICE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags)) -+ n = int64(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func SyncFileRange(fd int, off int64, n int64, flags int) (err error) { -+ _, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE, uintptr(fd), uintptr(off), uintptr(n), uintptr(flags), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Truncate(path string, length int64) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -+ r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) { -+ r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -+ _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -+ _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getgroups(n int, list *_Gid_t) (nn int, err error) { -+ r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0) -+ nn = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func setgroups(n int, list *_Gid_t) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { -+ _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { -+ _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func socket(domain int, typ int, proto int) (fd int, err error) { -+ r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto)) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { -+ _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -+ _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -+ _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) { -+ var _p0 unsafe.Pointer -+ if len(buf) > 0 { -+ _p0 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { -+ r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { -+ r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) { -+ r0, _, e1 := Syscall6(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flags), uintptr(fd), uintptr(offset)) -+ xaddr = uintptr(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Gettimeofday(tv *Timeval) (err error) { -+ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func pipe2(p *[2]_C_int, flags int) (err error) { -+ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func EpollCreate(size int) (fd int, err error) { -+ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(events) > 0 { -+ _p0 = unsafe.Pointer(&events[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fadvise(fd int, offset int64, length int64, advice int) (err error) { -+ _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_NEWFSTATAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func futimesat(dirfd int, path string, times *[2]Timeval) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times))) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(oldpath) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(newpath) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func fcntl(fd int, cmd int, arg int) (val int, err error) { -+ r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg)) -+ val = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -diff -Naur etcd-3.4.14.org/vendor/golang.org/x/sys/unix/zsysnum_linux_sw64.go etcd-3.4.14.sw/vendor/golang.org/x/sys/unix/zsysnum_linux_sw64.go ---- etcd-3.4.14.org/vendor/golang.org/x/sys/unix/zsysnum_linux_sw64.go 1970-01-01 08:00:00.000000000 +0800 -+++ etcd-3.4.14.sw/vendor/golang.org/x/sys/unix/zsysnum_linux_sw64.go 2022-09-15 16:58:46.930000000 +0800 -@@ -0,0 +1,458 @@ -+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /usr/include/asm/unistd.h -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+// +build sw64,linux -+ -+package unix -+ -+const ( -+ SYS_OSF_SYSCALL = 0 -+ SYS_EXIT = 1 -+ SYS_FORK = 2 -+ SYS_READ = 3 -+ SYS_WRITE = 4 -+ SYS_OSF_OLD_OPEN = 5 -+ SYS_CLOSE = 6 -+ SYS_OSF_WAIT4 = 7 -+ SYS_OSF_OLD_CREAT = 8 -+ SYS_LINK = 9 -+ SYS_UNLINK = 10 -+ SYS_OSF_EXECVE = 11 -+ SYS_CHDIR = 12 -+ SYS_FCHDIR = 13 -+ SYS_MKNOD = 14 -+ SYS_CHMOD = 15 -+ SYS_CHOWN = 16 -+ SYS_BRK = 17 -+ SYS_OSF_GETFSSTAT = 18 -+ SYS_LSEEK = 19 -+ SYS_GETXPID = 20 -+ SYS_OSF_MOUNT = 21 -+ SYS_UMOUNT = 22 -+ SYS_SETUID = 23 -+ SYS_GETXUID = 24 -+ SYS_EXEC_WITH_LOADER = 25 -+ SYS_PTRACE = 26 -+ SYS_OSF_NRECVMSG = 27 -+ SYS_OSF_NSENDMSG = 28 -+ SYS_OSF_NRECVFROM = 29 -+ SYS_OSF_NACCEPT = 30 -+ SYS_OSF_NGETPEERNAME = 31 -+ SYS_OSF_NGETSOCKNAME = 32 -+ SYS_ACCESS = 33 -+ SYS_OSF_CHFLAGS = 34 -+ SYS_OSF_FCHFLAGS = 35 -+ SYS_SYNC = 36 -+ SYS_KILL = 37 -+ SYS_OSF_OLD_STAT = 38 -+ SYS_SETPGID = 39 -+ SYS_OSF_OLD_LSTAT = 40 -+ SYS_DUP = 41 -+ SYS_PIPE = 42 -+ SYS_OSF_SET_PROGRAM_ATTRIBUTES = 43 -+ SYS_OSF_PROFIL = 44 -+ SYS_OPEN = 45 -+ SYS_OSF_OLD_SIGACTION = 46 -+ SYS_GETXGID = 47 -+ SYS_OSF_SIGPROCMASK = 48 -+ SYS_OSF_GETLOGIN = 49 -+ SYS_OSF_SETLOGIN = 50 -+ SYS_ACCT = 51 -+ SYS_SIGPENDING = 52 -+ SYS_IOCTL = 54 -+ SYS_OSF_REBOOT = 55 -+ SYS_OSF_REVOKE = 56 -+ SYS_SYMLINK = 57 -+ SYS_READLINK = 58 -+ SYS_EXECVE = 59 -+ SYS_UMASK = 60 -+ SYS_CHROOT = 61 -+ SYS_OSF_OLD_FSTAT = 62 -+ SYS_GETPGRP = 63 -+ SYS_GETPAGESIZE = 64 -+ SYS_OSF_MREMAP = 65 -+ SYS_VFORK = 66 -+ SYS_STAT = 67 -+ SYS_LSTAT = 68 -+ SYS_OSF_SBRK = 69 -+ SYS_OSF_SSTK = 70 -+ SYS_MMAP = 71 -+ SYS_OSF_OLD_VADVISE = 72 -+ SYS_MUNMAP = 73 -+ SYS_MPROTECT = 74 -+ SYS_MADVISE = 75 -+ SYS_VHANGUP = 76 -+ SYS_OSF_KMODCALL = 77 -+ SYS_OSF_MINCORE = 78 -+ SYS_GETGROUPS = 79 -+ SYS_SETGROUPS = 80 -+ SYS_OSF_OLD_GETPGRP = 81 -+ SYS_SETPGRP = 82 -+ SYS_OSF_SETITIMER = 83 -+ SYS_OSF_OLD_WAIT = 84 -+ SYS_OSF_TABLE = 85 -+ SYS_OSF_GETITIMER = 86 -+ SYS_GETHOSTNAME = 87 -+ SYS_SETHOSTNAME = 88 -+ SYS_GETDTABLESIZE = 89 -+ SYS_DUP2 = 90 -+ SYS_FSTAT = 91 -+ SYS_FCNTL = 92 -+ SYS_OSF_SELECT = 93 -+ SYS_POLL = 94 -+ SYS_FSYNC = 95 -+ SYS_SETPRIORITY = 96 -+ SYS_SOCKET = 97 -+ SYS_CONNECT = 98 -+ SYS_ACCEPT = 99 -+ SYS_GETPRIORITY = 100 -+ SYS_SEND = 101 -+ SYS_RECV = 102 -+ SYS_SIGRETURN = 103 -+ SYS_BIND = 104 -+ SYS_SETSOCKOPT = 105 -+ SYS_LISTEN = 106 -+ SYS_OSF_PLOCK = 107 -+ SYS_OSF_OLD_SIGVEC = 108 -+ SYS_OSF_OLD_SIGBLOCK = 109 -+ SYS_OSF_OLD_SIGSETMASK = 110 -+ SYS_SIGSUSPEND = 111 -+ SYS_OSF_SIGSTACK = 112 -+ SYS_RECVMSG = 113 -+ SYS_SENDMSG = 114 -+ SYS_OSF_OLD_VTRACE = 115 -+ SYS_OSF_GETTIMEOFDAY = 116 -+ SYS_OSF_GETRUSAGE = 117 -+ SYS_GETSOCKOPT = 118 -+ SYS_SOCKETCALL = 119 -+ SYS_READV = 120 -+ SYS_WRITEV = 121 -+ SYS_OSF_SETTIMEOFDAY = 122 -+ SYS_FCHOWN = 123 -+ SYS_FCHMOD = 124 -+ SYS_RECVFROM = 125 -+ SYS_SETREUID = 126 -+ SYS_SETREGID = 127 -+ SYS_RENAME = 128 -+ SYS_TRUNCATE = 129 -+ SYS_FTRUNCATE = 130 -+ SYS_FLOCK = 131 -+ SYS_SETGID = 132 -+ SYS_SENDTO = 133 -+ SYS_SHUTDOWN = 134 -+ SYS_SOCKETPAIR = 135 -+ SYS_MKDIR = 136 -+ SYS_RMDIR = 137 -+ SYS_OSF_UTIMES = 138 -+ SYS_OSF_OLD_SIGRETURN = 139 -+ SYS_OSF_ADJTIME = 140 -+ SYS_GETPEERNAME = 141 -+ SYS_OSF_GETHOSTID = 142 -+ SYS_OSF_SETHOSTID = 143 -+ SYS_GETRLIMIT = 144 -+ SYS_SETRLIMIT = 145 -+ SYS_OSF_OLD_KILLPG = 146 -+ SYS_SETSID = 147 -+ SYS_QUOTACTL = 148 -+ SYS_OSF_OLDQUOTA = 149 -+ SYS_GETSOCKNAME = 150 -+ SYS_OSF_PID_BLOCK = 153 -+ SYS_OSF_PID_UNBLOCK = 154 -+ SYS_SIGACTION = 156 -+ SYS_OSF_SIGWAITPRIM = 157 -+ SYS_OSF_NFSSVC = 158 -+ SYS_OSF_GETDIRENTRIES = 159 -+ SYS_OSF_STATFS = 160 -+ SYS_OSF_FSTATFS = 161 -+ SYS_OSF_ASYNCH_DAEMON = 163 -+ SYS_OSF_GETFH = 164 -+ SYS_OSF_GETDOMAINNAME = 165 -+ SYS_SETDOMAINNAME = 166 -+ SYS_OSF_EXPORTFS = 169 -+ SYS_BPF = 170 -+ SYS_USERFAULTFD = 171 -+ SYS_MEMBARRIER = 172 -+ SYS_MLOCK2 = 173 -+ SYS_GETPID = 174 -+ SYS_GETPPID = 175 -+ SYS_GETUID = 176 -+ SYS_GETEUID = 177 -+ SYS_GETGID = 178 -+ SYS_GETEGID = 179 -+ SYS_OSF_ALT_PLOCK = 181 -+ SYS_OSF_GETMNT = 184 -+ SYS_OSF_ALT_SIGPENDING = 187 -+ SYS_OSF_ALT_SETSID = 188 -+ SYS_OSF_SWAPON = 199 -+ SYS_MSGCTL = 200 -+ SYS_MSGGET = 201 -+ SYS_MSGRCV = 202 -+ SYS_MSGSND = 203 -+ SYS_SEMCTL = 204 -+ SYS_SEMGET = 205 -+ SYS_SEMOP = 206 -+ SYS_OSF_UTSNAME = 207 -+ SYS_LCHOWN = 208 -+ SYS_OSF_SHMAT = 209 -+ SYS_SHMCTL = 210 -+ SYS_SHMDT = 211 -+ SYS_SHMGET = 212 -+ SYS_OSF_MVALID = 213 -+ SYS_OSF_GETADDRESSCONF = 214 -+ SYS_OSF_MSLEEP = 215 -+ SYS_OSF_MWAKEUP = 216 -+ SYS_MSYNC = 217 -+ SYS_OSF_SIGNAL = 218 -+ SYS_OSF_UTC_GETTIME = 219 -+ SYS_OSF_UTC_ADJTIME = 220 -+ SYS_OSF_SECURITY = 222 -+ SYS_OSF_KLOADCALL = 223 -+ SYS_OSF_STAT = 224 -+ SYS_OSF_LSTAT = 225 -+ SYS_OSF_FSTAT = 226 -+ SYS_OSF_STATFS64 = 227 -+ SYS_OSF_FSTATFS64 = 228 -+ SYS_GETPGID = 233 -+ SYS_GETSID = 234 -+ SYS_SIGALTSTACK = 235 -+ SYS_OSF_WAITID = 236 -+ SYS_OSF_PRIOCNTLSET = 237 -+ SYS_OSF_SIGSENDSET = 238 -+ SYS_OSF_SET_SPECULATIVE = 239 -+ SYS_OSF_MSFS_SYSCALL = 240 -+ SYS_OSF_SYSINFO = 241 -+ SYS_OSF_UADMIN = 242 -+ SYS_OSF_FUSER = 243 -+ SYS_OSF_PROPLIST_SYSCALL = 244 -+ SYS_OSF_NTP_ADJTIME = 245 -+ SYS_OSF_NTP_GETTIME = 246 -+ SYS_OSF_PATHCONF = 247 -+ SYS_OSF_FPATHCONF = 248 -+ SYS_OSF_USWITCH = 250 -+ SYS_OSF_USLEEP_THREAD = 251 -+ SYS_OSF_AUDCNTL = 252 -+ SYS_OSF_AUDGEN = 253 -+ SYS_SYSFS = 254 -+ SYS_OSF_SUBSYS_INFO = 255 -+ SYS_OSF_GETSYSINFO = 256 -+ SYS_OSF_SETSYSINFO = 257 -+ SYS_OSF_AFS_SYSCALL = 258 -+ SYS_OSF_SWAPCTL = 259 -+ SYS_OSF_MEMCNTL = 260 -+ SYS_OSF_FDATASYNC = 261 -+ SYS_BDFLUSH = 300 -+ SYS_SETHAE = 301 -+ SYS_MOUNT = 302 -+ SYS_OLD_ADJTIMEX = 303 -+ SYS_SWAPOFF = 304 -+ SYS_GETDENTS = 305 -+ SYS_CREATE_MODULE = 306 -+ SYS_INIT_MODULE = 307 -+ SYS_DELETE_MODULE = 308 -+ SYS_GET_KERNEL_SYMS = 309 -+ SYS_SYSLOG = 310 -+ SYS_REBOOT = 311 -+ SYS_CLONE = 312 -+ SYS_USELIB = 313 -+ SYS_MLOCK = 314 -+ SYS_MUNLOCK = 315 -+ SYS_MLOCKALL = 316 -+ SYS_MUNLOCKALL = 317 -+ SYS_SYSINFO = 318 -+ SYS__SYSCTL = 319 -+ SYS_OLDUMOUNT = 321 -+ SYS_SWAPON = 322 -+ SYS_TIMES = 323 -+ SYS_PERSONALITY = 324 -+ SYS_SETFSUID = 325 -+ SYS_SETFSGID = 326 -+ SYS_USTAT = 327 -+ SYS_STATFS = 328 -+ SYS_FSTATFS = 329 -+ SYS_SCHED_SETPARAM = 330 -+ SYS_SCHED_GETPARAM = 331 -+ SYS_SCHED_SETSCHEDULER = 332 -+ SYS_SCHED_GETSCHEDULER = 333 -+ SYS_SCHED_YIELD = 334 -+ SYS_SCHED_GET_PRIORITY_MAX = 335 -+ SYS_SCHED_GET_PRIORITY_MIN = 336 -+ SYS_SCHED_RR_GET_INTERVAL = 337 -+ SYS_AFS_SYSCALL = 338 -+ SYS_UNAME = 339 -+ SYS_NANOSLEEP = 340 -+ SYS_MREMAP = 341 -+ SYS_NFSSERVCTL = 342 -+ SYS_SETRESUID = 343 -+ SYS_GETRESUID = 344 -+ SYS_PCICONFIG_READ = 345 -+ SYS_PCICONFIG_WRITE = 346 -+ SYS_QUERY_MODULE = 347 -+ SYS_PRCTL = 348 -+ SYS_PREAD64 = 349 -+ SYS_PWRITE64 = 350 -+ SYS_RT_SIGRETURN = 351 -+ SYS_RT_SIGACTION = 352 -+ SYS_RT_SIGPROCMASK = 353 -+ SYS_RT_SIGPENDING = 354 -+ SYS_RT_SIGTIMEDWAIT = 355 -+ SYS_RT_SIGQUEUEINFO = 356 -+ SYS_RT_SIGSUSPEND = 357 -+ SYS_SELECT = 358 -+ SYS_GETTIMEOFDAY = 359 -+ SYS_SETTIMEOFDAY = 360 -+ SYS_GETITIMER = 361 -+ SYS_SETITIMER = 362 -+ SYS_UTIMES = 363 -+ SYS_GETRUSAGE = 364 -+ SYS_WAIT4 = 365 -+ SYS_ADJTIMEX = 366 -+ SYS_GETCWD = 367 -+ SYS_CAPGET = 368 -+ SYS_CAPSET = 369 -+ SYS_SENDFILE = 370 -+ SYS_SETRESGID = 371 -+ SYS_GETRESGID = 372 -+ SYS_DIPC = 373 -+ SYS_PIVOT_ROOT = 374 -+ SYS_MINCORE = 375 -+ SYS_PCICONFIG_IOBASE = 376 -+ SYS_GETDENTS64 = 377 -+ SYS_GETTID = 378 -+ SYS_READAHEAD = 379 -+ SYS_TKILL = 381 -+ SYS_SETXATTR = 382 -+ SYS_LSETXATTR = 383 -+ SYS_FSETXATTR = 384 -+ SYS_GETXATTR = 385 -+ SYS_LGETXATTR = 386 -+ SYS_FGETXATTR = 387 -+ SYS_LISTXATTR = 388 -+ SYS_LLISTXATTR = 389 -+ SYS_FLISTXATTR = 390 -+ SYS_REMOVEXATTR = 391 -+ SYS_LREMOVEXATTR = 392 -+ SYS_FREMOVEXATTR = 393 -+ SYS_FUTEX = 394 -+ SYS_SCHED_SETAFFINITY = 395 -+ SYS_SCHED_GETAFFINITY = 396 -+ SYS_TUXCALL = 397 -+ SYS_IO_SETUP = 398 -+ SYS_IO_DESTROY = 399 -+ SYS_IO_GETEVENTS = 400 -+ SYS_IO_SUBMIT = 401 -+ SYS_IO_CANCEL = 402 -+ SYS_EXIT_GROUP = 405 -+ SYS_LOOKUP_DCOOKIE = 406 -+ SYS_EPOLL_CREATE = 407 -+ SYS_EPOLL_CTL = 408 -+ SYS_EPOLL_WAIT = 409 -+ SYS_REMAP_FILE_PAGES = 410 -+ SYS_SET_TID_ADDRESS = 411 -+ SYS_RESTART_SYSCALL = 412 -+ SYS_FADVISE64 = 413 -+ SYS_TIMER_CREATE = 414 -+ SYS_TIMER_SETTIME = 415 -+ SYS_TIMER_GETTIME = 416 -+ SYS_TIMER_GETOVERRUN = 417 -+ SYS_TIMER_DELETE = 418 -+ SYS_CLOCK_SETTIME = 419 -+ SYS_CLOCK_GETTIME = 420 -+ SYS_CLOCK_GETRES = 421 -+ SYS_CLOCK_NANOSLEEP = 422 -+ SYS_SEMTIMEDOP = 423 -+ SYS_TGKILL = 424 -+ SYS_STAT64 = 425 -+ SYS_LSTAT64 = 426 -+ SYS_FSTAT64 = 427 -+ SYS_VSERVER = 428 -+ SYS_MBIND = 429 -+ SYS_GET_MEMPOLICY = 430 -+ SYS_SET_MEMPOLICY = 431 -+ SYS_MQ_OPEN = 432 -+ SYS_MQ_UNLINK = 433 -+ SYS_MQ_TIMEDSEND = 434 -+ SYS_MQ_TIMEDRECEIVE = 435 -+ SYS_MQ_NOTIFY = 436 -+ SYS_MQ_GETSETATTR = 437 -+ SYS_WAITID = 438 -+ SYS_ADD_KEY = 439 -+ SYS_REQUEST_KEY = 440 -+ SYS_KEYCTL = 441 -+ SYS_IOPRIO_SET = 442 -+ SYS_IOPRIO_GET = 443 -+ SYS_INOTIFY_INIT = 444 -+ SYS_INOTIFY_ADD_WATCH = 445 -+ SYS_INOTIFY_RM_WATCH = 446 -+ SYS_FDATASYNC = 447 -+ SYS_KEXEC_LOAD = 448 -+ SYS_MIGRATE_PAGES = 449 -+ SYS_OPENAT = 450 -+ SYS_MKDIRAT = 451 -+ SYS_MKNODAT = 452 -+ SYS_FCHOWNAT = 453 -+ SYS_FUTIMESAT = 454 -+ SYS_FSTATAT64 = 455 -+ SYS_UNLINKAT = 456 -+ SYS_RENAMEAT = 457 -+ SYS_LINKAT = 458 -+ SYS_SYMLINKAT = 459 -+ SYS_READLINKAT = 460 -+ SYS_FCHMODAT = 461 -+ SYS_FACCESSAT = 462 -+ SYS_PSELECT6 = 463 -+ SYS_PPOLL = 464 -+ SYS_UNSHARE = 465 -+ SYS_SET_ROBUST_LIST = 466 -+ SYS_GET_ROBUST_LIST = 467 -+ SYS_SPLICE = 468 -+ SYS_SYNC_FILE_RANGE = 469 -+ SYS_TEE = 470 -+ SYS_VMSPLICE = 471 -+ SYS_MOVE_PAGES = 472 -+ SYS_GETCPU = 473 -+ SYS_EPOLL_PWAIT = 474 -+ SYS_UTIMENSAT = 475 -+ SYS_SIGNALFD = 476 -+ SYS_TIMERFD = 477 -+ SYS_EVENTFD = 478 -+ SYS_RECVMMSG = 479 -+ SYS_FALLOCATE = 480 -+ SYS_TIMERFD_CREATE = 481 -+ SYS_TIMERFD_SETTIME = 482 -+ SYS_TIMERFD_GETTIME = 483 -+ SYS_SIGNALFD4 = 484 -+ SYS_EVENTFD2 = 485 -+ SYS_EPOLL_CREATE1 = 486 -+ SYS_DUP3 = 487 -+ SYS_PIPE2 = 488 -+ SYS_INOTIFY_INIT1 = 489 -+ SYS_PREADV = 490 -+ SYS_PWRITEV = 491 -+ SYS_RT_TGSIGQUEUEINFO = 492 -+ SYS_PERF_EVENT_OPEN = 493 -+ SYS_FANOTIFY_INIT = 494 -+ SYS_FANOTIFY_MARK = 495 -+ SYS_PRLIMIT64 = 496 -+ SYS_NAME_TO_HANDLE_AT = 497 -+ SYS_OPEN_BY_HANDLE_AT = 498 -+ SYS_CLOCK_ADJTIME = 499 -+ SYS_SYNCFS = 500 -+ SYS_SETNS = 501 -+ SYS_ACCEPT4 = 502 -+ SYS_SENDMMSG = 503 -+ SYS_PROCESS_VM_READV = 504 -+ SYS_PROCESS_VM_WRITEV = 505 -+ SYS_KCMP = 506 -+ SYS_FINIT_MODULE = 507 -+ SYS_SCHED_SETATTR = 508 -+ SYS_SCHED_GETATTR = 509 -+ SYS_RENAMEAT2 = 510 -+ SYS_GETRANDOM = 511 -+ SYS_MEMFD_CREATE = 512 -+ SYS_EXECVEAT = 513 -+ SYS_SECCOMP = 514 -+ SYS_COPY_FILE_RANGE = 515 -+ SYS_PREADV2 = 516 -+ SYS_PWRITEV2 = 517 -+ SYS_STATX = 518 -+) -diff -Naur etcd-3.4.14.org/vendor/golang.org/x/sys/unix/ztypes_linux_sw64.go etcd-3.4.14.sw/vendor/golang.org/x/sys/unix/ztypes_linux_sw64.go ---- etcd-3.4.14.org/vendor/golang.org/x/sys/unix/ztypes_linux_sw64.go 1970-01-01 08:00:00.000000000 +0800 -+++ etcd-3.4.14.sw/vendor/golang.org/x/sys/unix/ztypes_linux_sw64.go 2022-09-15 16:58:46.940000000 +0800 -@@ -0,0 +1,3361 @@ -+// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build sw64 && linux -+// +build sw64,linux -+ -+package unix -+ -+const ( -+ SizeofPtr = 0x8 -+ SizeofShort = 0x2 -+ SizeofInt = 0x4 -+ SizeofLong = 0x8 -+ SizeofLongLong = 0x8 -+ PathMax = 0x1000 -+) -+ -+type ( -+ _C_short int16 -+ _C_int int32 -+ _C_long int64 -+ _C_long_long int64 -+) -+ -+type Timespec struct { -+ Sec int64 -+ Nsec int64 -+} -+ -+type Timeval struct { -+ Sec int64 -+ Usec int64 -+} -+ -+type Timex struct { -+ Modes uint32 -+ Offset int64 -+ Freq int64 -+ Maxerror int64 -+ Esterror int64 -+ Status int32 -+ Constant int64 -+ Precision int64 -+ Tolerance int64 -+ Time Timeval -+ Tick int64 -+ Ppsfreq int64 -+ Jitter int64 -+ Shift int32 -+ Stabil int64 -+ Jitcnt int64 -+ Calcnt int64 -+ Errcnt int64 -+ Stbcnt int64 -+ Tai int32 -+ _ [44]byte -+} -+ -+type ItimerSpec struct { -+ Interval Timespec -+ Value Timespec -+} -+ -+const ( -+ TIME_OK = 0x0 -+ TIME_INS = 0x1 -+ TIME_DEL = 0x2 -+ TIME_OOP = 0x3 -+ TIME_WAIT = 0x4 -+ TIME_ERROR = 0x5 -+ TIME_BAD = 0x5 -+) -+ -+type Time_t int64 -+ -+type Tms struct { -+ Utime int64 -+ Stime int64 -+ Cutime int64 -+ Cstime int64 -+} -+ -+type Utimbuf struct { -+ Actime int64 -+ Modtime int64 -+} -+ -+type Rusage struct { -+ Utime Timeval -+ Stime Timeval -+ Maxrss int64 -+ Ixrss int64 -+ Idrss int64 -+ Isrss int64 -+ Minflt int64 -+ Majflt int64 -+ Nswap int64 -+ Inblock int64 -+ Oublock int64 -+ Msgsnd int64 -+ Msgrcv int64 -+ Nsignals int64 -+ Nvcsw int64 -+ Nivcsw int64 -+} -+ -+type Rlimit struct { -+ Cur uint64 -+ Max uint64 -+} -+ -+type _Gid_t uint32 -+ -+type Stat_t struct { -+ Dev uint64 -+ Ino uint64 -+ Rdev uint64 -+ Size int64 -+ Blocks int64 -+ Mode uint32 -+ Uid uint32 -+ Gid uint32 -+ Blksize uint32 -+ Nlink uint32 -+ _ int32 -+ Atim Timespec -+ Mtim Timespec -+ Ctim Timespec -+ _ [3]int64 -+} -+ -+type StatxTimestamp struct { -+ Sec int64 -+ Nsec uint32 -+ _ int32 -+} -+ -+type Statx_t struct { -+ Mask uint32 -+ Blksize uint32 -+ Attributes uint64 -+ Nlink uint32 -+ Uid uint32 -+ Gid uint32 -+ Mode uint16 -+ _ [1]uint16 -+ Ino uint64 -+ Size uint64 -+ Blocks uint64 -+ Attributes_mask uint64 -+ Atime StatxTimestamp -+ Btime StatxTimestamp -+ Ctime StatxTimestamp -+ Mtime StatxTimestamp -+ Rdev_major uint32 -+ Rdev_minor uint32 -+ Dev_major uint32 -+ Dev_minor uint32 -+ _ [14]uint64 -+} -+ -+type Dirent struct { -+ Ino uint64 -+ Off int64 -+ Reclen uint16 -+ Type uint8 -+ Name [256]int8 -+ _ [5]byte -+} -+ -+type Fsid struct { -+ Val [2]int32 -+} -+ -+type Flock_t struct { -+ Type int16 -+ Whence int16 -+ Start int64 -+ Len int64 -+ Pid int32 -+ _ [4]byte -+} -+ -+type FileCloneRange struct { -+ Src_fd int64 -+ Src_offset uint64 -+ Src_length uint64 -+ Dest_offset uint64 -+} -+ -+type RawFileDedupeRange struct { -+ Src_offset uint64 -+ Src_length uint64 -+ Dest_count uint16 -+ Reserved1 uint16 -+ Reserved2 uint32 -+} -+ -+type RawFileDedupeRangeInfo struct { -+ Dest_fd int64 -+ Dest_offset uint64 -+ Bytes_deduped uint64 -+ Status int32 -+ Reserved uint32 -+} -+ -+const ( -+ SizeofRawFileDedupeRange = 0x18 -+ SizeofRawFileDedupeRangeInfo = 0x20 -+ FILE_DEDUPE_RANGE_SAME = 0x0 -+ FILE_DEDUPE_RANGE_DIFFERS = 0x1 -+) -+ -+type FscryptPolicy struct { -+ Version uint8 -+ Contents_encryption_mode uint8 -+ Filenames_encryption_mode uint8 -+ Flags uint8 -+ Master_key_descriptor [8]uint8 -+} -+ -+type FscryptKey struct { -+ Mode uint32 -+ Raw [64]uint8 -+ Size uint32 -+} -+ -+type FscryptPolicyV1 struct{} -+ -+type FscryptPolicyV2 struct{} -+ -+type FscryptGetPolicyExArg struct{} -+ -+type FscryptKeySpecifier struct{} -+ -+type FscryptAddKeyArg struct{} -+ -+type FscryptRemoveKeyArg struct{} -+ -+type FscryptGetKeyStatusArg struct{} -+ -+type DmIoctl struct { -+ Version [3]uint32 -+ Data_size uint32 -+ Data_start uint32 -+ Target_count uint32 -+ Open_count int32 -+ Flags uint32 -+ Event_nr uint32 -+ _ uint32 -+ Dev uint64 -+ Name [128]byte -+ Uuid [129]byte -+ Data [7]byte -+} -+ -+type DmTargetSpec struct { -+ Sector_start uint64 -+ Length uint64 -+ Status int32 -+ Next uint32 -+ Target_type [16]byte -+} -+ -+type DmTargetDeps struct { -+ Count uint32 -+ _ uint32 -+} -+ -+type DmNameList struct { -+ Dev uint64 -+ Next uint32 -+ Name [0]byte -+ _ [4]byte -+} -+ -+type DmTargetVersions struct { -+ Next uint32 -+ Version [3]uint32 -+} -+ -+type DmTargetMsg struct { -+ Sector uint64 -+} -+ -+const ( -+ SizeofDmIoctl = 0x138 -+ SizeofDmTargetSpec = 0x28 -+) -+ -+type KeyctlDHParams struct { -+ Private int32 -+ Prime int32 -+ Base int32 -+} -+ -+const ( -+ FADV_NORMAL = 0x0 -+ FADV_RANDOM = 0x1 -+ FADV_SEQUENTIAL = 0x2 -+ FADV_WILLNEED = 0x3 -+ FADV_DONTNEED = 0x4 -+ FADV_NOREUSE = 0x5 -+) -+ -+type RawSockaddrInet4 struct { -+ Family uint16 -+ Port uint16 -+ Addr [4]byte /* in_addr */ -+ Zero [8]uint8 -+} -+ -+type RawSockaddrInet6 struct { -+ Family uint16 -+ Port uint16 -+ Flowinfo uint32 -+ Addr [16]byte /* in6_addr */ -+ Scope_id uint32 -+} -+ -+type RawSockaddrUnix struct { -+ Family uint16 -+ Path [108]int8 -+} -+ -+type RawSockaddrLinklayer struct { -+ Family uint16 -+ Protocol uint16 -+ Ifindex int32 -+ Hatype uint16 -+ Pkttype uint8 -+ Halen uint8 -+ Addr [8]uint8 -+} -+ -+type RawSockaddrNetlink struct { -+ Family uint16 -+ Pad uint16 -+ Pid uint32 -+ Groups uint32 -+} -+ -+type RawSockaddrHCI struct { -+ Family uint16 -+ Dev uint16 -+ Channel uint16 -+} -+ -+type RawSockaddrL2 struct { -+ Family uint16 -+ Psm uint16 -+ Bdaddr [6]uint8 -+ Cid uint16 -+ Bdaddr_type uint8 -+ _ [1]byte -+} -+ -+type RawSockaddrRFCOMM struct { -+ Family uint16 -+ Bdaddr [6]uint8 -+ Channel uint8 -+ _ [1]byte -+} -+ -+type RawSockaddrCAN struct { -+ Family uint16 -+ Ifindex int32 -+ Addr [16]byte //TODO:old struct is [8]byte,it may create problems -+} -+ -+type RawSockaddrALG struct { -+ Family uint16 -+ Type [14]uint8 -+ Feat uint32 -+ Mask uint32 -+ Name [64]uint8 -+} -+ -+// TODO: 4.19 kernel doesn't support Flags feild -+// just for compiler pass -+type RawSockaddrVM struct { -+ Family uint16 -+ Reserved1 uint16 -+ Port uint32 -+ Cid uint32 -+ Flags uint8 -+ Zero [3]uint8 -+} -+ -+const _HIDIOCGRAWUNIQ = 0x40404808 -+ -+type RawSockaddrXDP struct { -+ Family uint16 -+ Flags uint16 -+ Ifindex uint32 -+ Queue_id uint32 -+ Shared_umem_fd uint32 -+} -+ -+type RawSockaddrPPPoX [0x1e]byte -+ -+type RawSockaddrTIPC struct { -+ Family uint16 -+ Addrtype uint8 -+ Scope int8 -+ Addr [12]byte -+} -+ -+type RawSockaddrL2TPIP struct { -+ Family uint16 -+ Unused uint16 -+ Addr [4]byte /* in_addr */ -+ Conn_id uint32 -+ _ [4]uint8 -+} -+ -+type RawSockaddrL2TPIP6 struct { -+ Family uint16 -+ Unused uint16 -+ Flowinfo uint32 -+ Addr [16]byte /* in6_addr */ -+ Scope_id uint32 -+ Conn_id uint32 -+} -+ -+type RawSockaddrIUCV struct { -+ Family uint16 -+ Port uint16 -+ Addr uint32 -+ Nodeid [8]int8 -+ User_id [8]int8 -+ Name [8]int8 -+} -+ -+type RawSockaddr struct { -+ Family uint16 -+ Data [14]int8 -+} -+ -+type RawSockaddrAny struct { -+ Addr RawSockaddr -+ Pad [96]int8 -+} -+ -+type _Socklen uint32 -+ -+type Linger struct { -+ Onoff int32 -+ Linger int32 -+} -+ -+type Iovec struct { -+ Base *byte -+ Len uint64 -+} -+ -+type IPMreq struct { -+ Multiaddr [4]byte /* in_addr */ -+ Interface [4]byte /* in_addr */ -+} -+ -+type IPMreqn struct { -+ Multiaddr [4]byte /* in_addr */ -+ Address [4]byte /* in_addr */ -+ Ifindex int32 -+} -+ -+type IPv6Mreq struct { -+ Multiaddr [16]byte /* in6_addr */ -+ Interface uint32 -+} -+ -+type PacketMreq struct { -+ Ifindex int32 -+ Type uint16 -+ Alen uint16 -+ Address [8]uint8 -+} -+ -+type Msghdr struct { -+ Name *byte -+ Namelen uint32 -+ Iov *Iovec -+ Iovlen uint64 -+ Control *byte -+ Controllen uint64 -+ Flags int32 -+ _ [4]byte -+} -+ -+type Cmsghdr struct { -+ Len uint64 -+ Level int32 -+ Type int32 -+} -+ -+type Inet4Pktinfo struct { -+ Ifindex int32 -+ Spec_dst [4]byte /* in_addr */ -+ Addr [4]byte /* in_addr */ -+} -+ -+type Inet6Pktinfo struct { -+ Addr [16]byte /* in6_addr */ -+ Ifindex uint32 -+} -+ -+type IPv6MTUInfo struct { -+ Addr RawSockaddrInet6 -+ Mtu uint32 -+} -+ -+type ICMPv6Filter struct { -+ Data [8]uint32 -+} -+ -+type Ucred struct { -+ Pid int32 -+ Uid uint32 -+ Gid uint32 -+} -+ -+type TCPInfo struct { -+ State uint8 -+ Ca_state uint8 -+ Retransmits uint8 -+ Probes uint8 -+ Backoff uint8 -+ Options uint8 -+ Rto uint32 -+ Ato uint32 -+ Snd_mss uint32 -+ Rcv_mss uint32 -+ Unacked uint32 -+ Sacked uint32 -+ Lost uint32 -+ Retrans uint32 -+ Fackets uint32 -+ Last_data_sent uint32 -+ Last_ack_sent uint32 -+ Last_data_recv uint32 -+ Last_ack_recv uint32 -+ Pmtu uint32 -+ Rcv_ssthresh uint32 -+ Rtt uint32 -+ Rttvar uint32 -+ Snd_ssthresh uint32 -+ Snd_cwnd uint32 -+ Advmss uint32 -+ Reordering uint32 -+ Rcv_rtt uint32 -+ Rcv_space uint32 -+ Total_retrans uint32 -+} -+ -+type CanFilter struct { -+ Id uint32 -+ Mask uint32 -+} -+ -+const ( -+ SizeofSockaddrInet4 = 0x10 -+ SizeofSockaddrInet6 = 0x1c -+ SizeofSockaddrAny = 0x70 -+ SizeofSockaddrUnix = 0x6e -+ SizeofSockaddrLinklayer = 0x14 -+ SizeofSockaddrNetlink = 0xc -+ SizeofSockaddrHCI = 0x6 -+ SizeofSockaddrL2 = 0xe -+ SizeofSockaddrRFCOMM = 0xa -+ SizeofSockaddrCAN = 0x10 -+ SizeofSockaddrALG = 0x58 -+ SizeofSockaddrVM = 0x10 -+ SizeofSockaddrXDP = 0x10 -+ SizeofSockaddrPPPoX = 0x1e -+ SizeofSockaddrTIPC = 0x10 -+ SizeofSockaddrL2TPIP = 0x10 -+ SizeofSockaddrL2TPIP6 = 0x20 -+ SizeofSockaddrIUCV = 0x20 -+ SizeofLinger = 0x8 -+ SizeofIovec = 0x10 -+ SizeofIPMreq = 0x8 -+ SizeofIPMreqn = 0xc -+ SizeofIPv6Mreq = 0x14 -+ SizeofPacketMreq = 0x10 -+ SizeofMsghdr = 0x38 -+ SizeofCmsghdr = 0x10 -+ SizeofInet4Pktinfo = 0xc -+ SizeofInet6Pktinfo = 0x14 -+ SizeofIPv6MTUInfo = 0x20 -+ SizeofICMPv6Filter = 0x20 -+ SizeofUcred = 0xc -+ SizeofTCPInfo = 0x68 -+ SizeofCanFilter = 0x8 -+) -+ -+const ( -+ NDA_UNSPEC = 0x0 -+ NDA_DST = 0x1 -+ NDA_LLADDR = 0x2 -+ NDA_CACHEINFO = 0x3 -+ NDA_PROBES = 0x4 -+ NDA_VLAN = 0x5 -+ NDA_PORT = 0x6 -+ NDA_VNI = 0x7 -+ NDA_IFINDEX = 0x8 -+ NDA_MASTER = 0x9 -+ NDA_LINK_NETNSID = 0xa -+ NDA_SRC_VNI = 0xb -+ NTF_USE = 0x1 -+ NTF_SELF = 0x2 -+ NTF_MASTER = 0x4 -+ NTF_PROXY = 0x8 -+ NTF_EXT_LEARNED = 0x10 -+ NTF_OFFLOADED = 0x20 -+ NTF_ROUTER = 0x80 -+ NUD_INCOMPLETE = 0x1 -+ NUD_REACHABLE = 0x2 -+ NUD_STALE = 0x4 -+ NUD_DELAY = 0x8 -+ NUD_PROBE = 0x10 -+ NUD_FAILED = 0x20 -+ NUD_NOARP = 0x40 -+ NUD_PERMANENT = 0x80 -+ NUD_NONE = 0x0 -+ IFA_UNSPEC = 0x0 -+ IFA_ADDRESS = 0x1 -+ IFA_LOCAL = 0x2 -+ IFA_LABEL = 0x3 -+ IFA_BROADCAST = 0x4 -+ IFA_ANYCAST = 0x5 -+ IFA_CACHEINFO = 0x6 -+ IFA_MULTICAST = 0x7 -+ IFA_FLAGS = 0x8 -+ IFA_RT_PRIORITY = 0x9 -+ -+ RT_SCOPE_UNIVERSE = 0x0 -+ RT_SCOPE_SITE = 0xc8 -+ RT_SCOPE_LINK = 0xfd -+ RT_SCOPE_HOST = 0xfe -+ RT_SCOPE_NOWHERE = 0xff -+ RT_TABLE_UNSPEC = 0x0 -+ RT_TABLE_COMPAT = 0xfc -+ RT_TABLE_DEFAULT = 0xfd -+ RT_TABLE_MAIN = 0xfe -+ RT_TABLE_LOCAL = 0xff -+ RT_TABLE_MAX = 0xffffffff -+ RTA_UNSPEC = 0x0 -+ RTA_DST = 0x1 -+ RTA_SRC = 0x2 -+ RTA_IIF = 0x3 -+ RTA_OIF = 0x4 -+ RTA_GATEWAY = 0x5 -+ RTA_PRIORITY = 0x6 -+ RTA_PREFSRC = 0x7 -+ RTA_METRICS = 0x8 -+ RTA_MULTIPATH = 0x9 -+ RTA_FLOW = 0xb -+ RTA_CACHEINFO = 0xc -+ RTA_TABLE = 0xf -+ RTA_MARK = 0x10 -+ RTA_MFC_STATS = 0x11 -+ RTA_VIA = 0x12 -+ RTA_NEWDST = 0x13 -+ RTA_PREF = 0x14 -+ RTA_ENCAP_TYPE = 0x15 -+ RTA_ENCAP = 0x16 -+ RTA_EXPIRES = 0x17 -+ RTA_PAD = 0x18 -+ RTA_UID = 0x19 -+ RTA_TTL_PROPAGATE = 0x1a -+ RTA_IP_PROTO = 0x1b -+ RTA_SPORT = 0x1c -+ RTA_DPORT = 0x1d -+ RTN_UNSPEC = 0x0 -+ RTN_UNICAST = 0x1 -+ RTN_LOCAL = 0x2 -+ RTN_BROADCAST = 0x3 -+ RTN_ANYCAST = 0x4 -+ RTN_MULTICAST = 0x5 -+ RTN_BLACKHOLE = 0x6 -+ RTN_UNREACHABLE = 0x7 -+ RTN_PROHIBIT = 0x8 -+ RTN_THROW = 0x9 -+ RTN_NAT = 0xa -+ RTN_XRESOLVE = 0xb -+ SizeofNlMsghdr = 0x10 -+ SizeofNlMsgerr = 0x14 -+ SizeofRtGenmsg = 0x1 -+ SizeofNlAttr = 0x4 -+ SizeofRtAttr = 0x4 -+ SizeofIfInfomsg = 0x10 -+ SizeofIfAddrmsg = 0x8 -+ SizeofIfaCacheinfo = 0x10 -+ SizeofRtMsg = 0xc -+ SizeofRtNexthop = 0x8 -+ SizeofNdUseroptmsg = 0x10 -+ SizeofNdMsg = 0xc -+) -+ -+type NlMsghdr struct { -+ Len uint32 -+ Type uint16 -+ Flags uint16 -+ Seq uint32 -+ Pid uint32 -+} -+ -+type NlMsgerr struct { -+ Error int32 -+ Msg NlMsghdr -+} -+ -+type RtGenmsg struct { -+ Family uint8 -+} -+ -+type NlAttr struct { -+ Len uint16 -+ Type uint16 -+} -+ -+type RtAttr struct { -+ Len uint16 -+ Type uint16 -+} -+ -+type IfInfomsg struct { -+ Family uint8 -+ _ uint8 -+ Type uint16 -+ Index int32 -+ Flags uint32 -+ Change uint32 -+} -+ -+type IfAddrmsg struct { -+ Family uint8 -+ Prefixlen uint8 -+ Flags uint8 -+ Scope uint8 -+ Index uint32 -+} -+ -+type IfaCacheinfo struct { -+ Prefered uint32 -+ Valid uint32 -+ Cstamp uint32 -+ Tstamp uint32 -+} -+ -+type RtMsg struct { -+ Family uint8 -+ Dst_len uint8 -+ Src_len uint8 -+ Tos uint8 -+ Table uint8 -+ Protocol uint8 -+ Scope uint8 -+ Type uint8 -+ Flags uint32 -+} -+ -+type RtNexthop struct { -+ Len uint16 -+ Flags uint8 -+ Hops uint8 -+ Ifindex int32 -+} -+ -+type NdUseroptmsg struct { -+ Family uint8 -+ Pad1 uint8 -+ Opts_len uint16 -+ Ifindex int32 -+ Icmp_type uint8 -+ Icmp_code uint8 -+ Pad2 uint16 -+ Pad3 uint32 -+} -+ -+type NdMsg struct { -+ Family uint8 -+ Pad1 uint8 -+ Pad2 uint16 -+ Ifindex int32 -+ State uint16 -+ Flags uint8 -+ Type uint8 -+} -+ -+const ( -+ SizeofSockFilter = 0x8 -+ SizeofSockFprog = 0x10 -+) -+ -+type SockFilter struct { -+ Code uint16 -+ Jt uint8 -+ Jf uint8 -+ K uint32 -+} -+ -+type SockFprog struct { -+ Len uint16 -+ Filter *SockFilter -+} -+ -+type InotifyEvent struct { -+ Wd int32 -+ Mask uint32 -+ Cookie uint32 -+ Len uint32 -+} -+ -+const SizeofInotifyEvent = 0x10 -+ -+type PtraceRegs struct{} -+ -+type FdSet struct { -+ Bits [16]int64 -+} -+ -+type Sysinfo_t struct { -+ Uptime int64 -+ Loads [3]uint64 -+ Totalram uint64 -+ Freeram uint64 -+ Sharedram uint64 -+ Bufferram uint64 -+ Totalswap uint64 -+ Freeswap uint64 -+ Procs uint16 -+ Pad uint16 -+ Totalhigh uint64 -+ Freehigh uint64 -+ Unit uint32 -+ _ [0]int8 -+ _ [4]byte -+} -+ -+const SI_LOAD_SHIFT = 0x10 -+ -+type Utsname struct { -+ Sysname [65]byte -+ Nodename [65]byte -+ Release [65]byte -+ Version [65]byte -+ Machine [65]byte -+ Domainname [65]byte -+} -+ -+type Ustat_t struct { -+ Tfree int32 -+ Tinode uint64 -+ Fname [6]int8 -+ Fpack [6]int8 -+ _ [4]byte -+} -+ -+type EpollEvent struct { -+ Events uint32 -+ Fd int32 -+ Pad int32 -+} -+ -+const ( -+ AT_EMPTY_PATH = 0x1000 -+ AT_FDCWD = -0x64 -+ AT_NO_AUTOMOUNT = 0x800 -+ AT_REMOVEDIR = 0x200 -+ -+ AT_STATX_SYNC_AS_STAT = 0x0 -+ AT_STATX_FORCE_SYNC = 0x2000 -+ AT_STATX_DONT_SYNC = 0x4000 -+ -+ AT_SYMLINK_FOLLOW = 0x400 -+ AT_SYMLINK_NOFOLLOW = 0x100 -+ -+ AT_EACCESS = 0x200 -+) -+ -+type OpenHow struct{} -+ -+type PollFd struct { -+ Fd int32 -+ Events int16 -+ Revents int16 -+} -+ -+const ( -+ POLLIN = 0x1 -+ POLLPRI = 0x2 -+ POLLOUT = 0x4 -+ POLLRDHUP = 0x2000 -+ POLLERR = 0x8 -+ POLLHUP = 0x10 -+ POLLNVAL = 0x20 -+) -+ -+type Sigset_t struct { -+ Val [16]uint64 -+} -+ -+const _C__NSIG = 0x41 -+ -+type SignalfdSiginfo struct { -+ Signo uint32 -+ Errno int32 -+ Code int32 -+ Pid uint32 -+ Uid uint32 -+ Fd int32 -+ Tid uint32 -+ Band uint32 -+ Overrun uint32 -+ Trapno uint32 -+ Status int32 -+ Int int32 -+ Ptr uint64 -+ Utime uint64 -+ Stime uint64 -+ Addr uint64 -+ _ [48]uint8 -+} -+ -+type Termios struct { -+ Iflag uint32 -+ Oflag uint32 -+ Cflag uint32 -+ Lflag uint32 -+ Cc [19]uint8 -+ Line uint8 -+ Ispeed uint32 -+ Ospeed uint32 -+} -+ -+type Winsize struct { -+ Row uint16 -+ Col uint16 -+ Xpixel uint16 -+ Ypixel uint16 -+} -+ -+type Taskstats struct { -+ Version uint16 -+ Ac_exitcode uint32 -+ Ac_flag uint8 -+ Ac_nice uint8 -+ Cpu_count uint64 -+ Cpu_delay_total uint64 -+ Blkio_count uint64 -+ Blkio_delay_total uint64 -+ Swapin_count uint64 -+ Swapin_delay_total uint64 -+ Cpu_run_real_total uint64 -+ Cpu_run_virtual_total uint64 -+ Ac_comm [32]int8 -+ Ac_sched uint8 -+ Ac_pad [3]uint8 -+ _ [4]byte -+ Ac_uid uint32 -+ Ac_gid uint32 -+ Ac_pid uint32 -+ Ac_ppid uint32 -+ Ac_btime uint32 -+ Ac_etime uint64 -+ Ac_utime uint64 -+ Ac_stime uint64 -+ Ac_minflt uint64 -+ Ac_majflt uint64 -+ Coremem uint64 -+ Virtmem uint64 -+ Hiwater_rss uint64 -+ Hiwater_vm uint64 -+ Read_char uint64 -+ Write_char uint64 -+ Read_syscalls uint64 -+ Write_syscalls uint64 -+ Read_bytes uint64 -+ Write_bytes uint64 -+ Cancelled_write_bytes uint64 -+ Nvcsw uint64 -+ Nivcsw uint64 -+ Ac_utimescaled uint64 -+ Ac_stimescaled uint64 -+ Cpu_scaled_run_real_total uint64 -+ Freepages_count uint64 -+ Freepages_delay_total uint64 -+} -+ -+const ( -+ TASKSTATS_CMD_UNSPEC = 0x0 -+ TASKSTATS_CMD_GET = 0x1 -+ TASKSTATS_CMD_NEW = 0x2 -+ TASKSTATS_TYPE_UNSPEC = 0x0 -+ TASKSTATS_TYPE_PID = 0x1 -+ TASKSTATS_TYPE_TGID = 0x2 -+ TASKSTATS_TYPE_STATS = 0x3 -+ TASKSTATS_TYPE_AGGR_PID = 0x4 -+ TASKSTATS_TYPE_AGGR_TGID = 0x5 -+ TASKSTATS_TYPE_NULL = 0x6 -+ TASKSTATS_CMD_ATTR_UNSPEC = 0x0 -+ TASKSTATS_CMD_ATTR_PID = 0x1 -+ TASKSTATS_CMD_ATTR_TGID = 0x2 -+ TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3 -+ TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4 -+) -+ -+type CGroupStats struct { -+ Sleeping uint64 -+ Running uint64 -+ Stopped uint64 -+ Uninterruptible uint64 -+ Io_wait uint64 -+} -+ -+const ( -+ CGROUPSTATS_CMD_UNSPEC = 0x3 -+ CGROUPSTATS_CMD_GET = 0x4 -+ CGROUPSTATS_CMD_NEW = 0x5 -+ CGROUPSTATS_TYPE_UNSPEC = 0x0 -+ CGROUPSTATS_TYPE_CGROUP_STATS = 0x1 -+ CGROUPSTATS_CMD_ATTR_UNSPEC = 0x0 -+ CGROUPSTATS_CMD_ATTR_FD = 0x1 -+) -+ -+type Genlmsghdr struct { -+ Cmd uint8 -+ Version uint8 -+ Reserved uint16 -+} -+ -+const ( -+ CTRL_CMD_UNSPEC = 0x0 -+ CTRL_CMD_NEWFAMILY = 0x1 -+ CTRL_CMD_DELFAMILY = 0x2 -+ CTRL_CMD_GETFAMILY = 0x3 -+ CTRL_CMD_NEWOPS = 0x4 -+ CTRL_CMD_DELOPS = 0x5 -+ CTRL_CMD_GETOPS = 0x6 -+ CTRL_CMD_NEWMCAST_GRP = 0x7 -+ CTRL_CMD_DELMCAST_GRP = 0x8 -+ CTRL_CMD_GETMCAST_GRP = 0x9 -+ CTRL_ATTR_UNSPEC = 0x0 -+ CTRL_ATTR_FAMILY_ID = 0x1 -+ CTRL_ATTR_FAMILY_NAME = 0x2 -+ CTRL_ATTR_VERSION = 0x3 -+ CTRL_ATTR_HDRSIZE = 0x4 -+ CTRL_ATTR_MAXATTR = 0x5 -+ CTRL_ATTR_OPS = 0x6 -+ CTRL_ATTR_MCAST_GROUPS = 0x7 -+ CTRL_ATTR_OP_UNSPEC = 0x0 -+ CTRL_ATTR_OP_ID = 0x1 -+ CTRL_ATTR_OP_FLAGS = 0x2 -+ CTRL_ATTR_MCAST_GRP_UNSPEC = 0x0 -+ CTRL_ATTR_MCAST_GRP_NAME = 0x1 -+ CTRL_ATTR_MCAST_GRP_ID = 0x2 -+) -+ -+type cpuMask uint64 -+ -+const ( -+ _CPU_SETSIZE = 0x400 -+ _NCPUBITS = 0x40 -+) -+ -+const ( -+ BDADDR_BREDR = 0x0 -+ BDADDR_LE_PUBLIC = 0x1 -+ BDADDR_LE_RANDOM = 0x2 -+) -+ -+type PerfEventAttr struct { -+ Type uint32 -+ Size uint32 -+ Config uint64 -+ Sample uint64 -+ Sample_type uint64 -+ Read_format uint64 -+ Bits uint64 -+ Wakeup uint32 -+ Bp_type uint32 -+ Ext1 uint64 -+ Ext2 uint64 -+ Branch_sample_type uint64 -+ Sample_regs_user uint64 -+ Sample_stack_user uint32 -+ Clockid int32 -+ Sample_regs_intr uint64 -+ Aux_watermark uint32 -+ Sample_max_stack uint16 -+ _ uint16 -+} -+ -+type PerfEventMmapPage struct { -+ Version uint32 -+ Compat_version uint32 -+ Lock uint32 -+ Index uint32 -+ Offset int64 -+ Time_enabled uint64 -+ Time_running uint64 -+ Capabilities uint64 -+ Pmc_width uint16 -+ Time_shift uint16 -+ Time_mult uint32 -+ Time_offset uint64 -+ Time_zero uint64 -+ Size uint32 -+ _ [948]uint8 -+ Data_head uint64 -+ Data_tail uint64 -+ Data_offset uint64 -+ Data_size uint64 -+ Aux_head uint64 -+ Aux_tail uint64 -+ Aux_offset uint64 -+ Aux_size uint64 -+} -+ -+const ( -+ PerfBitDisabled uint64 = CBitFieldMaskBit0 -+ PerfBitInherit = CBitFieldMaskBit1 -+ PerfBitPinned = CBitFieldMaskBit2 -+ PerfBitExclusive = CBitFieldMaskBit3 -+ PerfBitExcludeUser = CBitFieldMaskBit4 -+ PerfBitExcludeKernel = CBitFieldMaskBit5 -+ PerfBitExcludeHv = CBitFieldMaskBit6 -+ PerfBitExcludeIdle = CBitFieldMaskBit7 -+ PerfBitMmap = CBitFieldMaskBit8 -+ PerfBitComm = CBitFieldMaskBit9 -+ PerfBitFreq = CBitFieldMaskBit10 -+ PerfBitInheritStat = CBitFieldMaskBit11 -+ PerfBitEnableOnExec = CBitFieldMaskBit12 -+ PerfBitTask = CBitFieldMaskBit13 -+ PerfBitWatermark = CBitFieldMaskBit14 -+ PerfBitPreciseIPBit1 = CBitFieldMaskBit15 -+ PerfBitPreciseIPBit2 = CBitFieldMaskBit16 -+ PerfBitMmapData = CBitFieldMaskBit17 -+ PerfBitSampleIDAll = CBitFieldMaskBit18 -+ PerfBitExcludeHost = CBitFieldMaskBit19 -+ PerfBitExcludeGuest = CBitFieldMaskBit20 -+ PerfBitExcludeCallchainKernel = CBitFieldMaskBit21 -+ PerfBitExcludeCallchainUser = CBitFieldMaskBit22 -+ PerfBitMmap2 = CBitFieldMaskBit23 -+ PerfBitCommExec = CBitFieldMaskBit24 -+ PerfBitUseClockID = CBitFieldMaskBit25 -+ PerfBitContextSwitch = CBitFieldMaskBit26 -+) -+ -+const ( -+ PERF_TYPE_HARDWARE = 0x0 -+ PERF_TYPE_SOFTWARE = 0x1 -+ PERF_TYPE_TRACEPOINT = 0x2 -+ PERF_TYPE_HW_CACHE = 0x3 -+ PERF_TYPE_RAW = 0x4 -+ PERF_TYPE_BREAKPOINT = 0x5 -+ PERF_TYPE_MAX = 0x6 -+ PERF_COUNT_HW_CPU_CYCLES = 0x0 -+ PERF_COUNT_HW_INSTRUCTIONS = 0x1 -+ PERF_COUNT_HW_CACHE_REFERENCES = 0x2 -+ PERF_COUNT_HW_CACHE_MISSES = 0x3 -+ PERF_COUNT_HW_BRANCH_INSTRUCTIONS = 0x4 -+ PERF_COUNT_HW_BRANCH_MISSES = 0x5 -+ PERF_COUNT_HW_BUS_CYCLES = 0x6 -+ PERF_COUNT_HW_STALLED_CYCLES_FRONTEND = 0x7 -+ PERF_COUNT_HW_STALLED_CYCLES_BACKEND = 0x8 -+ PERF_COUNT_HW_REF_CPU_CYCLES = 0x9 -+ PERF_COUNT_HW_MAX = 0xa -+ PERF_COUNT_HW_CACHE_L1D = 0x0 -+ PERF_COUNT_HW_CACHE_L1I = 0x1 -+ PERF_COUNT_HW_CACHE_LL = 0x2 -+ PERF_COUNT_HW_CACHE_DTLB = 0x3 -+ PERF_COUNT_HW_CACHE_ITLB = 0x4 -+ PERF_COUNT_HW_CACHE_BPU = 0x5 -+ PERF_COUNT_HW_CACHE_NODE = 0x6 -+ PERF_COUNT_HW_CACHE_MAX = 0x7 -+ PERF_COUNT_HW_CACHE_OP_READ = 0x0 -+ PERF_COUNT_HW_CACHE_OP_WRITE = 0x1 -+ PERF_COUNT_HW_CACHE_OP_PREFETCH = 0x2 -+ PERF_COUNT_HW_CACHE_OP_MAX = 0x3 -+ PERF_COUNT_HW_CACHE_RESULT_ACCESS = 0x0 -+ PERF_COUNT_HW_CACHE_RESULT_MISS = 0x1 -+ PERF_COUNT_HW_CACHE_RESULT_MAX = 0x2 -+ PERF_COUNT_SW_CPU_CLOCK = 0x0 -+ PERF_COUNT_SW_TASK_CLOCK = 0x1 -+ PERF_COUNT_SW_PAGE_FAULTS = 0x2 -+ PERF_COUNT_SW_CONTEXT_SWITCHES = 0x3 -+ PERF_COUNT_SW_CPU_MIGRATIONS = 0x4 -+ PERF_COUNT_SW_PAGE_FAULTS_MIN = 0x5 -+ PERF_COUNT_SW_PAGE_FAULTS_MAJ = 0x6 -+ PERF_COUNT_SW_ALIGNMENT_FAULTS = 0x7 -+ PERF_COUNT_SW_EMULATION_FAULTS = 0x8 -+ PERF_COUNT_SW_DUMMY = 0x9 -+ PERF_COUNT_SW_BPF_OUTPUT = 0xa -+ PERF_COUNT_SW_MAX = 0xb -+ PERF_SAMPLE_IP = 0x1 -+ PERF_SAMPLE_TID = 0x2 -+ PERF_SAMPLE_TIME = 0x4 -+ PERF_SAMPLE_ADDR = 0x8 -+ PERF_SAMPLE_READ = 0x10 -+ PERF_SAMPLE_CALLCHAIN = 0x20 -+ PERF_SAMPLE_ID = 0x40 -+ PERF_SAMPLE_CPU = 0x80 -+ PERF_SAMPLE_PERIOD = 0x100 -+ PERF_SAMPLE_STREAM_ID = 0x200 -+ PERF_SAMPLE_RAW = 0x400 -+ PERF_SAMPLE_BRANCH_STACK = 0x800 -+ PERF_SAMPLE_REGS_USER = 0x1000 -+ PERF_SAMPLE_STACK_USER = 0x2000 -+ PERF_SAMPLE_WEIGHT = 0x4000 -+ PERF_SAMPLE_DATA_SRC = 0x8000 -+ PERF_SAMPLE_IDENTIFIER = 0x10000 -+ PERF_SAMPLE_TRANSACTION = 0x20000 -+ PERF_SAMPLE_REGS_INTR = 0x40000 -+ PERF_SAMPLE_PHYS_ADDR = 0x80000 -+ -+ PERF_SAMPLE_MAX = 0x100000 -+ PERF_SAMPLE_BRANCH_USER_SHIFT = 0x0 -+ PERF_SAMPLE_BRANCH_KERNEL_SHIFT = 0x1 -+ PERF_SAMPLE_BRANCH_HV_SHIFT = 0x2 -+ PERF_SAMPLE_BRANCH_ANY_SHIFT = 0x3 -+ PERF_SAMPLE_BRANCH_ANY_CALL_SHIFT = 0x4 -+ PERF_SAMPLE_BRANCH_ANY_RETURN_SHIFT = 0x5 -+ PERF_SAMPLE_BRANCH_IND_CALL_SHIFT = 0x6 -+ PERF_SAMPLE_BRANCH_ABORT_TX_SHIFT = 0x7 -+ PERF_SAMPLE_BRANCH_IN_TX_SHIFT = 0x8 -+ PERF_SAMPLE_BRANCH_NO_TX_SHIFT = 0x9 -+ PERF_SAMPLE_BRANCH_COND_SHIFT = 0xa -+ PERF_SAMPLE_BRANCH_CALL_STACK_SHIFT = 0xb -+ PERF_SAMPLE_BRANCH_IND_JUMP_SHIFT = 0xc -+ PERF_SAMPLE_BRANCH_CALL_SHIFT = 0xd -+ PERF_SAMPLE_BRANCH_NO_FLAGS_SHIFT = 0xe -+ PERF_SAMPLE_BRANCH_NO_CYCLES_SHIFT = 0xf -+ PERF_SAMPLE_BRANCH_TYPE_SAVE_SHIFT = 0x10 -+ -+ PERF_SAMPLE_BRANCH_MAX_SHIFT = 0x11 -+ PERF_SAMPLE_BRANCH_USER = 0x1 -+ PERF_SAMPLE_BRANCH_KERNEL = 0x2 -+ PERF_SAMPLE_BRANCH_HV = 0x4 -+ PERF_SAMPLE_BRANCH_ANY = 0x8 -+ PERF_SAMPLE_BRANCH_ANY_CALL = 0x10 -+ PERF_SAMPLE_BRANCH_ANY_RETURN = 0x20 -+ PERF_SAMPLE_BRANCH_IND_CALL = 0x40 -+ PERF_SAMPLE_BRANCH_ABORT_TX = 0x80 -+ PERF_SAMPLE_BRANCH_IN_TX = 0x100 -+ PERF_SAMPLE_BRANCH_NO_TX = 0x200 -+ PERF_SAMPLE_BRANCH_COND = 0x400 -+ PERF_SAMPLE_BRANCH_CALL_STACK = 0x800 -+ PERF_SAMPLE_BRANCH_IND_JUMP = 0x1000 -+ PERF_SAMPLE_BRANCH_CALL = 0x2000 -+ PERF_SAMPLE_BRANCH_NO_FLAGS = 0x4000 -+ PERF_SAMPLE_BRANCH_NO_CYCLES = 0x8000 -+ PERF_SAMPLE_BRANCH_TYPE_SAVE = 0x10000 -+ -+ PERF_SAMPLE_BRANCH_MAX = 0x20000 -+ PERF_BR_UNKNOWN = 0x0 -+ PERF_BR_COND = 0x1 -+ PERF_BR_UNCOND = 0x2 -+ PERF_BR_IND = 0x3 -+ PERF_BR_CALL = 0x4 -+ PERF_BR_IND_CALL = 0x5 -+ PERF_BR_RET = 0x6 -+ PERF_BR_SYSCALL = 0x7 -+ PERF_BR_SYSRET = 0x8 -+ PERF_BR_COND_CALL = 0x9 -+ PERF_BR_COND_RET = 0xa -+ PERF_BR_MAX = 0xb -+ PERF_SAMPLE_REGS_ABI_NONE = 0x0 -+ PERF_SAMPLE_REGS_ABI_32 = 0x1 -+ PERF_SAMPLE_REGS_ABI_64 = 0x2 -+ PERF_TXN_ELISION = 0x1 -+ PERF_TXN_TRANSACTION = 0x2 -+ PERF_TXN_SYNC = 0x4 -+ PERF_TXN_ASYNC = 0x8 -+ PERF_TXN_RETRY = 0x10 -+ PERF_TXN_CONFLICT = 0x20 -+ PERF_TXN_CAPACITY_WRITE = 0x40 -+ PERF_TXN_CAPACITY_READ = 0x80 -+ PERF_TXN_MAX = 0x100 -+ PERF_TXN_ABORT_MASK = -0x100000000 -+ PERF_TXN_ABORT_SHIFT = 0x20 -+ PERF_FORMAT_TOTAL_TIME_ENABLED = 0x1 -+ PERF_FORMAT_TOTAL_TIME_RUNNING = 0x2 -+ PERF_FORMAT_ID = 0x4 -+ PERF_FORMAT_GROUP = 0x8 -+ PERF_FORMAT_MAX = 0x10 -+ PERF_IOC_FLAG_GROUP = 0x1 -+ PERF_RECORD_MMAP = 0x1 -+ PERF_RECORD_LOST = 0x2 -+ PERF_RECORD_COMM = 0x3 -+ PERF_RECORD_EXIT = 0x4 -+ PERF_RECORD_THROTTLE = 0x5 -+ PERF_RECORD_UNTHROTTLE = 0x6 -+ PERF_RECORD_FORK = 0x7 -+ PERF_RECORD_READ = 0x8 -+ PERF_RECORD_SAMPLE = 0x9 -+ PERF_RECORD_MMAP2 = 0xa -+ PERF_RECORD_AUX = 0xb -+ PERF_RECORD_ITRACE_START = 0xc -+ PERF_RECORD_LOST_SAMPLES = 0xd -+ PERF_RECORD_SWITCH = 0xe -+ PERF_RECORD_SWITCH_CPU_WIDE = 0xf -+ PERF_RECORD_NAMESPACES = 0x10 -+ -+ PERF_CONTEXT_HV = -0x20 -+ PERF_CONTEXT_KERNEL = -0x80 -+ PERF_CONTEXT_USER = -0x200 -+ PERF_CONTEXT_GUEST = -0x800 -+ PERF_CONTEXT_GUEST_KERNEL = -0x880 -+ PERF_CONTEXT_GUEST_USER = -0xa00 -+ PERF_CONTEXT_MAX = -0xfff -+) -+ -+const ( -+ CBitFieldMaskBit0 = 0x1 -+ CBitFieldMaskBit1 = 0x2 -+ CBitFieldMaskBit2 = 0x4 -+ CBitFieldMaskBit3 = 0x8 -+ CBitFieldMaskBit4 = 0x10 -+ CBitFieldMaskBit5 = 0x20 -+ CBitFieldMaskBit6 = 0x40 -+ CBitFieldMaskBit7 = 0x80 -+ CBitFieldMaskBit8 = 0x100 -+ CBitFieldMaskBit9 = 0x200 -+ CBitFieldMaskBit10 = 0x400 -+ CBitFieldMaskBit11 = 0x800 -+ CBitFieldMaskBit12 = 0x1000 -+ CBitFieldMaskBit13 = 0x2000 -+ CBitFieldMaskBit14 = 0x4000 -+ CBitFieldMaskBit15 = 0x8000 -+ CBitFieldMaskBit16 = 0x10000 -+ CBitFieldMaskBit17 = 0x20000 -+ CBitFieldMaskBit18 = 0x40000 -+ CBitFieldMaskBit19 = 0x80000 -+ CBitFieldMaskBit20 = 0x100000 -+ CBitFieldMaskBit21 = 0x200000 -+ CBitFieldMaskBit22 = 0x400000 -+ CBitFieldMaskBit23 = 0x800000 -+ CBitFieldMaskBit24 = 0x1000000 -+ CBitFieldMaskBit25 = 0x2000000 -+ CBitFieldMaskBit26 = 0x4000000 -+ CBitFieldMaskBit27 = 0x8000000 -+ CBitFieldMaskBit28 = 0x10000000 -+ CBitFieldMaskBit29 = 0x20000000 -+ CBitFieldMaskBit30 = 0x40000000 -+ CBitFieldMaskBit31 = 0x80000000 -+ CBitFieldMaskBit32 = 0x100000000 -+ CBitFieldMaskBit33 = 0x200000000 -+ CBitFieldMaskBit34 = 0x400000000 -+ CBitFieldMaskBit35 = 0x800000000 -+ CBitFieldMaskBit36 = 0x1000000000 -+ CBitFieldMaskBit37 = 0x2000000000 -+ CBitFieldMaskBit38 = 0x4000000000 -+ CBitFieldMaskBit39 = 0x8000000000 -+ CBitFieldMaskBit40 = 0x10000000000 -+ CBitFieldMaskBit41 = 0x20000000000 -+ CBitFieldMaskBit42 = 0x40000000000 -+ CBitFieldMaskBit43 = 0x80000000000 -+ CBitFieldMaskBit44 = 0x100000000000 -+ CBitFieldMaskBit45 = 0x200000000000 -+ CBitFieldMaskBit46 = 0x400000000000 -+ CBitFieldMaskBit47 = 0x800000000000 -+ CBitFieldMaskBit48 = 0x1000000000000 -+ CBitFieldMaskBit49 = 0x2000000000000 -+ CBitFieldMaskBit50 = 0x4000000000000 -+ CBitFieldMaskBit51 = 0x8000000000000 -+ CBitFieldMaskBit52 = 0x10000000000000 -+ CBitFieldMaskBit53 = 0x20000000000000 -+ CBitFieldMaskBit54 = 0x40000000000000 -+ CBitFieldMaskBit55 = 0x80000000000000 -+ CBitFieldMaskBit56 = 0x100000000000000 -+ CBitFieldMaskBit57 = 0x200000000000000 -+ CBitFieldMaskBit58 = 0x400000000000000 -+ CBitFieldMaskBit59 = 0x800000000000000 -+ CBitFieldMaskBit60 = 0x1000000000000000 -+ CBitFieldMaskBit61 = 0x2000000000000000 -+ CBitFieldMaskBit62 = 0x4000000000000000 -+ CBitFieldMaskBit63 = 0x8000000000000000 -+) -+ -+type SockaddrStorage struct { -+ Family uint16 -+ _ [118]int8 -+ _ uint64 -+} -+ -+type TCPMD5Sig struct { -+ Addr SockaddrStorage -+ Flags uint8 -+ Prefixlen uint8 -+ Keylen uint16 -+ _ uint32 -+ Key [80]uint8 -+} -+ -+type HDDriveCmdHdr struct { -+ Command uint8 -+ Number uint8 -+ Feature uint8 -+ Count uint8 -+} -+ -+type HDGeometry struct { -+ Heads uint8 -+ Sectors uint8 -+ Cylinders uint16 -+ Start uint64 -+} -+ -+type HDDriveID struct { -+ Config uint16 -+ Cyls uint16 -+ Reserved2 uint16 -+ Heads uint16 -+ Track_bytes uint16 -+ Sector_bytes uint16 -+ Sectors uint16 -+ Vendor0 uint16 -+ Vendor1 uint16 -+ Vendor2 uint16 -+ Serial_no [20]uint8 -+ Buf_type uint16 -+ Buf_size uint16 -+ Ecc_bytes uint16 -+ Fw_rev [8]uint8 -+ Model [40]uint8 -+ Max_multsect uint8 -+ Vendor3 uint8 -+ Dword_io uint16 -+ Vendor4 uint8 -+ Capability uint8 -+ Reserved50 uint16 -+ Vendor5 uint8 -+ TPIO uint8 -+ Vendor6 uint8 -+ TDMA uint8 -+ Field_valid uint16 -+ Cur_cyls uint16 -+ Cur_heads uint16 -+ Cur_sectors uint16 -+ Cur_capacity0 uint16 -+ Cur_capacity1 uint16 -+ Multsect uint8 -+ Multsect_valid uint8 -+ Lba_capacity uint32 -+ Dma_1word uint16 -+ Dma_mword uint16 -+ Eide_pio_modes uint16 -+ Eide_dma_min uint16 -+ Eide_dma_time uint16 -+ Eide_pio uint16 -+ Eide_pio_iordy uint16 -+ Words69_70 [2]uint16 -+ Words71_74 [4]uint16 -+ Queue_depth uint16 -+ Words76_79 [4]uint16 -+ Major_rev_num uint16 -+ Minor_rev_num uint16 -+ Command_set_1 uint16 -+ Command_set_2 uint16 -+ Cfsse uint16 -+ Cfs_enable_1 uint16 -+ Cfs_enable_2 uint16 -+ Csf_default uint16 -+ Dma_ultra uint16 -+ Trseuc uint16 -+ TrsEuc uint16 -+ CurAPMvalues uint16 -+ Mprc uint16 -+ Hw_config uint16 -+ Acoustic uint16 -+ Msrqs uint16 -+ Sxfert uint16 -+ Sal uint16 -+ Spg uint32 -+ Lba_capacity_2 uint64 -+ Words104_125 [22]uint16 -+ Last_lun uint16 -+ Word127 uint16 -+ Dlf uint16 -+ Csfo uint16 -+ Words130_155 [26]uint16 -+ Word156 uint16 -+ Words157_159 [3]uint16 -+ Cfa_power uint16 -+ Words161_175 [15]uint16 -+ Words176_205 [30]uint16 -+ Words206_254 [49]uint16 -+ Integrity_word uint16 -+} -+ -+type Statfs_t struct { -+ Type int64 -+ Bsize int64 -+ Blocks uint64 -+ Bfree uint64 -+ Bavail uint64 -+ Files uint64 -+ Ffree uint64 -+ Fsid Fsid -+ Namelen int64 -+ Frsize int64 -+ Flags int64 -+ Spare [4]int64 -+} -+ -+const ( -+ ST_MANDLOCK = 0x40 -+ ST_NOATIME = 0x400 -+ ST_NODEV = 0x4 -+ ST_NODIRATIME = 0x800 -+ ST_NOEXEC = 0x8 -+ ST_NOSUID = 0x2 -+ ST_RDONLY = 0x1 -+ ST_RELATIME = 0x1000 -+ ST_SYNCHRONOUS = 0x10 -+) -+ -+type TpacketHdr struct { -+ Status uint64 -+ Len uint32 -+ Snaplen uint32 -+ Mac uint16 -+ Net uint16 -+ Sec uint32 -+ Usec uint32 -+ _ [4]byte -+} -+ -+type Tpacket2Hdr struct { -+ Status uint32 -+ Len uint32 -+ Snaplen uint32 -+ Mac uint16 -+ Net uint16 -+ Sec uint32 -+ Nsec uint32 -+ Vlan_tci uint16 -+ Vlan_tpid uint16 -+ _ [4]uint8 -+} -+ -+type Tpacket3Hdr struct { -+ Next_offset uint32 -+ Sec uint32 -+ Nsec uint32 -+ Snaplen uint32 -+ Len uint32 -+ Status uint32 -+ Mac uint16 -+ Net uint16 -+ Hv1 TpacketHdrVariant1 -+ _ [8]uint8 -+} -+ -+type TpacketHdrVariant1 struct { -+ Rxhash uint32 -+ Vlan_tci uint32 -+ Vlan_tpid uint16 -+ _ uint16 -+} -+ -+type TpacketBlockDesc struct { -+ Version uint32 -+ To_priv uint32 -+ Hdr [40]byte -+} -+ -+type TpacketBDTS struct { -+ Sec uint32 -+ Usec uint32 -+} -+ -+type TpacketHdrV1 struct { -+ Block_status uint32 -+ Num_pkts uint32 -+ Offset_to_first_pkt uint32 -+ Blk_len uint32 -+ Seq_num uint64 -+ Ts_first_pkt TpacketBDTS -+ Ts_last_pkt TpacketBDTS -+} -+ -+type TpacketReq struct { -+ Block_size uint32 -+ Block_nr uint32 -+ Frame_size uint32 -+ Frame_nr uint32 -+} -+ -+type TpacketReq3 struct { -+ Block_size uint32 -+ Block_nr uint32 -+ Frame_size uint32 -+ Frame_nr uint32 -+ Retire_blk_tov uint32 -+ Sizeof_priv uint32 -+ Feature_req_word uint32 -+} -+ -+type TpacketStats struct { -+ Packets uint32 -+ Drops uint32 -+} -+ -+type TpacketStatsV3 struct { -+ Packets uint32 -+ Drops uint32 -+ Freeze_q_cnt uint32 -+} -+ -+type TpacketAuxdata struct { -+ Status uint32 -+ Len uint32 -+ Snaplen uint32 -+ Mac uint16 -+ Net uint16 -+ Vlan_tci uint16 -+ Vlan_tpid uint16 -+} -+ -+const ( -+ TPACKET_V1 = 0x0 -+ TPACKET_V2 = 0x1 -+ TPACKET_V3 = 0x2 -+) -+ -+const ( -+ SizeofTpacketHdr = 0x20 -+ SizeofTpacket2Hdr = 0x20 -+ SizeofTpacket3Hdr = 0x30 -+ -+ SizeofTpacketStats = 0x8 -+ SizeofTpacketStatsV3 = 0xc -+) -+ -+const ( -+ IFLA_UNSPEC = 0x0 -+ IFLA_ADDRESS = 0x1 -+ IFLA_BROADCAST = 0x2 -+ IFLA_IFNAME = 0x3 -+ IFLA_MTU = 0x4 -+ IFLA_LINK = 0x5 -+ IFLA_QDISC = 0x6 -+ IFLA_STATS = 0x7 -+ IFLA_COST = 0x8 -+ IFLA_PRIORITY = 0x9 -+ IFLA_MASTER = 0xa -+ IFLA_WIRELESS = 0xb -+ IFLA_PROTINFO = 0xc -+ IFLA_TXQLEN = 0xd -+ IFLA_MAP = 0xe -+ IFLA_WEIGHT = 0xf -+ IFLA_OPERSTATE = 0x10 -+ IFLA_LINKMODE = 0x11 -+ IFLA_LINKINFO = 0x12 -+ IFLA_NET_NS_PID = 0x13 -+ IFLA_IFALIAS = 0x14 -+ IFLA_NUM_VF = 0x15 -+ IFLA_VFINFO_LIST = 0x16 -+ IFLA_STATS64 = 0x17 -+ IFLA_VF_PORTS = 0x18 -+ IFLA_PORT_SELF = 0x19 -+ IFLA_AF_SPEC = 0x1a -+ IFLA_GROUP = 0x1b -+ IFLA_NET_NS_FD = 0x1c -+ IFLA_EXT_MASK = 0x1d -+ IFLA_PROMISCUITY = 0x1e -+ IFLA_NUM_TX_QUEUES = 0x1f -+ IFLA_NUM_RX_QUEUES = 0x20 -+ IFLA_CARRIER = 0x21 -+ IFLA_PHYS_PORT_ID = 0x22 -+ IFLA_CARRIER_CHANGES = 0x23 -+ IFLA_PHYS_SWITCH_ID = 0x24 -+ IFLA_LINK_NETNSID = 0x25 -+ IFLA_PHYS_PORT_NAME = 0x26 -+ IFLA_PROTO_DOWN = 0x27 -+ IFLA_GSO_MAX_SEGS = 0x28 -+ IFLA_GSO_MAX_SIZE = 0x29 -+ IFLA_PAD = 0x2a -+ IFLA_XDP = 0x2b -+ IFLA_EVENT = 0x2c -+ IFLA_NEW_NETNSID = 0x2d -+ IFLA_IF_NETNSID = 0x2e -+ -+ IFLA_CARRIER_UP_COUNT = 0x2f -+ IFLA_CARRIER_DOWN_COUNT = 0x30 -+ IFLA_NEW_IFINDEX = 0x31 -+ IFLA_MIN_MTU = 0x32 -+ IFLA_MAX_MTU = 0x33 -+ -+ IFLA_INET_UNSPEC = 0x0 -+ IFLA_INET_CONF = 0x1 -+ IFLA_INET6_UNSPEC = 0x0 -+ IFLA_INET6_FLAGS = 0x1 -+ IFLA_INET6_CONF = 0x2 -+ IFLA_INET6_STATS = 0x3 -+ IFLA_INET6_MCAST = 0x4 -+ IFLA_INET6_CACHEINFO = 0x5 -+ IFLA_INET6_ICMP6STATS = 0x6 -+ IFLA_INET6_TOKEN = 0x7 -+ IFLA_INET6_ADDR_GEN_MODE = 0x8 -+ IFLA_BR_UNSPEC = 0x0 -+ IFLA_BR_FORWARD_DELAY = 0x1 -+ IFLA_BR_HELLO_TIME = 0x2 -+ IFLA_BR_MAX_AGE = 0x3 -+ IFLA_BR_AGEING_TIME = 0x4 -+ IFLA_BR_STP_STATE = 0x5 -+ IFLA_BR_PRIORITY = 0x6 -+ IFLA_BR_VLAN_FILTERING = 0x7 -+ IFLA_BR_VLAN_PROTOCOL = 0x8 -+ IFLA_BR_GROUP_FWD_MASK = 0x9 -+ IFLA_BR_ROOT_ID = 0xa -+ IFLA_BR_BRIDGE_ID = 0xb -+ IFLA_BR_ROOT_PORT = 0xc -+ IFLA_BR_ROOT_PATH_COST = 0xd -+ IFLA_BR_TOPOLOGY_CHANGE = 0xe -+ IFLA_BR_TOPOLOGY_CHANGE_DETECTED = 0xf -+ IFLA_BR_HELLO_TIMER = 0x10 -+ IFLA_BR_TCN_TIMER = 0x11 -+ IFLA_BR_TOPOLOGY_CHANGE_TIMER = 0x12 -+ IFLA_BR_GC_TIMER = 0x13 -+ IFLA_BR_GROUP_ADDR = 0x14 -+ IFLA_BR_FDB_FLUSH = 0x15 -+ IFLA_BR_MCAST_ROUTER = 0x16 -+ IFLA_BR_MCAST_SNOOPING = 0x17 -+ IFLA_BR_MCAST_QUERY_USE_IFADDR = 0x18 -+ IFLA_BR_MCAST_QUERIER = 0x19 -+ IFLA_BR_MCAST_HASH_ELASTICITY = 0x1a -+ IFLA_BR_MCAST_HASH_MAX = 0x1b -+ IFLA_BR_MCAST_LAST_MEMBER_CNT = 0x1c -+ IFLA_BR_MCAST_STARTUP_QUERY_CNT = 0x1d -+ IFLA_BR_MCAST_LAST_MEMBER_INTVL = 0x1e -+ IFLA_BR_MCAST_MEMBERSHIP_INTVL = 0x1f -+ IFLA_BR_MCAST_QUERIER_INTVL = 0x20 -+ IFLA_BR_MCAST_QUERY_INTVL = 0x21 -+ IFLA_BR_MCAST_QUERY_RESPONSE_INTVL = 0x22 -+ IFLA_BR_MCAST_STARTUP_QUERY_INTVL = 0x23 -+ IFLA_BR_NF_CALL_IPTABLES = 0x24 -+ IFLA_BR_NF_CALL_IP6TABLES = 0x25 -+ IFLA_BR_NF_CALL_ARPTABLES = 0x26 -+ IFLA_BR_VLAN_DEFAULT_PVID = 0x27 -+ IFLA_BR_PAD = 0x28 -+ IFLA_BR_VLAN_STATS_ENABLED = 0x29 -+ IFLA_BR_MCAST_STATS_ENABLED = 0x2a -+ IFLA_BR_MCAST_IGMP_VERSION = 0x2b -+ IFLA_BR_MCAST_MLD_VERSION = 0x2c -+ -+ IFLA_BRPORT_UNSPEC = 0x0 -+ IFLA_BRPORT_STATE = 0x1 -+ IFLA_BRPORT_PRIORITY = 0x2 -+ IFLA_BRPORT_COST = 0x3 -+ IFLA_BRPORT_MODE = 0x4 -+ IFLA_BRPORT_GUARD = 0x5 -+ IFLA_BRPORT_PROTECT = 0x6 -+ IFLA_BRPORT_FAST_LEAVE = 0x7 -+ IFLA_BRPORT_LEARNING = 0x8 -+ IFLA_BRPORT_UNICAST_FLOOD = 0x9 -+ IFLA_BRPORT_PROXYARP = 0xa -+ IFLA_BRPORT_LEARNING_SYNC = 0xb -+ IFLA_BRPORT_PROXYARP_WIFI = 0xc -+ IFLA_BRPORT_ROOT_ID = 0xd -+ IFLA_BRPORT_BRIDGE_ID = 0xe -+ IFLA_BRPORT_DESIGNATED_PORT = 0xf -+ IFLA_BRPORT_DESIGNATED_COST = 0x10 -+ IFLA_BRPORT_ID = 0x11 -+ IFLA_BRPORT_NO = 0x12 -+ IFLA_BRPORT_TOPOLOGY_CHANGE_ACK = 0x13 -+ IFLA_BRPORT_CONFIG_PENDING = 0x14 -+ IFLA_BRPORT_MESSAGE_AGE_TIMER = 0x15 -+ IFLA_BRPORT_FORWARD_DELAY_TIMER = 0x16 -+ IFLA_BRPORT_HOLD_TIMER = 0x17 -+ IFLA_BRPORT_FLUSH = 0x18 -+ IFLA_BRPORT_MULTICAST_ROUTER = 0x19 -+ IFLA_BRPORT_PAD = 0x1a -+ IFLA_BRPORT_MCAST_FLOOD = 0x1b -+ IFLA_BRPORT_MCAST_TO_UCAST = 0x1c -+ IFLA_BRPORT_VLAN_TUNNEL = 0x1d -+ IFLA_BRPORT_BCAST_FLOOD = 0x1e -+ IFLA_BRPORT_GROUP_FWD_MASK = 0x1f -+ IFLA_BRPORT_NEIGH_SUPPRESS = 0x20 -+ IFLA_BRPORT_ISOLATED = 0x21 -+ IFLA_BRPORT_BACKUP_PORT = 0x22 -+ -+ IFLA_INFO_UNSPEC = 0x0 -+ IFLA_INFO_KIND = 0x1 -+ IFLA_INFO_DATA = 0x2 -+ IFLA_INFO_XSTATS = 0x3 -+ IFLA_INFO_SLAVE_KIND = 0x4 -+ IFLA_INFO_SLAVE_DATA = 0x5 -+ IFLA_VLAN_UNSPEC = 0x0 -+ IFLA_VLAN_ID = 0x1 -+ IFLA_VLAN_FLAGS = 0x2 -+ IFLA_VLAN_EGRESS_QOS = 0x3 -+ IFLA_VLAN_INGRESS_QOS = 0x4 -+ IFLA_VLAN_PROTOCOL = 0x5 -+ IFLA_VLAN_QOS_UNSPEC = 0x0 -+ IFLA_VLAN_QOS_MAPPING = 0x1 -+ IFLA_MACVLAN_UNSPEC = 0x0 -+ IFLA_MACVLAN_MODE = 0x1 -+ IFLA_MACVLAN_FLAGS = 0x2 -+ IFLA_MACVLAN_MACADDR_MODE = 0x3 -+ IFLA_MACVLAN_MACADDR = 0x4 -+ IFLA_MACVLAN_MACADDR_DATA = 0x5 -+ IFLA_MACVLAN_MACADDR_COUNT = 0x6 -+ IFLA_VRF_UNSPEC = 0x0 -+ IFLA_VRF_TABLE = 0x1 -+ IFLA_VRF_PORT_UNSPEC = 0x0 -+ IFLA_VRF_PORT_TABLE = 0x1 -+ IFLA_MACSEC_UNSPEC = 0x0 -+ IFLA_MACSEC_SCI = 0x1 -+ IFLA_MACSEC_PORT = 0x2 -+ IFLA_MACSEC_ICV_LEN = 0x3 -+ IFLA_MACSEC_CIPHER_SUITE = 0x4 -+ IFLA_MACSEC_WINDOW = 0x5 -+ IFLA_MACSEC_ENCODING_SA = 0x6 -+ IFLA_MACSEC_ENCRYPT = 0x7 -+ IFLA_MACSEC_PROTECT = 0x8 -+ IFLA_MACSEC_INC_SCI = 0x9 -+ IFLA_MACSEC_ES = 0xa -+ IFLA_MACSEC_SCB = 0xb -+ IFLA_MACSEC_REPLAY_PROTECT = 0xc -+ IFLA_MACSEC_VALIDATION = 0xd -+ IFLA_MACSEC_PAD = 0xe -+ -+ IFLA_XFRM_UNSPEC = 0x0 -+ IFLA_XFRM_LINK = 0x1 -+ IFLA_XFRM_IF_ID = 0x2 -+ IFLA_IPVLAN_UNSPEC = 0x0 -+ IFLA_IPVLAN_MODE = 0x1 -+ IFLA_IPVLAN_FLAGS = 0x2 -+ IFLA_VXLAN_UNSPEC = 0x0 -+ IFLA_VXLAN_ID = 0x1 -+ IFLA_VXLAN_GROUP = 0x2 -+ IFLA_VXLAN_LINK = 0x3 -+ IFLA_VXLAN_LOCAL = 0x4 -+ IFLA_VXLAN_TTL = 0x5 -+ IFLA_VXLAN_TOS = 0x6 -+ IFLA_VXLAN_LEARNING = 0x7 -+ IFLA_VXLAN_AGEING = 0x8 -+ IFLA_VXLAN_LIMIT = 0x9 -+ IFLA_VXLAN_PORT_RANGE = 0xa -+ IFLA_VXLAN_PROXY = 0xb -+ IFLA_VXLAN_RSC = 0xc -+ IFLA_VXLAN_L2MISS = 0xd -+ IFLA_VXLAN_L3MISS = 0xe -+ IFLA_VXLAN_PORT = 0xf -+ IFLA_VXLAN_GROUP6 = 0x10 -+ IFLA_VXLAN_LOCAL6 = 0x11 -+ IFLA_VXLAN_UDP_CSUM = 0x12 -+ IFLA_VXLAN_UDP_ZERO_CSUM6_TX = 0x13 -+ IFLA_VXLAN_UDP_ZERO_CSUM6_RX = 0x14 -+ IFLA_VXLAN_REMCSUM_TX = 0x15 -+ IFLA_VXLAN_REMCSUM_RX = 0x16 -+ IFLA_VXLAN_GBP = 0x17 -+ IFLA_VXLAN_REMCSUM_NOPARTIAL = 0x18 -+ IFLA_VXLAN_COLLECT_METADATA = 0x19 -+ IFLA_VXLAN_LABEL = 0x1a -+ IFLA_VXLAN_GPE = 0x1b -+ IFLA_VXLAN_TTL_INHERIT = 0x1c -+ -+ IFLA_GENEVE_UNSPEC = 0x0 -+ IFLA_GENEVE_ID = 0x1 -+ IFLA_GENEVE_REMOTE = 0x2 -+ IFLA_GENEVE_TTL = 0x3 -+ IFLA_GENEVE_TOS = 0x4 -+ IFLA_GENEVE_PORT = 0x5 -+ IFLA_GENEVE_COLLECT_METADATA = 0x6 -+ IFLA_GENEVE_REMOTE6 = 0x7 -+ IFLA_GENEVE_UDP_CSUM = 0x8 -+ IFLA_GENEVE_UDP_ZERO_CSUM6_TX = 0x9 -+ IFLA_GENEVE_UDP_ZERO_CSUM6_RX = 0xa -+ IFLA_GENEVE_LABEL = 0xb -+ -+ IFLA_PPP_UNSPEC = 0x0 -+ IFLA_PPP_DEV_FD = 0x1 -+ IFLA_GTP_UNSPEC = 0x0 -+ IFLA_GTP_FD0 = 0x1 -+ IFLA_GTP_FD1 = 0x2 -+ IFLA_GTP_PDP_HASHSIZE = 0x3 -+ IFLA_GTP_ROLE = 0x4 -+ IFLA_BOND_UNSPEC = 0x0 -+ IFLA_BOND_MODE = 0x1 -+ IFLA_BOND_ACTIVE_SLAVE = 0x2 -+ IFLA_BOND_MIIMON = 0x3 -+ IFLA_BOND_UPDELAY = 0x4 -+ IFLA_BOND_DOWNDELAY = 0x5 -+ IFLA_BOND_USE_CARRIER = 0x6 -+ IFLA_BOND_ARP_INTERVAL = 0x7 -+ IFLA_BOND_ARP_IP_TARGET = 0x8 -+ IFLA_BOND_ARP_VALIDATE = 0x9 -+ IFLA_BOND_ARP_ALL_TARGETS = 0xa -+ IFLA_BOND_PRIMARY = 0xb -+ IFLA_BOND_PRIMARY_RESELECT = 0xc -+ IFLA_BOND_FAIL_OVER_MAC = 0xd -+ IFLA_BOND_XMIT_HASH_POLICY = 0xe -+ IFLA_BOND_RESEND_IGMP = 0xf -+ IFLA_BOND_NUM_PEER_NOTIF = 0x10 -+ IFLA_BOND_ALL_SLAVES_ACTIVE = 0x11 -+ IFLA_BOND_MIN_LINKS = 0x12 -+ IFLA_BOND_LP_INTERVAL = 0x13 -+ IFLA_BOND_PACKETS_PER_SLAVE = 0x14 -+ IFLA_BOND_AD_LACP_RATE = 0x15 -+ IFLA_BOND_AD_SELECT = 0x16 -+ IFLA_BOND_AD_INFO = 0x17 -+ IFLA_BOND_AD_ACTOR_SYS_PRIO = 0x18 -+ IFLA_BOND_AD_USER_PORT_KEY = 0x19 -+ IFLA_BOND_AD_ACTOR_SYSTEM = 0x1a -+ IFLA_BOND_TLB_DYNAMIC_LB = 0x1b -+ -+ IFLA_BOND_AD_INFO_UNSPEC = 0x0 -+ IFLA_BOND_AD_INFO_AGGREGATOR = 0x1 -+ IFLA_BOND_AD_INFO_NUM_PORTS = 0x2 -+ IFLA_BOND_AD_INFO_ACTOR_KEY = 0x3 -+ IFLA_BOND_AD_INFO_PARTNER_KEY = 0x4 -+ IFLA_BOND_AD_INFO_PARTNER_MAC = 0x5 -+ IFLA_BOND_SLAVE_UNSPEC = 0x0 -+ IFLA_BOND_SLAVE_STATE = 0x1 -+ IFLA_BOND_SLAVE_MII_STATUS = 0x2 -+ IFLA_BOND_SLAVE_LINK_FAILURE_COUNT = 0x3 -+ IFLA_BOND_SLAVE_PERM_HWADDR = 0x4 -+ IFLA_BOND_SLAVE_QUEUE_ID = 0x5 -+ IFLA_BOND_SLAVE_AD_AGGREGATOR_ID = 0x6 -+ IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE = 0x7 -+ IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE = 0x8 -+ IFLA_VF_INFO_UNSPEC = 0x0 -+ IFLA_VF_INFO = 0x1 -+ IFLA_VF_UNSPEC = 0x0 -+ IFLA_VF_MAC = 0x1 -+ IFLA_VF_VLAN = 0x2 -+ IFLA_VF_TX_RATE = 0x3 -+ IFLA_VF_SPOOFCHK = 0x4 -+ IFLA_VF_LINK_STATE = 0x5 -+ IFLA_VF_RATE = 0x6 -+ IFLA_VF_RSS_QUERY_EN = 0x7 -+ IFLA_VF_STATS = 0x8 -+ IFLA_VF_TRUST = 0x9 -+ IFLA_VF_IB_NODE_GUID = 0xa -+ IFLA_VF_IB_PORT_GUID = 0xb -+ IFLA_VF_VLAN_LIST = 0xc -+ -+ IFLA_VF_VLAN_INFO_UNSPEC = 0x0 -+ IFLA_VF_VLAN_INFO = 0x1 -+ IFLA_VF_LINK_STATE_AUTO = 0x0 -+ IFLA_VF_LINK_STATE_ENABLE = 0x1 -+ IFLA_VF_LINK_STATE_DISABLE = 0x2 -+ IFLA_VF_STATS_RX_PACKETS = 0x0 -+ IFLA_VF_STATS_TX_PACKETS = 0x1 -+ IFLA_VF_STATS_RX_BYTES = 0x2 -+ IFLA_VF_STATS_TX_BYTES = 0x3 -+ IFLA_VF_STATS_BROADCAST = 0x4 -+ IFLA_VF_STATS_MULTICAST = 0x5 -+ IFLA_VF_STATS_PAD = 0x6 -+ IFLA_VF_STATS_RX_DROPPED = 0x7 -+ IFLA_VF_STATS_TX_DROPPED = 0x8 -+ IFLA_VF_PORT_UNSPEC = 0x0 -+ IFLA_VF_PORT = 0x1 -+ IFLA_PORT_UNSPEC = 0x0 -+ IFLA_PORT_VF = 0x1 -+ IFLA_PORT_PROFILE = 0x2 -+ IFLA_PORT_VSI_TYPE = 0x3 -+ IFLA_PORT_INSTANCE_UUID = 0x4 -+ IFLA_PORT_HOST_UUID = 0x5 -+ IFLA_PORT_REQUEST = 0x6 -+ IFLA_PORT_RESPONSE = 0x7 -+ IFLA_IPOIB_UNSPEC = 0x0 -+ IFLA_IPOIB_PKEY = 0x1 -+ IFLA_IPOIB_MODE = 0x2 -+ IFLA_IPOIB_UMCAST = 0x3 -+ IFLA_HSR_UNSPEC = 0x0 -+ IFLA_HSR_SLAVE1 = 0x1 -+ IFLA_HSR_SLAVE2 = 0x2 -+ IFLA_HSR_MULTICAST_SPEC = 0x3 -+ IFLA_HSR_SUPERVISION_ADDR = 0x4 -+ IFLA_HSR_SEQ_NR = 0x5 -+ IFLA_HSR_VERSION = 0x6 -+ -+ IFLA_STATS_UNSPEC = 0x0 -+ IFLA_STATS_LINK_64 = 0x1 -+ IFLA_STATS_LINK_XSTATS = 0x2 -+ IFLA_STATS_LINK_XSTATS_SLAVE = 0x3 -+ IFLA_STATS_LINK_OFFLOAD_XSTATS = 0x4 -+ IFLA_STATS_AF_SPEC = 0x5 -+ IFLA_OFFLOAD_XSTATS_UNSPEC = 0x0 -+ IFLA_OFFLOAD_XSTATS_CPU_HIT = 0x1 -+ IFLA_XDP_UNSPEC = 0x0 -+ IFLA_XDP_FD = 0x1 -+ IFLA_XDP_ATTACHED = 0x2 -+ IFLA_XDP_FLAGS = 0x3 -+ IFLA_XDP_PROG_ID = 0x4 -+ IFLA_XDP_DRV_PROG_ID = 0x5 -+ IFLA_XDP_SKB_PROG_ID = 0x6 -+ IFLA_XDP_HW_PROG_ID = 0x7 -+ -+ IFLA_EVENT_NONE = 0x0 -+ IFLA_EVENT_REBOOT = 0x1 -+ IFLA_EVENT_FEATURES = 0x2 -+ IFLA_EVENT_BONDING_FAILOVER = 0x3 -+ IFLA_EVENT_NOTIFY_PEERS = 0x4 -+ IFLA_EVENT_IGMP_RESEND = 0x5 -+ IFLA_EVENT_BONDING_OPTIONS = 0x6 -+ IFLA_TUN_UNSPEC = 0x0 -+ IFLA_TUN_OWNER = 0x1 -+ IFLA_TUN_GROUP = 0x2 -+ IFLA_TUN_TYPE = 0x3 -+ IFLA_TUN_PI = 0x4 -+ IFLA_TUN_VNET_HDR = 0x5 -+ IFLA_TUN_PERSIST = 0x6 -+ IFLA_TUN_MULTI_QUEUE = 0x7 -+ IFLA_TUN_NUM_QUEUES = 0x8 -+ IFLA_TUN_NUM_DISABLED_QUEUES = 0x9 -+ IFLA_RMNET_UNSPEC = 0x0 -+ IFLA_RMNET_MUX_ID = 0x1 -+ IFLA_RMNET_FLAGS = 0x2 -+) -+ -+const ( -+ NF_INET_PRE_ROUTING = 0x0 -+ NF_INET_LOCAL_IN = 0x1 -+ NF_INET_FORWARD = 0x2 -+ NF_INET_LOCAL_OUT = 0x3 -+ NF_INET_POST_ROUTING = 0x4 -+ NF_INET_NUMHOOKS = 0x5 -+) -+ -+const ( -+ NF_NETDEV_INGRESS = 0x0 -+ NF_NETDEV_NUMHOOKS = 0x1 -+) -+ -+const ( -+ NFPROTO_UNSPEC = 0x0 -+ NFPROTO_INET = 0x1 -+ NFPROTO_IPV4 = 0x2 -+ NFPROTO_ARP = 0x3 -+ NFPROTO_NETDEV = 0x5 -+ NFPROTO_BRIDGE = 0x7 -+ NFPROTO_IPV6 = 0xa -+ NFPROTO_DECNET = 0xc -+ NFPROTO_NUMPROTO = 0xd -+) -+ -+type Nfgenmsg struct { -+ Nfgen_family uint8 -+ Version uint8 -+ Res_id uint16 -+} -+ -+const ( -+ NFNL_BATCH_UNSPEC = 0x0 -+ NFNL_BATCH_GENID = 0x1 -+) -+ -+const ( -+ NFT_REG_VERDICT = 0x0 -+ NFT_REG_1 = 0x1 -+ NFT_REG_2 = 0x2 -+ NFT_REG_3 = 0x3 -+ NFT_REG_4 = 0x4 -+ NFT_REG32_00 = 0x8 -+ NFT_REG32_01 = 0x9 -+ NFT_REG32_02 = 0xa -+ NFT_REG32_03 = 0xb -+ NFT_REG32_04 = 0xc -+ NFT_REG32_05 = 0xd -+ NFT_REG32_06 = 0xe -+ NFT_REG32_07 = 0xf -+ NFT_REG32_08 = 0x10 -+ NFT_REG32_09 = 0x11 -+ NFT_REG32_10 = 0x12 -+ NFT_REG32_11 = 0x13 -+ NFT_REG32_12 = 0x14 -+ NFT_REG32_13 = 0x15 -+ NFT_REG32_14 = 0x16 -+ NFT_REG32_15 = 0x17 -+ NFT_CONTINUE = -0x1 -+ NFT_BREAK = -0x2 -+ NFT_JUMP = -0x3 -+ NFT_GOTO = -0x4 -+ NFT_RETURN = -0x5 -+ NFT_MSG_NEWTABLE = 0x0 -+ NFT_MSG_GETTABLE = 0x1 -+ NFT_MSG_DELTABLE = 0x2 -+ NFT_MSG_NEWCHAIN = 0x3 -+ NFT_MSG_GETCHAIN = 0x4 -+ NFT_MSG_DELCHAIN = 0x5 -+ NFT_MSG_NEWRULE = 0x6 -+ NFT_MSG_GETRULE = 0x7 -+ NFT_MSG_DELRULE = 0x8 -+ NFT_MSG_NEWSET = 0x9 -+ NFT_MSG_GETSET = 0xa -+ NFT_MSG_DELSET = 0xb -+ NFT_MSG_NEWSETELEM = 0xc -+ NFT_MSG_GETSETELEM = 0xd -+ NFT_MSG_DELSETELEM = 0xe -+ NFT_MSG_NEWGEN = 0xf -+ NFT_MSG_GETGEN = 0x10 -+ NFT_MSG_TRACE = 0x11 -+ NFT_MSG_NEWOBJ = 0x12 -+ NFT_MSG_GETOBJ = 0x13 -+ NFT_MSG_DELOBJ = 0x14 -+ NFT_MSG_GETOBJ_RESET = 0x15 -+ NFT_MSG_MAX = 0x19 -+ -+ NFTA_LIST_ELEM = 0x1 -+ NFTA_HOOK_UNSPEC = 0x0 -+ NFTA_HOOK_HOOKNUM = 0x1 -+ NFTA_HOOK_PRIORITY = 0x2 -+ NFTA_HOOK_DEV = 0x3 -+ NFT_TABLE_F_DORMANT = 0x1 -+ NFTA_TABLE_UNSPEC = 0x0 -+ NFTA_TABLE_NAME = 0x1 -+ NFTA_TABLE_FLAGS = 0x2 -+ NFTA_TABLE_USE = 0x3 -+ NFTA_CHAIN_UNSPEC = 0x0 -+ NFTA_CHAIN_TABLE = 0x1 -+ NFTA_CHAIN_HANDLE = 0x2 -+ NFTA_CHAIN_NAME = 0x3 -+ NFTA_CHAIN_HOOK = 0x4 -+ NFTA_CHAIN_POLICY = 0x5 -+ NFTA_CHAIN_USE = 0x6 -+ NFTA_CHAIN_TYPE = 0x7 -+ NFTA_CHAIN_COUNTERS = 0x8 -+ NFTA_CHAIN_PAD = 0x9 -+ NFTA_RULE_UNSPEC = 0x0 -+ NFTA_RULE_TABLE = 0x1 -+ NFTA_RULE_CHAIN = 0x2 -+ NFTA_RULE_HANDLE = 0x3 -+ NFTA_RULE_EXPRESSIONS = 0x4 -+ NFTA_RULE_COMPAT = 0x5 -+ NFTA_RULE_POSITION = 0x6 -+ NFTA_RULE_USERDATA = 0x7 -+ NFTA_RULE_PAD = 0x8 -+ NFTA_RULE_ID = 0x9 -+ NFT_RULE_COMPAT_F_INV = 0x2 -+ NFT_RULE_COMPAT_F_MASK = 0x2 -+ NFTA_RULE_COMPAT_UNSPEC = 0x0 -+ NFTA_RULE_COMPAT_PROTO = 0x1 -+ NFTA_RULE_COMPAT_FLAGS = 0x2 -+ NFT_SET_ANONYMOUS = 0x1 -+ NFT_SET_CONSTANT = 0x2 -+ NFT_SET_INTERVAL = 0x4 -+ NFT_SET_MAP = 0x8 -+ NFT_SET_TIMEOUT = 0x10 -+ NFT_SET_EVAL = 0x20 -+ NFT_SET_OBJECT = 0x40 -+ NFT_SET_POL_PERFORMANCE = 0x0 -+ NFT_SET_POL_MEMORY = 0x1 -+ NFTA_SET_DESC_UNSPEC = 0x0 -+ NFTA_SET_DESC_SIZE = 0x1 -+ NFTA_SET_UNSPEC = 0x0 -+ NFTA_SET_TABLE = 0x1 -+ NFTA_SET_NAME = 0x2 -+ NFTA_SET_FLAGS = 0x3 -+ NFTA_SET_KEY_TYPE = 0x4 -+ NFTA_SET_KEY_LEN = 0x5 -+ NFTA_SET_DATA_TYPE = 0x6 -+ NFTA_SET_DATA_LEN = 0x7 -+ NFTA_SET_POLICY = 0x8 -+ NFTA_SET_DESC = 0x9 -+ NFTA_SET_ID = 0xa -+ NFTA_SET_TIMEOUT = 0xb -+ NFTA_SET_GC_INTERVAL = 0xc -+ NFTA_SET_USERDATA = 0xd -+ NFTA_SET_PAD = 0xe -+ NFTA_SET_OBJ_TYPE = 0xf -+ NFT_SET_ELEM_INTERVAL_END = 0x1 -+ NFTA_SET_ELEM_UNSPEC = 0x0 -+ NFTA_SET_ELEM_KEY = 0x1 -+ NFTA_SET_ELEM_DATA = 0x2 -+ NFTA_SET_ELEM_FLAGS = 0x3 -+ NFTA_SET_ELEM_TIMEOUT = 0x4 -+ NFTA_SET_ELEM_EXPIRATION = 0x5 -+ NFTA_SET_ELEM_USERDATA = 0x6 -+ NFTA_SET_ELEM_EXPR = 0x7 -+ NFTA_SET_ELEM_PAD = 0x8 -+ NFTA_SET_ELEM_OBJREF = 0x9 -+ NFTA_SET_ELEM_LIST_UNSPEC = 0x0 -+ NFTA_SET_ELEM_LIST_TABLE = 0x1 -+ NFTA_SET_ELEM_LIST_SET = 0x2 -+ NFTA_SET_ELEM_LIST_ELEMENTS = 0x3 -+ NFTA_SET_ELEM_LIST_SET_ID = 0x4 -+ NFT_DATA_VALUE = 0x0 -+ NFT_DATA_VERDICT = 0xffffff00 -+ NFTA_DATA_UNSPEC = 0x0 -+ NFTA_DATA_VALUE = 0x1 -+ NFTA_DATA_VERDICT = 0x2 -+ NFTA_VERDICT_UNSPEC = 0x0 -+ NFTA_VERDICT_CODE = 0x1 -+ NFTA_VERDICT_CHAIN = 0x2 -+ NFTA_EXPR_UNSPEC = 0x0 -+ NFTA_EXPR_NAME = 0x1 -+ NFTA_EXPR_DATA = 0x2 -+ NFTA_IMMEDIATE_UNSPEC = 0x0 -+ NFTA_IMMEDIATE_DREG = 0x1 -+ NFTA_IMMEDIATE_DATA = 0x2 -+ NFTA_BITWISE_UNSPEC = 0x0 -+ NFTA_BITWISE_SREG = 0x1 -+ NFTA_BITWISE_DREG = 0x2 -+ NFTA_BITWISE_LEN = 0x3 -+ NFTA_BITWISE_MASK = 0x4 -+ NFTA_BITWISE_XOR = 0x5 -+ NFT_BYTEORDER_NTOH = 0x0 -+ NFT_BYTEORDER_HTON = 0x1 -+ NFTA_BYTEORDER_UNSPEC = 0x0 -+ NFTA_BYTEORDER_SREG = 0x1 -+ NFTA_BYTEORDER_DREG = 0x2 -+ NFTA_BYTEORDER_OP = 0x3 -+ NFTA_BYTEORDER_LEN = 0x4 -+ NFTA_BYTEORDER_SIZE = 0x5 -+ NFT_CMP_EQ = 0x0 -+ NFT_CMP_NEQ = 0x1 -+ NFT_CMP_LT = 0x2 -+ NFT_CMP_LTE = 0x3 -+ NFT_CMP_GT = 0x4 -+ NFT_CMP_GTE = 0x5 -+ NFTA_CMP_UNSPEC = 0x0 -+ NFTA_CMP_SREG = 0x1 -+ NFTA_CMP_OP = 0x2 -+ NFTA_CMP_DATA = 0x3 -+ NFT_RANGE_EQ = 0x0 -+ NFT_RANGE_NEQ = 0x1 -+ NFTA_RANGE_UNSPEC = 0x0 -+ NFTA_RANGE_SREG = 0x1 -+ NFTA_RANGE_OP = 0x2 -+ NFTA_RANGE_FROM_DATA = 0x3 -+ NFTA_RANGE_TO_DATA = 0x4 -+ NFT_LOOKUP_F_INV = 0x1 -+ NFTA_LOOKUP_UNSPEC = 0x0 -+ NFTA_LOOKUP_SET = 0x1 -+ NFTA_LOOKUP_SREG = 0x2 -+ NFTA_LOOKUP_DREG = 0x3 -+ NFTA_LOOKUP_SET_ID = 0x4 -+ NFTA_LOOKUP_FLAGS = 0x5 -+ NFT_DYNSET_OP_ADD = 0x0 -+ NFT_DYNSET_OP_UPDATE = 0x1 -+ NFT_DYNSET_F_INV = 0x1 -+ NFTA_DYNSET_UNSPEC = 0x0 -+ NFTA_DYNSET_SET_NAME = 0x1 -+ NFTA_DYNSET_SET_ID = 0x2 -+ NFTA_DYNSET_OP = 0x3 -+ NFTA_DYNSET_SREG_KEY = 0x4 -+ NFTA_DYNSET_SREG_DATA = 0x5 -+ NFTA_DYNSET_TIMEOUT = 0x6 -+ NFTA_DYNSET_EXPR = 0x7 -+ NFTA_DYNSET_PAD = 0x8 -+ NFTA_DYNSET_FLAGS = 0x9 -+ NFT_PAYLOAD_LL_HEADER = 0x0 -+ NFT_PAYLOAD_NETWORK_HEADER = 0x1 -+ NFT_PAYLOAD_TRANSPORT_HEADER = 0x2 -+ NFT_PAYLOAD_CSUM_NONE = 0x0 -+ NFT_PAYLOAD_CSUM_INET = 0x1 -+ NFT_PAYLOAD_L4CSUM_PSEUDOHDR = 0x1 -+ NFTA_PAYLOAD_UNSPEC = 0x0 -+ NFTA_PAYLOAD_DREG = 0x1 -+ NFTA_PAYLOAD_BASE = 0x2 -+ NFTA_PAYLOAD_OFFSET = 0x3 -+ NFTA_PAYLOAD_LEN = 0x4 -+ NFTA_PAYLOAD_SREG = 0x5 -+ NFTA_PAYLOAD_CSUM_TYPE = 0x6 -+ NFTA_PAYLOAD_CSUM_OFFSET = 0x7 -+ NFTA_PAYLOAD_CSUM_FLAGS = 0x8 -+ NFT_EXTHDR_F_PRESENT = 0x1 -+ NFT_EXTHDR_OP_IPV6 = 0x0 -+ NFT_EXTHDR_OP_TCPOPT = 0x1 -+ NFTA_EXTHDR_UNSPEC = 0x0 -+ NFTA_EXTHDR_DREG = 0x1 -+ NFTA_EXTHDR_TYPE = 0x2 -+ NFTA_EXTHDR_OFFSET = 0x3 -+ NFTA_EXTHDR_LEN = 0x4 -+ NFTA_EXTHDR_FLAGS = 0x5 -+ NFTA_EXTHDR_OP = 0x6 -+ NFTA_EXTHDR_SREG = 0x7 -+ NFT_META_LEN = 0x0 -+ NFT_META_PROTOCOL = 0x1 -+ NFT_META_PRIORITY = 0x2 -+ NFT_META_MARK = 0x3 -+ NFT_META_IIF = 0x4 -+ NFT_META_OIF = 0x5 -+ NFT_META_IIFNAME = 0x6 -+ NFT_META_OIFNAME = 0x7 -+ NFT_META_IIFTYPE = 0x8 -+ NFT_META_OIFTYPE = 0x9 -+ NFT_META_SKUID = 0xa -+ NFT_META_SKGID = 0xb -+ NFT_META_NFTRACE = 0xc -+ NFT_META_RTCLASSID = 0xd -+ NFT_META_SECMARK = 0xe -+ NFT_META_NFPROTO = 0xf -+ NFT_META_L4PROTO = 0x10 -+ NFT_META_BRI_IIFNAME = 0x11 -+ NFT_META_BRI_OIFNAME = 0x12 -+ NFT_META_PKTTYPE = 0x13 -+ NFT_META_CPU = 0x14 -+ NFT_META_IIFGROUP = 0x15 -+ NFT_META_OIFGROUP = 0x16 -+ NFT_META_CGROUP = 0x17 -+ NFT_META_PRANDOM = 0x18 -+ NFT_RT_CLASSID = 0x0 -+ NFT_RT_NEXTHOP4 = 0x1 -+ NFT_RT_NEXTHOP6 = 0x2 -+ NFT_RT_TCPMSS = 0x3 -+ NFT_HASH_JENKINS = 0x0 -+ NFT_HASH_SYM = 0x1 -+ NFTA_HASH_UNSPEC = 0x0 -+ NFTA_HASH_SREG = 0x1 -+ NFTA_HASH_DREG = 0x2 -+ NFTA_HASH_LEN = 0x3 -+ NFTA_HASH_MODULUS = 0x4 -+ NFTA_HASH_SEED = 0x5 -+ NFTA_HASH_OFFSET = 0x6 -+ NFTA_HASH_TYPE = 0x7 -+ NFTA_META_UNSPEC = 0x0 -+ NFTA_META_DREG = 0x1 -+ NFTA_META_KEY = 0x2 -+ NFTA_META_SREG = 0x3 -+ NFTA_RT_UNSPEC = 0x0 -+ NFTA_RT_DREG = 0x1 -+ NFTA_RT_KEY = 0x2 -+ NFT_CT_STATE = 0x0 -+ NFT_CT_DIRECTION = 0x1 -+ NFT_CT_STATUS = 0x2 -+ NFT_CT_MARK = 0x3 -+ NFT_CT_SECMARK = 0x4 -+ NFT_CT_EXPIRATION = 0x5 -+ NFT_CT_HELPER = 0x6 -+ NFT_CT_L3PROTOCOL = 0x7 -+ NFT_CT_SRC = 0x8 -+ NFT_CT_DST = 0x9 -+ NFT_CT_PROTOCOL = 0xa -+ NFT_CT_PROTO_SRC = 0xb -+ NFT_CT_PROTO_DST = 0xc -+ NFT_CT_LABELS = 0xd -+ NFT_CT_PKTS = 0xe -+ NFT_CT_BYTES = 0xf -+ NFT_CT_AVGPKT = 0x10 -+ NFT_CT_ZONE = 0x11 -+ NFT_CT_EVENTMASK = 0x12 -+ NFTA_CT_UNSPEC = 0x0 -+ NFTA_CT_DREG = 0x1 -+ NFTA_CT_KEY = 0x2 -+ NFTA_CT_DIRECTION = 0x3 -+ NFTA_CT_SREG = 0x4 -+ NFT_LIMIT_PKTS = 0x0 -+ NFT_LIMIT_PKT_BYTES = 0x1 -+ NFT_LIMIT_F_INV = 0x1 -+ NFTA_LIMIT_UNSPEC = 0x0 -+ NFTA_LIMIT_RATE = 0x1 -+ NFTA_LIMIT_UNIT = 0x2 -+ NFTA_LIMIT_BURST = 0x3 -+ NFTA_LIMIT_TYPE = 0x4 -+ NFTA_LIMIT_FLAGS = 0x5 -+ NFTA_LIMIT_PAD = 0x6 -+ NFTA_COUNTER_UNSPEC = 0x0 -+ NFTA_COUNTER_BYTES = 0x1 -+ NFTA_COUNTER_PACKETS = 0x2 -+ NFTA_COUNTER_PAD = 0x3 -+ NFTA_LOG_UNSPEC = 0x0 -+ NFTA_LOG_GROUP = 0x1 -+ NFTA_LOG_PREFIX = 0x2 -+ NFTA_LOG_SNAPLEN = 0x3 -+ NFTA_LOG_QTHRESHOLD = 0x4 -+ NFTA_LOG_LEVEL = 0x5 -+ NFTA_LOG_FLAGS = 0x6 -+ NFTA_QUEUE_UNSPEC = 0x0 -+ NFTA_QUEUE_NUM = 0x1 -+ NFTA_QUEUE_TOTAL = 0x2 -+ NFTA_QUEUE_FLAGS = 0x3 -+ NFTA_QUEUE_SREG_QNUM = 0x4 -+ NFT_QUOTA_F_INV = 0x1 -+ NFT_QUOTA_F_DEPLETED = 0x2 -+ NFTA_QUOTA_UNSPEC = 0x0 -+ NFTA_QUOTA_BYTES = 0x1 -+ NFTA_QUOTA_FLAGS = 0x2 -+ NFTA_QUOTA_PAD = 0x3 -+ NFTA_QUOTA_CONSUMED = 0x4 -+ NFT_REJECT_ICMP_UNREACH = 0x0 -+ NFT_REJECT_TCP_RST = 0x1 -+ NFT_REJECT_ICMPX_UNREACH = 0x2 -+ NFT_REJECT_ICMPX_NO_ROUTE = 0x0 -+ NFT_REJECT_ICMPX_PORT_UNREACH = 0x1 -+ NFT_REJECT_ICMPX_HOST_UNREACH = 0x2 -+ NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3 -+ NFTA_REJECT_UNSPEC = 0x0 -+ NFTA_REJECT_TYPE = 0x1 -+ NFTA_REJECT_ICMP_CODE = 0x2 -+ NFT_NAT_SNAT = 0x0 -+ NFT_NAT_DNAT = 0x1 -+ NFTA_NAT_UNSPEC = 0x0 -+ NFTA_NAT_TYPE = 0x1 -+ NFTA_NAT_FAMILY = 0x2 -+ NFTA_NAT_REG_ADDR_MIN = 0x3 -+ NFTA_NAT_REG_ADDR_MAX = 0x4 -+ NFTA_NAT_REG_PROTO_MIN = 0x5 -+ NFTA_NAT_REG_PROTO_MAX = 0x6 -+ NFTA_NAT_FLAGS = 0x7 -+ NFTA_MASQ_UNSPEC = 0x0 -+ NFTA_MASQ_FLAGS = 0x1 -+ NFTA_MASQ_REG_PROTO_MIN = 0x2 -+ NFTA_MASQ_REG_PROTO_MAX = 0x3 -+ NFTA_REDIR_UNSPEC = 0x0 -+ NFTA_REDIR_REG_PROTO_MIN = 0x1 -+ NFTA_REDIR_REG_PROTO_MAX = 0x2 -+ NFTA_REDIR_FLAGS = 0x3 -+ NFTA_DUP_UNSPEC = 0x0 -+ NFTA_DUP_SREG_ADDR = 0x1 -+ NFTA_DUP_SREG_DEV = 0x2 -+ NFTA_FWD_UNSPEC = 0x0 -+ NFTA_FWD_SREG_DEV = 0x1 -+ NFTA_OBJREF_UNSPEC = 0x0 -+ NFTA_OBJREF_IMM_TYPE = 0x1 -+ NFTA_OBJREF_IMM_NAME = 0x2 -+ NFTA_OBJREF_SET_SREG = 0x3 -+ NFTA_OBJREF_SET_NAME = 0x4 -+ NFTA_OBJREF_SET_ID = 0x5 -+ NFTA_GEN_UNSPEC = 0x0 -+ NFTA_GEN_ID = 0x1 -+ NFTA_GEN_PROC_PID = 0x2 -+ NFTA_GEN_PROC_NAME = 0x3 -+ NFTA_FIB_UNSPEC = 0x0 -+ NFTA_FIB_DREG = 0x1 -+ NFTA_FIB_RESULT = 0x2 -+ NFTA_FIB_FLAGS = 0x3 -+ NFT_FIB_RESULT_UNSPEC = 0x0 -+ NFT_FIB_RESULT_OIF = 0x1 -+ NFT_FIB_RESULT_OIFNAME = 0x2 -+ NFT_FIB_RESULT_ADDRTYPE = 0x3 -+ NFTA_FIB_F_SADDR = 0x1 -+ NFTA_FIB_F_DADDR = 0x2 -+ NFTA_FIB_F_MARK = 0x4 -+ NFTA_FIB_F_IIF = 0x8 -+ NFTA_FIB_F_OIF = 0x10 -+ NFTA_FIB_F_PRESENT = 0x20 -+ NFTA_CT_HELPER_UNSPEC = 0x0 -+ NFTA_CT_HELPER_NAME = 0x1 -+ NFTA_CT_HELPER_L3PROTO = 0x2 -+ NFTA_CT_HELPER_L4PROTO = 0x3 -+ NFTA_OBJ_UNSPEC = 0x0 -+ NFTA_OBJ_TABLE = 0x1 -+ NFTA_OBJ_NAME = 0x2 -+ NFTA_OBJ_TYPE = 0x3 -+ NFTA_OBJ_DATA = 0x4 -+ NFTA_OBJ_USE = 0x5 -+ NFTA_TRACE_UNSPEC = 0x0 -+ NFTA_TRACE_TABLE = 0x1 -+ NFTA_TRACE_CHAIN = 0x2 -+ NFTA_TRACE_RULE_HANDLE = 0x3 -+ NFTA_TRACE_TYPE = 0x4 -+ NFTA_TRACE_VERDICT = 0x5 -+ NFTA_TRACE_ID = 0x6 -+ NFTA_TRACE_LL_HEADER = 0x7 -+ NFTA_TRACE_NETWORK_HEADER = 0x8 -+ NFTA_TRACE_TRANSPORT_HEADER = 0x9 -+ NFTA_TRACE_IIF = 0xa -+ NFTA_TRACE_IIFTYPE = 0xb -+ NFTA_TRACE_OIF = 0xc -+ NFTA_TRACE_OIFTYPE = 0xd -+ NFTA_TRACE_MARK = 0xe -+ NFTA_TRACE_NFPROTO = 0xf -+ NFTA_TRACE_POLICY = 0x10 -+ NFTA_TRACE_PAD = 0x11 -+ NFT_TRACETYPE_UNSPEC = 0x0 -+ NFT_TRACETYPE_POLICY = 0x1 -+ NFT_TRACETYPE_RETURN = 0x2 -+ NFT_TRACETYPE_RULE = 0x3 -+ NFTA_NG_UNSPEC = 0x0 -+ NFTA_NG_DREG = 0x1 -+ NFTA_NG_MODULUS = 0x2 -+ NFTA_NG_TYPE = 0x3 -+ NFTA_NG_OFFSET = 0x4 -+ NFT_NG_INCREMENTAL = 0x0 -+ NFT_NG_RANDOM = 0x1 -+) -+ -+const ( -+ NFTA_TARGET_UNSPEC = 0x0 -+ NFTA_TARGET_NAME = 0x1 -+ NFTA_TARGET_REV = 0x2 -+ NFTA_TARGET_INFO = 0x3 -+ NFTA_MATCH_UNSPEC = 0x0 -+ NFTA_MATCH_NAME = 0x1 -+ NFTA_MATCH_REV = 0x2 -+ NFTA_MATCH_INFO = 0x3 -+ NFTA_COMPAT_UNSPEC = 0x0 -+ NFTA_COMPAT_NAME = 0x1 -+ NFTA_COMPAT_REV = 0x2 -+ NFTA_COMPAT_TYPE = 0x3 -+) -+ -+type RTCTime struct { -+ Sec int32 -+ Min int32 -+ Hour int32 -+ Mday int32 -+ Mon int32 -+ Year int32 -+ Wday int32 -+ Yday int32 -+ Isdst int32 -+} -+ -+type RTCWkAlrm struct { -+ Enabled uint8 -+ Pending uint8 -+ Time RTCTime -+} -+ -+type RTCPLLInfo struct { -+ Ctrl int32 -+ Value int32 -+ Max int32 -+ Min int32 -+ Posmult int32 -+ Negmult int32 -+ Clock int64 -+} -+ -+type BlkpgIoctlArg struct { -+ Op int32 -+ Flags int32 -+ Datalen int32 -+ Data *byte -+} -+ -+type BlkpgPartition struct { -+ Start int64 -+ Length int64 -+ Pno int32 -+ Devname [64]uint8 -+ Volname [64]uint8 -+ _ [4]byte -+} -+ -+const ( -+ BLKPG = 0x20001269 -+ BLKPG_ADD_PARTITION = 0x1 -+ BLKPG_DEL_PARTITION = 0x2 -+ BLKPG_RESIZE_PARTITION = 0x3 -+) -+ -+const ( -+ NETNSA_NONE = 0x0 -+ NETNSA_NSID = 0x1 -+ NETNSA_PID = 0x2 -+ NETNSA_FD = 0x3 -+) -+ -+type XDPRingOffset struct { -+ Producer uint64 -+ Consumer uint64 -+ Desc uint64 -+} -+ -+type XDPMmapOffsets struct { -+ Rx XDPRingOffset -+ Tx XDPRingOffset -+ Fr XDPRingOffset -+ Cr XDPRingOffset -+} -+ -+type XDPUmemReg struct { -+ Addr uint64 -+ Len uint64 -+ Size uint32 -+ Headroom uint32 -+} -+ -+type XDPStatistics struct { -+ Rx_dropped uint64 -+ Rx_invalid_descs uint64 -+ Tx_invalid_descs uint64 -+} -+ -+type XDPDesc struct { -+ Addr uint64 -+ Len uint32 -+ Options uint32 -+} -+ -+const ( -+ NCSI_CMD_UNSPEC = 0x0 -+ NCSI_CMD_PKG_INFO = 0x1 -+ NCSI_CMD_SET_INTERFACE = 0x2 -+ NCSI_CMD_CLEAR_INTERFACE = 0x3 -+ NCSI_ATTR_UNSPEC = 0x0 -+ NCSI_ATTR_IFINDEX = 0x1 -+ NCSI_ATTR_PACKAGE_LIST = 0x2 -+ NCSI_ATTR_PACKAGE_ID = 0x3 -+ NCSI_ATTR_CHANNEL_ID = 0x4 -+ NCSI_PKG_ATTR_UNSPEC = 0x0 -+ NCSI_PKG_ATTR = 0x1 -+ NCSI_PKG_ATTR_ID = 0x2 -+ NCSI_PKG_ATTR_FORCED = 0x3 -+ NCSI_PKG_ATTR_CHANNEL_LIST = 0x4 -+ NCSI_CHANNEL_ATTR_UNSPEC = 0x0 -+ NCSI_CHANNEL_ATTR = 0x1 -+ NCSI_CHANNEL_ATTR_ID = 0x2 -+ NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3 -+ NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4 -+ NCSI_CHANNEL_ATTR_VERSION_STR = 0x5 -+ NCSI_CHANNEL_ATTR_LINK_STATE = 0x6 -+ NCSI_CHANNEL_ATTR_ACTIVE = 0x7 -+ NCSI_CHANNEL_ATTR_FORCED = 0x8 -+ NCSI_CHANNEL_ATTR_VLAN_LIST = 0x9 -+ NCSI_CHANNEL_ATTR_VLAN_ID = 0xa -+) -+ -+type ScmTimestamping struct { -+ Ts [3]Timespec -+} -+ -+const ( -+ SOF_TIMESTAMPING_TX_HARDWARE = 0x1 -+ SOF_TIMESTAMPING_TX_SOFTWARE = 0x2 -+ SOF_TIMESTAMPING_RX_HARDWARE = 0x4 -+ SOF_TIMESTAMPING_RX_SOFTWARE = 0x8 -+ SOF_TIMESTAMPING_SOFTWARE = 0x10 -+ SOF_TIMESTAMPING_SYS_HARDWARE = 0x20 -+ SOF_TIMESTAMPING_RAW_HARDWARE = 0x40 -+ SOF_TIMESTAMPING_OPT_ID = 0x80 -+ SOF_TIMESTAMPING_TX_SCHED = 0x100 -+ SOF_TIMESTAMPING_TX_ACK = 0x200 -+ SOF_TIMESTAMPING_OPT_CMSG = 0x400 -+ SOF_TIMESTAMPING_OPT_TSONLY = 0x800 -+ SOF_TIMESTAMPING_OPT_STATS = 0x1000 -+ SOF_TIMESTAMPING_OPT_PKTINFO = 0x2000 -+ SOF_TIMESTAMPING_OPT_TX_SWHW = 0x4000 -+ -+ SOF_TIMESTAMPING_LAST = 0x4000 -+ SOF_TIMESTAMPING_MASK = 0x7fff -+ -+ SCM_TSTAMP_SND = 0x0 -+ SCM_TSTAMP_SCHED = 0x1 -+ SCM_TSTAMP_ACK = 0x2 -+) -+ -+type SockExtendedErr struct { -+ Errno uint32 -+ Origin uint8 -+ Type uint8 -+ Code uint8 -+ Pad uint8 -+ Info uint32 -+ Data uint32 -+} -+ -+type FanotifyEventMetadata struct { -+ Event_len uint32 -+ Vers uint8 -+ Reserved uint8 -+ Metadata_len uint16 -+ Mask uint64 -+ Fd int32 -+ Pid int32 -+} -+ -+type FanotifyResponse struct { -+ Fd int32 -+ Response uint32 -+} -+ -+const ( -+ CRYPTO_MSG_BASE = 0x10 -+ CRYPTO_MSG_NEWALG = 0x10 -+ CRYPTO_MSG_DELALG = 0x11 -+ CRYPTO_MSG_UPDATEALG = 0x12 -+ CRYPTO_MSG_GETALG = 0x13 -+ CRYPTO_MSG_DELRNG = 0x14 -+) -+ -+const ( -+ CRYPTOCFGA_UNSPEC = 0x0 -+ CRYPTOCFGA_PRIORITY_VAL = 0x1 -+ CRYPTOCFGA_REPORT_LARVAL = 0x2 -+ CRYPTOCFGA_REPORT_HASH = 0x3 -+ CRYPTOCFGA_REPORT_BLKCIPHER = 0x4 -+ CRYPTOCFGA_REPORT_AEAD = 0x5 -+ CRYPTOCFGA_REPORT_COMPRESS = 0x6 -+ CRYPTOCFGA_REPORT_RNG = 0x7 -+ CRYPTOCFGA_REPORT_CIPHER = 0x8 -+ CRYPTOCFGA_REPORT_AKCIPHER = 0x9 -+ CRYPTOCFGA_REPORT_KPP = 0xa -+ CRYPTOCFGA_REPORT_ACOMP = 0xb -+) -+ -+type CryptoUserAlg struct { -+ Name [64]int8 -+ Driver_name [64]int8 -+ Module_name [64]int8 -+ Type uint32 -+ Mask uint32 -+ Refcnt uint32 -+ Flags uint32 -+} -+ -+type CryptoStatAEAD struct{} -+ -+type CryptoStatAKCipher struct{} -+ -+type CryptoStatCipher struct{} -+ -+type CryptoStatCompress struct{} -+ -+type CryptoStatHash struct{} -+ -+type CryptoStatKPP struct{} -+ -+type CryptoStatRNG struct{} -+ -+type CryptoStatLarval struct{} -+ -+type CryptoReportLarval struct { -+ Type [64]int8 -+} -+ -+type CryptoReportHash struct { -+ Type [64]int8 -+ Blocksize uint32 -+ Digestsize uint32 -+} -+ -+type CryptoReportCipher struct { -+ Type [64]int8 -+ Blocksize uint32 -+ Min_keysize uint32 -+ Max_keysize uint32 -+} -+ -+type CryptoReportBlkCipher struct { -+ Type [64]int8 -+ Geniv [64]int8 -+ Blocksize uint32 -+ Min_keysize uint32 -+ Max_keysize uint32 -+ Ivsize uint32 -+} -+ -+type CryptoReportAEAD struct { -+ Type [64]int8 -+ Geniv [64]int8 -+ Blocksize uint32 -+ Maxauthsize uint32 -+ Ivsize uint32 -+} -+ -+type CryptoReportComp struct { -+ Type [64]int8 -+} -+ -+type CryptoReportRNG struct { -+ Type [64]int8 -+ Seedsize uint32 -+} -+ -+type CryptoReportAKCipher struct { -+ Type [64]int8 -+} -+ -+type CryptoReportKPP struct { -+ Type [64]int8 -+} -+ -+type CryptoReportAcomp struct { -+ Type [64]int8 -+} -+ -+const ( -+ BPF_REG_0 = 0x0 -+ BPF_REG_1 = 0x1 -+ BPF_REG_2 = 0x2 -+ BPF_REG_3 = 0x3 -+ BPF_REG_4 = 0x4 -+ BPF_REG_5 = 0x5 -+ BPF_REG_6 = 0x6 -+ BPF_REG_7 = 0x7 -+ BPF_REG_8 = 0x8 -+ BPF_REG_9 = 0x9 -+ BPF_REG_10 = 0xa -+ BPF_MAP_CREATE = 0x0 -+ BPF_MAP_LOOKUP_ELEM = 0x1 -+ BPF_MAP_UPDATE_ELEM = 0x2 -+ BPF_MAP_DELETE_ELEM = 0x3 -+ BPF_MAP_GET_NEXT_KEY = 0x4 -+ BPF_PROG_LOAD = 0x5 -+ BPF_OBJ_PIN = 0x6 -+ BPF_OBJ_GET = 0x7 -+ BPF_PROG_ATTACH = 0x8 -+ BPF_PROG_DETACH = 0x9 -+ BPF_PROG_TEST_RUN = 0xa -+ BPF_PROG_GET_NEXT_ID = 0xb -+ BPF_MAP_GET_NEXT_ID = 0xc -+ BPF_PROG_GET_FD_BY_ID = 0xd -+ BPF_MAP_GET_FD_BY_ID = 0xe -+ BPF_OBJ_GET_INFO_BY_FD = 0xf -+ BPF_PROG_QUERY = 0x10 -+ BPF_RAW_TRACEPOINT_OPEN = 0x11 -+ BPF_BTF_LOAD = 0x12 -+ BPF_BTF_GET_FD_BY_ID = 0x13 -+ BPF_TASK_FD_QUERY = 0x14 -+ -+ BPF_MAP_TYPE_UNSPEC = 0x0 -+ BPF_MAP_TYPE_HASH = 0x1 -+ BPF_MAP_TYPE_ARRAY = 0x2 -+ BPF_MAP_TYPE_PROG_ARRAY = 0x3 -+ BPF_MAP_TYPE_PERF_EVENT_ARRAY = 0x4 -+ BPF_MAP_TYPE_PERCPU_HASH = 0x5 -+ BPF_MAP_TYPE_PERCPU_ARRAY = 0x6 -+ BPF_MAP_TYPE_STACK_TRACE = 0x7 -+ BPF_MAP_TYPE_CGROUP_ARRAY = 0x8 -+ BPF_MAP_TYPE_LRU_HASH = 0x9 -+ BPF_MAP_TYPE_LRU_PERCPU_HASH = 0xa -+ BPF_MAP_TYPE_LPM_TRIE = 0xb -+ BPF_MAP_TYPE_ARRAY_OF_MAPS = 0xc -+ BPF_MAP_TYPE_HASH_OF_MAPS = 0xd -+ BPF_MAP_TYPE_DEVMAP = 0xe -+ BPF_MAP_TYPE_SOCKMAP = 0xf -+ BPF_MAP_TYPE_CPUMAP = 0x10 -+ BPF_MAP_TYPE_XSKMAP = 0x11 -+ BPF_MAP_TYPE_SOCKHASH = 0x12 -+ BPF_MAP_TYPE_CGROUP_STORAGE = 0x13 -+ BPF_MAP_TYPE_REUSEPORT_SOCKARRAY = 0x14 -+ -+ BPF_PROG_TYPE_UNSPEC = 0x0 -+ BPF_PROG_TYPE_SOCKET_FILTER = 0x1 -+ BPF_PROG_TYPE_KPROBE = 0x2 -+ BPF_PROG_TYPE_SCHED_CLS = 0x3 -+ BPF_PROG_TYPE_SCHED_ACT = 0x4 -+ BPF_PROG_TYPE_TRACEPOINT = 0x5 -+ BPF_PROG_TYPE_XDP = 0x6 -+ BPF_PROG_TYPE_PERF_EVENT = 0x7 -+ BPF_PROG_TYPE_CGROUP_SKB = 0x8 -+ BPF_PROG_TYPE_CGROUP_SOCK = 0x9 -+ BPF_PROG_TYPE_LWT_IN = 0xa -+ BPF_PROG_TYPE_LWT_OUT = 0xb -+ BPF_PROG_TYPE_LWT_XMIT = 0xc -+ BPF_PROG_TYPE_SOCK_OPS = 0xd -+ BPF_PROG_TYPE_SK_SKB = 0xe -+ BPF_PROG_TYPE_CGROUP_DEVICE = 0xf -+ BPF_PROG_TYPE_SK_MSG = 0x10 -+ BPF_PROG_TYPE_RAW_TRACEPOINT = 0x11 -+ BPF_PROG_TYPE_CGROUP_SOCK_ADDR = 0x12 -+ BPF_PROG_TYPE_LWT_SEG6LOCAL = 0x13 -+ BPF_PROG_TYPE_LIRC_MODE2 = 0x14 -+ BPF_PROG_TYPE_SK_REUSEPORT = 0x15 -+ -+ BPF_CGROUP_INET_INGRESS = 0x0 -+ BPF_CGROUP_INET_EGRESS = 0x1 -+ BPF_CGROUP_INET_SOCK_CREATE = 0x2 -+ BPF_CGROUP_SOCK_OPS = 0x3 -+ BPF_SK_SKB_STREAM_PARSER = 0x4 -+ BPF_SK_SKB_STREAM_VERDICT = 0x5 -+ BPF_CGROUP_DEVICE = 0x6 -+ BPF_SK_MSG_VERDICT = 0x7 -+ BPF_CGROUP_INET4_BIND = 0x8 -+ BPF_CGROUP_INET6_BIND = 0x9 -+ BPF_CGROUP_INET4_CONNECT = 0xa -+ BPF_CGROUP_INET6_CONNECT = 0xb -+ BPF_CGROUP_INET4_POST_BIND = 0xc -+ BPF_CGROUP_INET6_POST_BIND = 0xd -+ BPF_CGROUP_UDP4_SENDMSG = 0xe -+ BPF_CGROUP_UDP6_SENDMSG = 0xf -+ BPF_LIRC_MODE2 = 0x10 -+ -+ BPF_STACK_BUILD_ID_EMPTY = 0x0 -+ BPF_STACK_BUILD_ID_VALID = 0x1 -+ BPF_STACK_BUILD_ID_IP = 0x2 -+ -+ BPF_ADJ_ROOM_NET = 0x0 -+ -+ BPF_HDR_START_MAC = 0x0 -+ BPF_HDR_START_NET = 0x1 -+ BPF_LWT_ENCAP_SEG6 = 0x0 -+ BPF_LWT_ENCAP_SEG6_INLINE = 0x1 -+ -+ BPF_OK = 0x0 -+ BPF_DROP = 0x2 -+ BPF_REDIRECT = 0x7 -+ -+ BPF_SOCK_OPS_VOID = 0x0 -+ BPF_SOCK_OPS_TIMEOUT_INIT = 0x1 -+ BPF_SOCK_OPS_RWND_INIT = 0x2 -+ BPF_SOCK_OPS_TCP_CONNECT_CB = 0x3 -+ BPF_SOCK_OPS_ACTIVE_ESTABLISHED_CB = 0x4 -+ BPF_SOCK_OPS_PASSIVE_ESTABLISHED_CB = 0x5 -+ BPF_SOCK_OPS_NEEDS_ECN = 0x6 -+ BPF_SOCK_OPS_BASE_RTT = 0x7 -+ BPF_SOCK_OPS_RTO_CB = 0x8 -+ BPF_SOCK_OPS_RETRANS_CB = 0x9 -+ BPF_SOCK_OPS_STATE_CB = 0xa -+ BPF_SOCK_OPS_TCP_LISTEN_CB = 0xb -+ -+ BPF_TCP_ESTABLISHED = 0x1 -+ BPF_TCP_SYN_SENT = 0x2 -+ BPF_TCP_SYN_RECV = 0x3 -+ BPF_TCP_FIN_WAIT1 = 0x4 -+ BPF_TCP_FIN_WAIT2 = 0x5 -+ BPF_TCP_TIME_WAIT = 0x6 -+ BPF_TCP_CLOSE = 0x7 -+ BPF_TCP_CLOSE_WAIT = 0x8 -+ BPF_TCP_LAST_ACK = 0x9 -+ BPF_TCP_LISTEN = 0xa -+ BPF_TCP_CLOSING = 0xb -+ BPF_TCP_NEW_SYN_RECV = 0xc -+ BPF_TCP_MAX_STATES = 0xd -+ -+ BPF_FIB_LOOKUP_DIRECT = 0x1 -+ BPF_FIB_LOOKUP_OUTPUT = 0x2 -+ BPF_FIB_LKUP_RET_SUCCESS = 0x0 -+ BPF_FIB_LKUP_RET_BLACKHOLE = 0x1 -+ BPF_FIB_LKUP_RET_UNREACHABLE = 0x2 -+ BPF_FIB_LKUP_RET_PROHIBIT = 0x3 -+ BPF_FIB_LKUP_RET_NOT_FWDED = 0x4 -+ BPF_FIB_LKUP_RET_FWD_DISABLED = 0x5 -+ BPF_FIB_LKUP_RET_UNSUPP_LWT = 0x6 -+ BPF_FIB_LKUP_RET_NO_NEIGH = 0x7 -+ BPF_FIB_LKUP_RET_FRAG_NEEDED = 0x8 -+ BPF_FD_TYPE_RAW_TRACEPOINT = 0x0 -+ BPF_FD_TYPE_TRACEPOINT = 0x1 -+ BPF_FD_TYPE_KPROBE = 0x2 -+ BPF_FD_TYPE_KRETPROBE = 0x3 -+ BPF_FD_TYPE_UPROBE = 0x4 -+ BPF_FD_TYPE_URETPROBE = 0x5 -+) -+ -+const ( -+ RTNLGRP_NONE = 0x0 -+ RTNLGRP_LINK = 0x1 -+ RTNLGRP_NOTIFY = 0x2 -+ RTNLGRP_NEIGH = 0x3 -+ RTNLGRP_TC = 0x4 -+ RTNLGRP_IPV4_IFADDR = 0x5 -+ RTNLGRP_IPV4_MROUTE = 0x6 -+ RTNLGRP_IPV4_ROUTE = 0x7 -+ RTNLGRP_IPV4_RULE = 0x8 -+ RTNLGRP_IPV6_IFADDR = 0x9 -+ RTNLGRP_IPV6_MROUTE = 0xa -+ RTNLGRP_IPV6_ROUTE = 0xb -+ RTNLGRP_IPV6_IFINFO = 0xc -+ RTNLGRP_DECnet_IFADDR = 0xd -+ RTNLGRP_NOP2 = 0xe -+ RTNLGRP_DECnet_ROUTE = 0xf -+ RTNLGRP_DECnet_RULE = 0x10 -+ RTNLGRP_NOP4 = 0x11 -+ RTNLGRP_IPV6_PREFIX = 0x12 -+ RTNLGRP_IPV6_RULE = 0x13 -+ RTNLGRP_ND_USEROPT = 0x14 -+ RTNLGRP_PHONET_IFADDR = 0x15 -+ RTNLGRP_PHONET_ROUTE = 0x16 -+ RTNLGRP_DCB = 0x17 -+ RTNLGRP_IPV4_NETCONF = 0x18 -+ RTNLGRP_IPV6_NETCONF = 0x19 -+ RTNLGRP_MDB = 0x1a -+ RTNLGRP_MPLS_ROUTE = 0x1b -+ RTNLGRP_NSID = 0x1c -+ RTNLGRP_MPLS_NETCONF = 0x1d -+ RTNLGRP_IPV4_MROUTE_R = 0x1e -+ RTNLGRP_IPV6_MROUTE_R = 0x1f -+) -+ -+type CapUserHeader struct { -+ Version uint32 -+ Pid int32 -+} -+ -+type CapUserData struct { -+ Effective uint32 -+ Permitted uint32 -+ Inheritable uint32 -+} -+ -+const ( -+ LINUX_CAPABILITY_VERSION_1 = 0x19980330 -+ LINUX_CAPABILITY_VERSION_2 = 0x20071026 -+ LINUX_CAPABILITY_VERSION_3 = 0x20080522 -+) -+ -+const ( -+ LO_FLAGS_READ_ONLY = 0x1 -+ LO_FLAGS_AUTOCLEAR = 0x4 -+ LO_FLAGS_PARTSCAN = 0x8 -+ LO_FLAGS_DIRECT_IO = 0x10 -+) -+ -+type LoopInfo struct { -+ Number int32 -+ Device uint32 -+ Inode uint64 -+ Rdevice uint32 -+ Offset int32 -+ Encrypt_type int32 -+ Encrypt_key_size int32 -+ Flags int32 -+ Name [64]int8 -+ Encrypt_key [32]uint8 -+ Init [2]uint64 -+ Reserved [4]int8 -+ _ [4]byte -+} -+type LoopInfo64 struct { -+ Device uint64 -+ Inode uint64 -+ Rdevice uint64 -+ Offset uint64 -+ Sizelimit uint64 -+ Number uint32 -+ Encrypt_type uint32 -+ Encrypt_key_size uint32 -+ Flags uint32 -+ File_name [64]uint8 -+ Crypt_name [64]uint8 -+ Encrypt_key [32]uint8 -+ Init [2]uint64 -+} -+ -+type TIPCSocketAddr struct { -+ Ref uint32 -+ Node uint32 -+} -+ -+type TIPCServiceRange struct { -+ Type uint32 -+ Lower uint32 -+ Upper uint32 -+} -+ -+type TIPCServiceName struct { -+ Type uint32 -+ Instance uint32 -+ Domain uint32 -+} -+ -+type TIPCSubscr struct { -+ Seq TIPCServiceRange -+ Timeout uint32 -+ Filter uint32 -+ Handle [8]int8 -+} -+ -+type TIPCEvent struct { -+ Event uint32 -+ Lower uint32 -+ Upper uint32 -+ Port TIPCSocketAddr -+ S TIPCSubscr -+} -+ -+type TIPCGroupReq struct { -+ Type uint32 -+ Instance uint32 -+ Scope uint32 -+ Flags uint32 -+} -+ -+type TIPCSIOCLNReq struct { -+ Peer uint32 -+ Id uint32 -+ Linkname [68]int8 -+} -+ -+type TIPCSIOCNodeIDReq struct { -+ Peer uint32 -+ Id [16]int8 -+} -+ -+const ( -+ TIPC_CLUSTER_SCOPE = 0x2 -+ TIPC_NODE_SCOPE = 0x3 -+) -+ -+const ( -+ SYSLOG_ACTION_CLOSE = 0 -+ SYSLOG_ACTION_OPEN = 1 -+ SYSLOG_ACTION_READ = 2 -+ SYSLOG_ACTION_READ_ALL = 3 -+ SYSLOG_ACTION_READ_CLEAR = 4 -+ SYSLOG_ACTION_CLEAR = 5 -+ SYSLOG_ACTION_CONSOLE_OFF = 6 -+ SYSLOG_ACTION_CONSOLE_ON = 7 -+ SYSLOG_ACTION_CONSOLE_LEVEL = 8 -+ SYSLOG_ACTION_SIZE_UNREAD = 9 -+ SYSLOG_ACTION_SIZE_BUFFER = 10 -+) -+ -+const ( -+ DEVLINK_CMD_UNSPEC = 0x0 -+ DEVLINK_CMD_GET = 0x1 -+ DEVLINK_CMD_SET = 0x2 -+ DEVLINK_CMD_NEW = 0x3 -+ DEVLINK_CMD_DEL = 0x4 -+ DEVLINK_CMD_PORT_GET = 0x5 -+ DEVLINK_CMD_PORT_SET = 0x6 -+ DEVLINK_CMD_PORT_NEW = 0x7 -+ DEVLINK_CMD_PORT_DEL = 0x8 -+ DEVLINK_CMD_PORT_SPLIT = 0x9 -+ DEVLINK_CMD_PORT_UNSPLIT = 0xa -+ DEVLINK_CMD_SB_GET = 0xb -+ DEVLINK_CMD_SB_SET = 0xc -+ DEVLINK_CMD_SB_NEW = 0xd -+ DEVLINK_CMD_SB_DEL = 0xe -+ DEVLINK_CMD_SB_POOL_GET = 0xf -+ DEVLINK_CMD_SB_POOL_SET = 0x10 -+ DEVLINK_CMD_SB_POOL_NEW = 0x11 -+ DEVLINK_CMD_SB_POOL_DEL = 0x12 -+ DEVLINK_CMD_SB_PORT_POOL_GET = 0x13 -+ DEVLINK_CMD_SB_PORT_POOL_SET = 0x14 -+ DEVLINK_CMD_SB_PORT_POOL_NEW = 0x15 -+ DEVLINK_CMD_SB_PORT_POOL_DEL = 0x16 -+ DEVLINK_CMD_SB_TC_POOL_BIND_GET = 0x17 -+ DEVLINK_CMD_SB_TC_POOL_BIND_SET = 0x18 -+ DEVLINK_CMD_SB_TC_POOL_BIND_NEW = 0x19 -+ DEVLINK_CMD_SB_TC_POOL_BIND_DEL = 0x1a -+ DEVLINK_CMD_SB_OCC_SNAPSHOT = 0x1b -+ DEVLINK_CMD_SB_OCC_MAX_CLEAR = 0x1c -+ DEVLINK_CMD_ESWITCH_GET = 0x1d -+ DEVLINK_CMD_ESWITCH_SET = 0x1e -+ DEVLINK_CMD_DPIPE_TABLE_GET = 0x1f -+ DEVLINK_CMD_DPIPE_ENTRIES_GET = 0x20 -+ DEVLINK_CMD_DPIPE_HEADERS_GET = 0x21 -+ DEVLINK_CMD_DPIPE_TABLE_COUNTERS_SET = 0x22 -+ DEVLINK_CMD_RESOURCE_SET = 0x23 -+ DEVLINK_CMD_RESOURCE_DUMP = 0x24 -+ DEVLINK_CMD_RELOAD = 0x25 -+ DEVLINK_CMD_PARAM_GET = 0x26 -+ DEVLINK_CMD_PARAM_SET = 0x27 -+ DEVLINK_CMD_PARAM_NEW = 0x28 -+ DEVLINK_CMD_PARAM_DEL = 0x29 -+ DEVLINK_CMD_REGION_GET = 0x2a -+ DEVLINK_CMD_REGION_SET = 0x2b -+ DEVLINK_CMD_REGION_NEW = 0x2c -+ DEVLINK_CMD_REGION_DEL = 0x2d -+ DEVLINK_CMD_REGION_READ = 0x2e -+ -+ DEVLINK_CMD_MAX = 0x2e -+ DEVLINK_PORT_TYPE_NOTSET = 0x0 -+ DEVLINK_PORT_TYPE_AUTO = 0x1 -+ DEVLINK_PORT_TYPE_ETH = 0x2 -+ DEVLINK_PORT_TYPE_IB = 0x3 -+ DEVLINK_SB_POOL_TYPE_INGRESS = 0x0 -+ DEVLINK_SB_POOL_TYPE_EGRESS = 0x1 -+ DEVLINK_SB_THRESHOLD_TYPE_STATIC = 0x0 -+ DEVLINK_SB_THRESHOLD_TYPE_DYNAMIC = 0x1 -+ DEVLINK_ESWITCH_MODE_LEGACY = 0x0 -+ DEVLINK_ESWITCH_MODE_SWITCHDEV = 0x1 -+ DEVLINK_ESWITCH_INLINE_MODE_NONE = 0x0 -+ DEVLINK_ESWITCH_INLINE_MODE_LINK = 0x1 -+ DEVLINK_ESWITCH_INLINE_MODE_NETWORK = 0x2 -+ DEVLINK_ESWITCH_INLINE_MODE_TRANSPORT = 0x3 -+ DEVLINK_ESWITCH_ENCAP_MODE_NONE = 0x0 -+ DEVLINK_ESWITCH_ENCAP_MODE_BASIC = 0x1 -+ DEVLINK_PORT_FLAVOUR_PHYSICAL = 0x0 -+ DEVLINK_PORT_FLAVOUR_CPU = 0x1 -+ DEVLINK_PORT_FLAVOUR_DSA = 0x2 -+ -+ DEVLINK_PARAM_CMODE_RUNTIME = 0x0 -+ DEVLINK_PARAM_CMODE_DRIVERINIT = 0x1 -+ DEVLINK_PARAM_CMODE_PERMANENT = 0x2 -+ DEVLINK_PARAM_CMODE_MAX = 0x2 -+ -+ DEVLINK_ATTR_UNSPEC = 0x0 -+ DEVLINK_ATTR_BUS_NAME = 0x1 -+ DEVLINK_ATTR_DEV_NAME = 0x2 -+ DEVLINK_ATTR_PORT_INDEX = 0x3 -+ DEVLINK_ATTR_PORT_TYPE = 0x4 -+ DEVLINK_ATTR_PORT_DESIRED_TYPE = 0x5 -+ DEVLINK_ATTR_PORT_NETDEV_IFINDEX = 0x6 -+ DEVLINK_ATTR_PORT_NETDEV_NAME = 0x7 -+ DEVLINK_ATTR_PORT_IBDEV_NAME = 0x8 -+ DEVLINK_ATTR_PORT_SPLIT_COUNT = 0x9 -+ DEVLINK_ATTR_PORT_SPLIT_GROUP = 0xa -+ DEVLINK_ATTR_SB_INDEX = 0xb -+ DEVLINK_ATTR_SB_SIZE = 0xc -+ DEVLINK_ATTR_SB_INGRESS_POOL_COUNT = 0xd -+ DEVLINK_ATTR_SB_EGRESS_POOL_COUNT = 0xe -+ DEVLINK_ATTR_SB_INGRESS_TC_COUNT = 0xf -+ DEVLINK_ATTR_SB_EGRESS_TC_COUNT = 0x10 -+ DEVLINK_ATTR_SB_POOL_INDEX = 0x11 -+ DEVLINK_ATTR_SB_POOL_TYPE = 0x12 -+ DEVLINK_ATTR_SB_POOL_SIZE = 0x13 -+ DEVLINK_ATTR_SB_POOL_THRESHOLD_TYPE = 0x14 -+ DEVLINK_ATTR_SB_THRESHOLD = 0x15 -+ DEVLINK_ATTR_SB_TC_INDEX = 0x16 -+ DEVLINK_ATTR_SB_OCC_CUR = 0x17 -+ DEVLINK_ATTR_SB_OCC_MAX = 0x18 -+ DEVLINK_ATTR_ESWITCH_MODE = 0x19 -+ DEVLINK_ATTR_ESWITCH_INLINE_MODE = 0x1a -+ DEVLINK_ATTR_DPIPE_TABLES = 0x1b -+ DEVLINK_ATTR_DPIPE_TABLE = 0x1c -+ DEVLINK_ATTR_DPIPE_TABLE_NAME = 0x1d -+ DEVLINK_ATTR_DPIPE_TABLE_SIZE = 0x1e -+ DEVLINK_ATTR_DPIPE_TABLE_MATCHES = 0x1f -+ DEVLINK_ATTR_DPIPE_TABLE_ACTIONS = 0x20 -+ DEVLINK_ATTR_DPIPE_TABLE_COUNTERS_ENABLED = 0x21 -+ DEVLINK_ATTR_DPIPE_ENTRIES = 0x22 -+ DEVLINK_ATTR_DPIPE_ENTRY = 0x23 -+ DEVLINK_ATTR_DPIPE_ENTRY_INDEX = 0x24 -+ DEVLINK_ATTR_DPIPE_ENTRY_MATCH_VALUES = 0x25 -+ DEVLINK_ATTR_DPIPE_ENTRY_ACTION_VALUES = 0x26 -+ DEVLINK_ATTR_DPIPE_ENTRY_COUNTER = 0x27 -+ DEVLINK_ATTR_DPIPE_MATCH = 0x28 -+ DEVLINK_ATTR_DPIPE_MATCH_VALUE = 0x29 -+ DEVLINK_ATTR_DPIPE_MATCH_TYPE = 0x2a -+ DEVLINK_ATTR_DPIPE_ACTION = 0x2b -+ DEVLINK_ATTR_DPIPE_ACTION_VALUE = 0x2c -+ DEVLINK_ATTR_DPIPE_ACTION_TYPE = 0x2d -+ DEVLINK_ATTR_DPIPE_VALUE = 0x2e -+ DEVLINK_ATTR_DPIPE_VALUE_MASK = 0x2f -+ DEVLINK_ATTR_DPIPE_VALUE_MAPPING = 0x30 -+ DEVLINK_ATTR_DPIPE_HEADERS = 0x31 -+ DEVLINK_ATTR_DPIPE_HEADER = 0x32 -+ DEVLINK_ATTR_DPIPE_HEADER_NAME = 0x33 -+ DEVLINK_ATTR_DPIPE_HEADER_ID = 0x34 -+ DEVLINK_ATTR_DPIPE_HEADER_FIELDS = 0x35 -+ DEVLINK_ATTR_DPIPE_HEADER_GLOBAL = 0x36 -+ DEVLINK_ATTR_DPIPE_HEADER_INDEX = 0x37 -+ DEVLINK_ATTR_DPIPE_FIELD = 0x38 -+ DEVLINK_ATTR_DPIPE_FIELD_NAME = 0x39 -+ DEVLINK_ATTR_DPIPE_FIELD_ID = 0x3a -+ DEVLINK_ATTR_DPIPE_FIELD_BITWIDTH = 0x3b -+ DEVLINK_ATTR_DPIPE_FIELD_MAPPING_TYPE = 0x3c -+ DEVLINK_ATTR_PAD = 0x3d -+ DEVLINK_ATTR_ESWITCH_ENCAP_MODE = 0x3e -+ DEVLINK_ATTR_RESOURCE_LIST = 0x3f -+ DEVLINK_ATTR_RESOURCE = 0x40 -+ DEVLINK_ATTR_RESOURCE_NAME = 0x41 -+ DEVLINK_ATTR_RESOURCE_ID = 0x42 -+ DEVLINK_ATTR_RESOURCE_SIZE = 0x43 -+ DEVLINK_ATTR_RESOURCE_SIZE_NEW = 0x44 -+ DEVLINK_ATTR_RESOURCE_SIZE_VALID = 0x45 -+ DEVLINK_ATTR_RESOURCE_SIZE_MIN = 0x46 -+ DEVLINK_ATTR_RESOURCE_SIZE_MAX = 0x47 -+ DEVLINK_ATTR_RESOURCE_SIZE_GRAN = 0x48 -+ DEVLINK_ATTR_RESOURCE_UNIT = 0x49 -+ DEVLINK_ATTR_RESOURCE_OCC = 0x4a -+ DEVLINK_ATTR_DPIPE_TABLE_RESOURCE_ID = 0x4b -+ DEVLINK_ATTR_DPIPE_TABLE_RESOURCE_UNITS = 0x4c -+ DEVLINK_ATTR_PORT_FLAVOUR = 0x4d -+ DEVLINK_ATTR_PORT_NUMBER = 0x4e -+ DEVLINK_ATTR_PORT_SPLIT_SUBPORT_NUMBER = 0x4f -+ DEVLINK_ATTR_PARAM = 0x50 -+ DEVLINK_ATTR_PARAM_NAME = 0x51 -+ DEVLINK_ATTR_PARAM_GENERIC = 0x52 -+ DEVLINK_ATTR_PARAM_TYPE = 0x53 -+ DEVLINK_ATTR_PARAM_VALUES_LIST = 0x54 -+ DEVLINK_ATTR_PARAM_VALUE = 0x55 -+ DEVLINK_ATTR_PARAM_VALUE_DATA = 0x56 -+ DEVLINK_ATTR_PARAM_VALUE_CMODE = 0x57 -+ DEVLINK_ATTR_REGION_NAME = 0x58 -+ DEVLINK_ATTR_REGION_SIZE = 0x59 -+ DEVLINK_ATTR_REGION_SNAPSHOTS = 0x5a -+ DEVLINK_ATTR_REGION_SNAPSHOT = 0x5b -+ DEVLINK_ATTR_REGION_SNAPSHOT_ID = 0x5c -+ DEVLINK_ATTR_REGION_CHUNKS = 0x5d -+ DEVLINK_ATTR_REGION_CHUNK = 0x5e -+ DEVLINK_ATTR_REGION_CHUNK_DATA = 0x5f -+ DEVLINK_ATTR_REGION_CHUNK_ADDR = 0x60 -+ DEVLINK_ATTR_REGION_CHUNK_LEN = 0x61 -+ -+ DEVLINK_ATTR_MAX = 0x61 -+ DEVLINK_DPIPE_FIELD_MAPPING_TYPE_NONE = 0x0 -+ DEVLINK_DPIPE_FIELD_MAPPING_TYPE_IFINDEX = 0x1 -+ DEVLINK_DPIPE_MATCH_TYPE_FIELD_EXACT = 0x0 -+ DEVLINK_DPIPE_ACTION_TYPE_FIELD_MODIFY = 0x0 -+ DEVLINK_DPIPE_FIELD_ETHERNET_DST_MAC = 0x0 -+ DEVLINK_DPIPE_FIELD_IPV4_DST_IP = 0x0 -+ DEVLINK_DPIPE_FIELD_IPV6_DST_IP = 0x0 -+ DEVLINK_DPIPE_HEADER_ETHERNET = 0x0 -+ DEVLINK_DPIPE_HEADER_IPV4 = 0x1 -+ DEVLINK_DPIPE_HEADER_IPV6 = 0x2 -+ DEVLINK_RESOURCE_UNIT_ENTRY = 0x0 -+) -+ -+type FsverityDigest struct{} -+ -+type FsverityEnableArg struct{} -+ -+const ( -+ CAN_RAW_FILTER = 0x1 -+ CAN_RAW_ERR_FILTER = 0x2 -+ CAN_RAW_LOOPBACK = 0x3 -+ CAN_RAW_RECV_OWN_MSGS = 0x4 -+ CAN_RAW_FD_FRAMES = 0x5 -+ CAN_RAW_JOIN_FILTERS = 0x6 -+) -+ -+type WatchdogInfo struct { -+ Options uint32 -+ Version uint32 -+ Identity [32]uint8 -+} -+ -+type PPSFData struct { -+ Info PPSKInfo -+ Timeout PPSKTime -+} -+ -+type PPSKParams struct { -+ Api_version int32 -+ Mode int32 -+ Assert_off_tu PPSKTime -+ Clear_off_tu PPSKTime -+} -+ -+type PPSKInfo struct { -+ Assert_sequence uint32 -+ Clear_sequence uint32 -+ Assert_tu PPSKTime -+ Clear_tu PPSKTime -+ Current_mode int32 -+ _ [4]byte -+} -+ -+type PPSKTime struct { -+ Sec int64 -+ Nsec int32 -+ Flags uint32 -+} -+ -+const ( -+ PPS_GETPARAMS = 0x400870a1 -+ PPS_SETPARAMS = 0x800870a2 -+ PPS_GETCAP = 0x400870a3 -+ PPS_FETCH = 0xc00870a4 -+) -+ -+const ( -+ LWTUNNEL_ENCAP_NONE = 0x0 -+ LWTUNNEL_ENCAP_MPLS = 0x1 -+ LWTUNNEL_ENCAP_IP = 0x2 -+ LWTUNNEL_ENCAP_ILA = 0x3 -+ LWTUNNEL_ENCAP_IP6 = 0x4 -+ LWTUNNEL_ENCAP_SEG6 = 0x5 -+ LWTUNNEL_ENCAP_BPF = 0x6 -+ LWTUNNEL_ENCAP_SEG6_LOCAL = 0x7 -+ -+ LWTUNNEL_ENCAP_MAX = 0x7 -+ -+ MPLS_IPTUNNEL_UNSPEC = 0x0 -+ MPLS_IPTUNNEL_DST = 0x1 -+ MPLS_IPTUNNEL_TTL = 0x2 -+ MPLS_IPTUNNEL_MAX = 0x2 -+) -+ -+type ( -+ HIDRawReportDescriptor struct { -+ Size uint32 -+ Value [4096]uint8 -+ } -+ HIDRawDevInfo struct { -+ Bustype uint32 -+ Vendor int16 -+ Product int16 -+ } -+) -+ -+const ( -+ NLMSGERR_ATTR_MSG = 0x1 -+ NLMSGERR_ATTR_OFFS = 0x2 -+ NLMSGERR_ATTR_COOKIE = 0x3 -+) diff --git a/1000-add-sw_64-support-not-upstream-new-files.patch b/1000-add-sw_64-support-not-upstream-new-files.patch new file mode 100644 index 0000000..38056ba --- /dev/null +++ b/1000-add-sw_64-support-not-upstream-new-files.patch @@ -0,0 +1,16 @@ +diff -Naur etcd-3.4.14.org/vendor/go.etcd.io/bbolt/bolt_sw64.go etcd-3.4.14.sw/vendor/go.etcd.io/bbolt/bolt_sw64.go +--- etcd-3.4.14.org/vendor/go.etcd.io/bbolt/bolt_sw64.go 1970-01-01 08:00:00.000000000 +0800 ++++ etcd-3.4.14.sw/vendor/go.etcd.io/bbolt/bolt_sw64.go 2022-09-16 15:23:18.290000000 +0800 +@@ -0,0 +1,12 @@ ++// +build sw64 ++ ++package bbolt ++ ++// maxMapSize represents the largest mmap size supported by Bolt. ++const maxMapSize = 0xFFFFFFFFFFFF // 256TB ++ ++// maxAllocSize is the size used when creating array pointers. ++const maxAllocSize = 0x7FFFFFFF ++ ++// Are unaligned load/stores broken on this arch? ++var brokenUnaligned = false diff --git a/bbolt-1.3.7.tar.gz b/bbolt-1.3.7.tar.gz new file mode 100755 index 0000000000000000000000000000000000000000..b13fbae54ed814ee01a20d6efdece1a6dc70788e GIT binary patch literal 115011 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
_W8yx40;KhWJk+tKNCT5|S> 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
k)qygm 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π>)Rj9|%F*zNRkeP{! z1T-Rip2YEJ&Neht5+h_Zb|!1#juz~&trA)nCV@UY26CzsxzLwErBblFC$~*NS9^

x7XK?;?_|dAB}>PazdhJ2A-|oUmvzN`d@e3 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 b+t2Oi_H+BW{oH;&_vil)g1lW&07wV`i}n93 literal 0 HcmV?d00001 diff --git a/etcd.spec b/etcd.spec index cf963c4..85eba11 100644 --- a/etcd.spec +++ b/etcd.spec @@ -31,7 +31,7 @@ system.} %global gosupfiles integration/fixtures/* etcdserver/api/v2http/testdata/* Name: etcd -Release: 5 +Release: 6 Summary: Distributed reliable key-value store for the most critical data of a distributed system # Upstream license specification: Apache-2.0 @@ -43,11 +43,13 @@ Source2: %{name}.conf Source3: man-%{man_version}.tar.gz # sh genmanpages.sh path_to_built_source Source10: genmanpages.sh +# add support for loongarch64 +Source1000: bbolt-1.3.7.tar.gz # update grpc-go version to v1.32.0 Patch1: 0001-Convert-int-to-string-using-strconv.Itoa.patch -Patch2: 0002-Etcd-on-unsupported-platform-without-ETCD_UNSUPPORTED_ARCH=arm64-set.patch -Patch3: 0003-etcd-3.4.14-sw.patch - +Patch2: 0002-Etcd-on-unsupported-platform-without-ETCD_UNSUPPORTED_ARCH=arm64-set.patch +# add support for sw_64 +Patch1000: 1000-add-sw_64-support-not-upstream-new-files.patch BuildRequires: golang BuildRequires: python3-devel %{?systemd_requires} @@ -64,9 +66,7 @@ Requires(pre): shadow-utils %forgesetup %patch1 -p1 %patch2 -p1 -%ifarch sw_64 -%patch3 -p1 -%endif +%patch1000 -p1 # For compatibility cp -aR etcdserver/api/snap snap cp -aR etcdserver/api/membership etcdserver/membership @@ -80,20 +80,39 @@ mv etcdctl/READMEv2.md READMEv2-etcdctl.md mkdir -p man/man1 cp ../man-%{man_version}/*.1 man/man1/. +%ifarch loongarch64 sw_64 +cp -af %{_prefix}/lib/golang/src/cmd/vendor/golang.org/x/sys vendor/golang.org/x/ +%endif +%ifarch loongarch64 +tar xf %{SOURCE1000} -C vendor/go.etcd.io/bbolt/ +%endif + %if %{without bootstrap} %build CGO_CFLAGS="-fstack-protector-strong -fPIE -D_FORTIFY_SOURCE=2 -O2" \ CGO_LDFLAGS_ALLOW="-Wl,-z,relro,-z,now" \ CGO_LDFLAGS="-Wl,-z,relro,-z,now -Wl,-z,noexecstack" \ GO111MODULE=on GOFLAGS=-mod=vendor \ -go build -buildmode=pie -ldflags "-linkmode=external -w -s" \ +go build \ +%ifnarch sw_64 + -buildmode=pie \ +%else + -buildmode=exe \ +%endif +-ldflags "-linkmode=external -w -s" \ -o %{gobuilddir}/bin/etcd %{goipath} for cmd in etcdctl; do CGO_CFLAGS="-fstack-protector-strong -fPIE -D_FORTIFY_SOURCE=2 -O2" \ CGO_LDFLAGS_ALLOW="-Wl,-z,relro,-z,now" \ CGO_LDFLAGS="-Wl,-z,relro,-z,now -Wl,-z,noexecstack" \ GO111MODULE=on GOFLAGS=-mod=vendor \ - go build -buildmode=pie -ldflags "-linkmode=external -w -s" \ + go build \ +%ifnarch sw_64 + -buildmode=pie \ +%else + -buildmode=exe \ +%endif + -ldflags "-linkmode=external -w -s" \ -o %{gobuilddir}/bin/$(basename $cmd) %{goipath}/$cmd done %endif @@ -152,6 +171,9 @@ getent passwd %{name} >/dev/null || useradd -r -g %{name} -d %{_sharedstatedir}/ %endif %changelog +* Fri Sep 22 2023 panchenbo - 3.4.14-6 +- add support for loongarch64 and modify sw_64 patch + * Wed Oct 19 2022 wuzx - 3.4.14-5 - add sw64 patch -- Gitee