From f93be58429d77a7928d96205e7ee34e4bbb7cc9c Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Wed, 16 Aug 2017 13:42:04 +0200 Subject: sys: add some known xattr names Move xattr syscalls to own file and better describe xattr names. They usually have prefix+name structure and there are some known values. --- sys/extract.sh | 3 ++- sys/sys.txt | 15 ------------- sys/sys_amd64.const | 14 ------------- sys/sys_amd64.go | 56 +++++++++++++++++++++++++++++++++++++++++-------- sys/sys_arm64.const | 14 ------------- sys/sys_arm64.go | 56 +++++++++++++++++++++++++++++++++++++++++-------- sys/sys_ppc64le.const | 14 ------------- sys/sys_ppc64le.go | 56 +++++++++++++++++++++++++++++++++++++++++-------- sys/xattr.txt | 33 +++++++++++++++++++++++++++++ sys/xattr_amd64.const | 15 +++++++++++++ sys/xattr_arm64.const | 15 +++++++++++++ sys/xattr_ppc64le.const | 15 +++++++++++++ 12 files changed, 221 insertions(+), 85 deletions(-) create mode 100644 sys/xattr.txt create mode 100644 sys/xattr_amd64.const create mode 100644 sys/xattr_arm64.const create mode 100644 sys/xattr_ppc64le.const (limited to 'sys') diff --git a/sys/extract.sh b/sys/extract.sh index 7f8e11dea..59cc723e7 100755 --- a/sys/extract.sh +++ b/sys/extract.sh @@ -28,7 +28,8 @@ UPSTREAM_FILES="sys/bpf.txt sys/dri.txt sys/fuse.txt sys/input.txt sys/ipc.txt sys/socket_inet_sctp.txt sys/socket_inet_dccp.txt sys/socket_kcm.txt sys/socket_key.txt sys/socket_netlink.txt sys/socket_netrom.txt sys/socket_nfc.txt sys/socket_unix.txt - sys/socket_ipx.txt sys/socket_ax25.txt sys/socket_llc.txt" + sys/socket_ipx.txt sys/socket_ax25.txt sys/socket_llc.txt + sys/xattr.txt" ANDROID_FILES="sys/tlk_device.txt sys/ion.txt" diff --git a/sys/sys.txt b/sys/sys.txt index f86a4f8a2..780021557 100644 --- a/sys/sys.txt +++ b/sys/sys.txt @@ -9,7 +9,6 @@ include include include include -include include include include @@ -377,19 +376,6 @@ ioprio_set$pid(which flags[ioprio_which_pid], who pid, prio intptr) ioprio_set$uid(which flags[ioprio_which_uid], who uid, prio intptr) setns(fd fd, type flags[ns_type]) -setxattr(path ptr[in, filename], name ptr[in, string], val ptr[in, string], size len[val], flags flags[setxattr_flags]) -lsetxattr(path ptr[in, filename], name ptr[in, string], val ptr[in, string], size len[val], flags flags[setxattr_flags]) -fsetxattr(fd fd, name ptr[in, string], val ptr[in, string], size len[val], flags flags[setxattr_flags]) -getxattr(path ptr[in, filename], name ptr[in, string], val buffer[out], size len[val]) -lgetxattr(path ptr[in, filename], name ptr[in, string], val buffer[out], size len[val]) -fgetxattr(fd fd, name ptr[in, string], val buffer[out], size len[val]) -listxattr(path ptr[in, filename], list buffer[out], size len[list]) -llistxattr(path ptr[in, filename], list buffer[out], size len[list]) -flistxattr(fd fd, list buffer[out], size len[list]) -removexattr(path ptr[in, filename], name ptr[in, string]) -lremovexattr(path ptr[in, filename], name ptr[in, string]) -fremovexattr(fd fd, name ptr[in, string]) - resource timerid[int32] timer_create(id flags[clock_id], ev ptr[in, sigevent], timerid ptr[out, timerid]) timer_gettime(timerid timerid, setting ptr[out, itimerspec]) @@ -1007,7 +993,6 @@ rlimit_type = RLIMIT_AS, RLIMIT_CORE, RLIMIT_CPU, RLIMIT_DATA, RLIMIT_FSIZE, RLI syslog_cmd = SYSLOG_ACTION_CLOSE, SYSLOG_ACTION_OPEN, SYSLOG_ACTION_READ, SYSLOG_ACTION_READ_ALL, SYSLOG_ACTION_READ_CLEAR, SYSLOG_ACTION_CLEAR, SYSLOG_ACTION_CONSOLE_ON, SYSLOG_ACTION_CONSOLE_OFF, SYSLOG_ACTION_SIZE_UNREAD, SYSLOG_ACTION_SIZE_BUFFER ioprio_which_pid = IOPRIO_WHO_PROCESS, IOPRIO_WHO_PGRP ioprio_which_uid = IOPRIO_WHO_USER -setxattr_flags = XATTR_CREATE, XATTR_REPLACE ns_type = 0, CLONE_NEWIPC, CLONE_NEWNET, CLONE_NEWUTS personality_flags = PER_LINUX, PER_SVR4, PER_SVR3, PER_OSR5, PER_WYSEV386, PER_ISCR4, PER_BSD, PER_XENIX, PER_LINUX32, PER_IRIX32, PER_IRIXN32, PER_IRIX64, PER_RISCOS, PER_SOLARIS, PER_UW7, PER_OSF4, PER_HPUX, ADDR_NO_RANDOMIZE, MMAP_PAGE_ZERO, ADDR_COMPAT_LAYOUT, READ_IMPLIES_EXEC, ADDR_LIMIT_32BIT, SHORT_INODE, WHOLE_SECONDS, STICKY_TIMEOUTS, ADDR_LIMIT_3GB clock_id = CLOCK_REALTIME, CLOCK_REALTIME_COARSE, CLOCK_MONOTONIC, CLOCK_MONOTONIC_COARSE, CLOCK_MONOTONIC_RAW, CLOCK_BOOTTIME, CLOCK_PROCESS_CPUTIME_ID, CLOCK_THREAD_CPUTIME_ID diff --git a/sys/sys_amd64.const b/sys/sys_amd64.const index 79e9e4796..6432dae25 100644 --- a/sys/sys_amd64.const +++ b/sys/sys_amd64.const @@ -598,8 +598,6 @@ WNOHANG = 1 WNOWAIT = 16777216 WSTOPPED = 2 WUNTRACED = 2 -XATTR_CREATE = 1 -XATTR_REPLACE = 2 __NR_acct = 163 __NR_alarm = 37 __NR_arch_prctl = 158 @@ -644,12 +642,8 @@ __NR_fchown = 93 __NR_fchownat = 260 __NR_fcntl = 72 __NR_fdatasync = 75 -__NR_fgetxattr = 193 __NR_finit_module = 313 -__NR_flistxattr = 196 __NR_flock = 73 -__NR_fremovexattr = 199 -__NR_fsetxattr = 190 __NR_fstat = 5 __NR_fstatfs = 138 __NR_fsync = 74 @@ -679,7 +673,6 @@ __NR_getrlimit = 97 __NR_getrusage = 98 __NR_gettid = 186 __NR_getuid = 102 -__NR_getxattr = 191 __NR_init_module = 175 __NR_inotify_add_watch = 254 __NR_inotify_init = 253 @@ -698,15 +691,10 @@ __NR_ioprio_set = 251 __NR_kcmp = 312 __NR_kexec_load = 246 __NR_lchown = 94 -__NR_lgetxattr = 192 __NR_link = 86 __NR_linkat = 265 -__NR_listxattr = 194 -__NR_llistxattr = 195 __NR_lookup_dcookie = 212 -__NR_lremovexattr = 198 __NR_lseek = 8 -__NR_lsetxattr = 189 __NR_lstat = 6 __NR_madvise = 28 __NR_mbind = 237 @@ -768,7 +756,6 @@ __NR_readlink = 89 __NR_readlinkat = 267 __NR_readv = 19 __NR_remap_file_pages = 216 -__NR_removexattr = 197 __NR_rename = 82 __NR_renameat = 264 __NR_renameat2 = 316 @@ -813,7 +800,6 @@ __NR_setresuid = 117 __NR_setreuid = 113 __NR_setrlimit = 160 __NR_setuid = 105 -__NR_setxattr = 188 __NR_sigaltstack = 131 __NR_signalfd = 282 __NR_signalfd4 = 289 diff --git a/sys/sys_amd64.go b/sys/sys_amd64.go index 4724e0e9a..e98aa617f 100644 --- a/sys/sys_amd64.go +++ b/sys/sys_amd64.go @@ -765,6 +765,8 @@ var structArray = []Type{ &StructType{TypeCommon: TypeCommon{TypeName: "vt_stat", IsOptional: false}}, &StructType{TypeCommon: TypeCommon{TypeName: "winsize", IsOptional: false}}, &StructType{TypeCommon: TypeCommon{TypeName: "x25_packet", IsOptional: false}, packed: true}, + &UnionType{TypeCommon: TypeCommon{TypeName: "xattr_name", IsOptional: false}, varlen: true}, + &StructType{TypeCommon: TypeCommon{TypeName: "xattr_name_random", IsOptional: false}, packed: true}, &UnionType{TypeCommon: TypeCommon{TypeName: "xfrm_address", IsOptional: false}}, &StructType{TypeCommon: TypeCommon{TypeName: "xfrm_filter", IsOptional: false}}, &StructType{TypeCommon: TypeCommon{TypeName: "xfrm_id", IsOptional: false}}, @@ -21093,6 +21095,42 @@ var structFields = []struct { &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "frame", ArgDir: DirOut, IsOptional: false}, TypeSize: 1, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{11, 15, 19, 23, 0, 35, 39, 1, 5, 9, 27, 31, 243, 247, 251, 255, 241, 253}}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}, }}, + {structKey{"xattr_name", "", DirIn}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "xattr_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00", "system.advise\x00", "system.sockprotoname\x00", "com.apple.FinderInfo\x00", "com.apple.system.Security\x00"}, Length: 0}, + getStruct(structKey{"xattr_name_random", "random", DirIn}), + }}, + {structKey{"xattr_name", "", DirInOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", ArgDir: DirInOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00", "system.advise\x00", "system.sockprotoname\x00", "com.apple.FinderInfo\x00", "com.apple.system.Security\x00"}, Length: 0}, + getStruct(structKey{"xattr_name_random", "random", DirInOut}), + }}, + {structKey{"xattr_name", "", DirOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", ArgDir: DirOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00", "system.advise\x00", "system.sockprotoname\x00", "com.apple.FinderInfo\x00", "com.apple.system.Security\x00"}, Length: 0}, + getStruct(structKey{"xattr_name_random", "random", DirOut}), + }}, + {structKey{"xattr_name_random", "", DirIn}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, + {structKey{"xattr_name_random", "", DirInOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirInOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirInOut, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, + {structKey{"xattr_name_random", "", DirOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirOut, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, + {structKey{"xattr_name_random", "random", DirIn}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, + {structKey{"xattr_name_random", "random", DirInOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirInOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirInOut, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, + {structKey{"xattr_name_random", "random", DirOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirOut, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, {structKey{"xfrm_address", "", DirIn}, []Type{ getStruct(structKey{"ipv4_addr", "in", DirIn}), getStruct(structKey{"ipv6_addr", "in6", DirIn}), @@ -21609,12 +21647,12 @@ var Calls = []*Call{ &Call{Name: "fcntl$setsig", CallName: "fcntl", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(10)}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "signalno", FldName: "sig", ArgDir: DirIn, IsOptional: false}, TypeSize: 4, BigEndian: false, BitfieldLen: 0}, Kind: IntSignalno}}, NR: 72}, &Call{Name: "fcntl$setstatus", CallName: "fcntl", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(4)}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1024, 8192, 16384, 262144, 2048}}}, NR: 72}, &Call{Name: "fdatasync", CallName: "fdatasync", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}}, NR: 75}, - &Call{Name: "fgetxattr", CallName: "fgetxattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 193}, + &Call{Name: "fgetxattr", CallName: "fgetxattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 193}, &Call{Name: "finit_module", CallName: "finit_module", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "args", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 313}, &Call{Name: "flistxattr", CallName: "flistxattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "list", ByteSize: 0}}, NR: 196}, &Call{Name: "flock", CallName: "flock", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "op", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2, 8, 4}}}, NR: 73}, - &Call{Name: "fremovexattr", CallName: "fremovexattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}}, NR: 199}, - &Call{Name: "fsetxattr", CallName: "fsetxattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 190}, + &Call{Name: "fremovexattr", CallName: "fremovexattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}}, NR: 199}, + &Call{Name: "fsetxattr", CallName: "fsetxattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 190}, &Call{Name: "fstat", CallName: "fstat", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "statbuf", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"stat", "", DirOut})}}, NR: 5}, &Call{Name: "fstatfs", CallName: "fstatfs", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}}, NR: 138}, &Call{Name: "fsync", CallName: "fsync", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}}, NR: 74}, @@ -21810,7 +21848,7 @@ var Calls = []*Call{ &Call{Name: "getsockopt$sock_timeval", CallName: "getsockopt", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(1)}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "optname", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{20, 21}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "optval", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"timeval", "", DirOut})}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "optlen", ArgDir: DirIn, IsOptional: false}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "", ArgDir: DirInOut, IsOptional: false}, TypeSize: 4, BigEndian: false, BitfieldLen: 0}, Buf: "optval", ByteSize: 0}}}, NR: 55}, &Call{Name: "gettid", CallName: "gettid", Native: true, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "ret", ArgDir: DirOut, IsOptional: false}, Desc: resource("pid")}, Args: []Type{}, NR: 186}, &Call{Name: "getuid", CallName: "getuid", Native: true, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "ret", ArgDir: DirOut, IsOptional: false}, Desc: resource("uid")}, Args: []Type{}, NR: 102}, - &Call{Name: "getxattr", CallName: "getxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 191}, + &Call{Name: "getxattr", CallName: "getxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 191}, &Call{Name: "init_module", CallName: "init_module", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "mod", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "mod", ByteSize: 0}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "args", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}}, NR: 175}, &Call{Name: "inotify_add_watch", CallName: "inotify_add_watch", Native: true, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "inotifydesc", FldName: "ret", ArgDir: DirOut, IsOptional: false}, Desc: resource("inotifydesc")}, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_inotify", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_inotify")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "mask", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 4, 8, 16, 256, 512, 1024, 2, 2048, 64, 128, 32, 33554432, 67108864, 536870912, 2147483648, 16777216}}}, NR: 254}, &Call{Name: "inotify_init", CallName: "inotify_init", Native: true, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_inotify", FldName: "ret", ArgDir: DirOut, IsOptional: false}, Desc: resource("fd_inotify")}, Args: []Type{}, NR: 253}, @@ -22358,7 +22396,7 @@ var Calls = []*Call{ &Call{Name: "keyctl$unlink", CallName: "keyctl", Native: true, Args: []Type{&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "code", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(9)}, &ResourceType{TypeCommon: TypeCommon{TypeName: "key", FldName: "key1", ArgDir: DirIn, IsOptional: false}, Desc: resource("key")}, &ResourceType{TypeCommon: TypeCommon{TypeName: "key", FldName: "key2", ArgDir: DirIn, IsOptional: false}, Desc: resource("key")}}, NR: 250}, &Call{Name: "keyctl$update", CallName: "keyctl", Native: true, Args: []Type{&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "code", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(2)}, &ResourceType{TypeCommon: TypeCommon{TypeName: "key", FldName: "key", ArgDir: DirIn, IsOptional: false}, Desc: resource("key")}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "payload", ArgDir: DirIn, IsOptional: true}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "payload", ArgDir: DirIn, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "paylen", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "payload", ByteSize: 0}}, NR: 250}, &Call{Name: "lchown", CallName: "lchown", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "uid", ArgDir: DirIn, IsOptional: false}, Desc: resource("uid")}, &ResourceType{TypeCommon: TypeCommon{TypeName: "gid", FldName: "gid", ArgDir: DirIn, IsOptional: false}, Desc: resource("gid")}}, NR: 94}, - &Call{Name: "lgetxattr", CallName: "lgetxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 192}, + &Call{Name: "lgetxattr", CallName: "lgetxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 192}, &Call{Name: "link", CallName: "link", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "old", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "new", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}}, NR: 86}, &Call{Name: "linkat", CallName: "linkat", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "oldfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "old", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "newfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "new", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{4096, 1024}}}, NR: 265}, &Call{Name: "listen", CallName: "listen", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock")}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "backlog", ArgDir: DirIn, IsOptional: false}, TypeSize: 4, BigEndian: false, BitfieldLen: 0}}}, NR: 50}, @@ -22366,9 +22404,9 @@ var Calls = []*Call{ &Call{Name: "listxattr", CallName: "listxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "list", ByteSize: 0}}, NR: 194}, &Call{Name: "llistxattr", CallName: "llistxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "list", ByteSize: 0}}, NR: 195}, &Call{Name: "lookup_dcookie", CallName: "lookup_dcookie", Native: true, Args: []Type{&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "cookie", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "buf", ByteSize: 0}}, NR: 212}, - &Call{Name: "lremovexattr", CallName: "lremovexattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}}, NR: 198}, + &Call{Name: "lremovexattr", CallName: "lremovexattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}}, NR: 198}, &Call{Name: "lseek", CallName: "lseek", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "fileoff", FldName: "offset", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Kind: IntFileoff}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "whence", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{0, 1, 2, 3, 4}}}, NR: 8}, - &Call{Name: "lsetxattr", CallName: "lsetxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 189}, + &Call{Name: "lsetxattr", CallName: "lsetxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 189}, &Call{Name: "lstat", CallName: "lstat", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "statbuf", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"stat", "", DirOut})}}, NR: 6}, &Call{Name: "madvise", CallName: "madvise", Native: true, Args: []Type{&VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", ArgDir: DirIn, IsOptional: false}, RangeBegin: 0, RangeEnd: 0}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "addr", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "advice", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{0, 1, 2, 3, 4, 9, 10, 11, 100, 101, 12, 13, 14, 15, 16, 17}}}, NR: 28}, &Call{Name: "mbind", CallName: "mbind", Native: true, Args: []Type{&VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", ArgDir: DirIn, IsOptional: false}, RangeBegin: 0, RangeEnd: 0}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "addr", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "mode", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{0, 2, 3, 1, 32768, 16384}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "nodemask", ArgDir: DirIn, IsOptional: false}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "maxnode", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2, 4}}}, NR: 237}, @@ -22513,7 +22551,7 @@ var Calls = []*Call{ &Call{Name: "recvmsg$kcm", CallName: "recvmsg", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_kcm", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock_kcm")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"recv_msghdr", "", DirIn})}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "f", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1073741824, 64, 8192, 1, 2, 32, 256, 65536}}}, NR: 47}, &Call{Name: "recvmsg$netrom", CallName: "recvmsg", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_netrom", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock_netrom")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"msghdr_netrom", "", DirIn})}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "f", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1073741824, 64, 8192, 1, 2, 32, 256, 65536}}}, NR: 47}, &Call{Name: "remap_file_pages", CallName: "remap_file_pages", Native: true, Args: []Type{&VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", ArgDir: DirIn, IsOptional: false}, RangeBegin: 0, RangeEnd: 0}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "addr", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "prot", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{4, 1, 2, 8, 16777216, 33554432}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "pgoff", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2, 64, 32, 2048, 4096, 0, 16, 256, 262144, 8192, 65536, 16384, 32768, 131072, 0}}}, NR: 216}, - &Call{Name: "removexattr", CallName: "removexattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}}, NR: 197}, + &Call{Name: "removexattr", CallName: "removexattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}}, NR: 197}, &Call{Name: "rename", CallName: "rename", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "old", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "new", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}}, NR: 82}, &Call{Name: "renameat", CallName: "renameat", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "oldfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "old", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "newfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "new", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}}, NR: 264}, &Call{Name: "renameat2", CallName: "renameat2", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "oldfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "old", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "newfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "new", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{2, 1, 4}}}, NR: 316}, @@ -22777,7 +22815,7 @@ var Calls = []*Call{ &Call{Name: "setsockopt$sock_timeval", CallName: "setsockopt", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(1)}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "optname", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{20, 21}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "optval", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"timeval", "", DirIn})}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "optlen", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "optval", ByteSize: 0}}, NR: 54}, &Call{Name: "setsockopt$sock_void", CallName: "setsockopt", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(1)}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "optname", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{27, 36}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "optval", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(0)}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "optlen", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(0)}}, NR: 54}, &Call{Name: "setuid", CallName: "setuid", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "uid", ArgDir: DirIn, IsOptional: false}, Desc: resource("uid")}}, NR: 105}, - &Call{Name: "setxattr", CallName: "setxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 188}, + &Call{Name: "setxattr", CallName: "setxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 188}, &Call{Name: "shmat", CallName: "shmat", Native: true, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "shmaddr", FldName: "ret", ArgDir: DirOut, IsOptional: false}, Desc: resource("shmaddr")}, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "ipc_shm", FldName: "shmid", ArgDir: DirIn, IsOptional: false}, Desc: resource("ipc_shm")}, &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", ArgDir: DirIn, IsOptional: false}, RangeBegin: 0, RangeEnd: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{8192, 4096, 16384}}}, NR: 30}, &Call{Name: "shmctl$IPC_INFO", CallName: "shmctl", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "ipc_shm", FldName: "shmid", ArgDir: DirIn, IsOptional: false}, Desc: resource("ipc_shm")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(3)}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}}, NR: 31}, &Call{Name: "shmctl$IPC_RMID", CallName: "shmctl", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "ipc_shm", FldName: "shmid", ArgDir: DirIn, IsOptional: false}, Desc: resource("ipc_shm")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(0)}}, NR: 31}, diff --git a/sys/sys_arm64.const b/sys/sys_arm64.const index 42491d109..34083452d 100644 --- a/sys/sys_arm64.const +++ b/sys/sys_arm64.const @@ -591,8 +591,6 @@ WNOHANG = 1 WNOWAIT = 16777216 WSTOPPED = 2 WUNTRACED = 2 -XATTR_CREATE = 1 -XATTR_REPLACE = 2 __NR_acct = 89 __NR_capget = 90 __NR_capset = 91 @@ -628,12 +626,8 @@ __NR_fchown = 55 __NR_fchownat = 54 __NR_fcntl = 25 __NR_fdatasync = 83 -__NR_fgetxattr = 10 __NR_finit_module = 273 -__NR_flistxattr = 13 __NR_flock = 32 -__NR_fremovexattr = 16 -__NR_fsetxattr = 7 __NR_fstat = 80 __NR_fstatfs = 44 __NR_fsync = 82 @@ -658,7 +652,6 @@ __NR_getrlimit = 163 __NR_getrusage = 165 __NR_gettid = 178 __NR_getuid = 174 -__NR_getxattr = 8 __NR_init_module = 105 __NR_inotify_add_watch = 27 __NR_inotify_init1 = 26 @@ -673,14 +666,9 @@ __NR_ioprio_get = 31 __NR_ioprio_set = 30 __NR_kcmp = 272 __NR_kexec_load = 104 -__NR_lgetxattr = 9 __NR_linkat = 37 -__NR_listxattr = 11 -__NR_llistxattr = 12 __NR_lookup_dcookie = 18 -__NR_lremovexattr = 15 __NR_lseek = 62 -__NR_lsetxattr = 6 __NR_madvise = 233 __NR_mbind = 235 __NR_membarrier = 283 @@ -733,7 +721,6 @@ __NR_readahead = 213 __NR_readlinkat = 78 __NR_readv = 65 __NR_remap_file_pages = 234 -__NR_removexattr = 14 __NR_renameat = 38 __NR_renameat2 = 276 __NR_restart_syscall = 128 @@ -774,7 +761,6 @@ __NR_setresuid = 147 __NR_setreuid = 145 __NR_setrlimit = 164 __NR_setuid = 146 -__NR_setxattr = 5 __NR_sigaltstack = 132 __NR_signalfd4 = 74 __NR_splice = 76 diff --git a/sys/sys_arm64.go b/sys/sys_arm64.go index 854778323..055b4d3ea 100644 --- a/sys/sys_arm64.go +++ b/sys/sys_arm64.go @@ -765,6 +765,8 @@ var structArray = []Type{ &StructType{TypeCommon: TypeCommon{TypeName: "vt_stat", IsOptional: false}}, &StructType{TypeCommon: TypeCommon{TypeName: "winsize", IsOptional: false}}, &StructType{TypeCommon: TypeCommon{TypeName: "x25_packet", IsOptional: false}, packed: true}, + &UnionType{TypeCommon: TypeCommon{TypeName: "xattr_name", IsOptional: false}, varlen: true}, + &StructType{TypeCommon: TypeCommon{TypeName: "xattr_name_random", IsOptional: false}, packed: true}, &UnionType{TypeCommon: TypeCommon{TypeName: "xfrm_address", IsOptional: false}}, &StructType{TypeCommon: TypeCommon{TypeName: "xfrm_filter", IsOptional: false}}, &StructType{TypeCommon: TypeCommon{TypeName: "xfrm_id", IsOptional: false}}, @@ -21093,6 +21095,42 @@ var structFields = []struct { &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "frame", ArgDir: DirOut, IsOptional: false}, TypeSize: 1, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{11, 15, 19, 23, 0, 35, 39, 1, 5, 9, 27, 31, 243, 247, 251, 255, 241, 253}}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}, }}, + {structKey{"xattr_name", "", DirIn}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "xattr_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00", "system.advise\x00", "system.sockprotoname\x00", "com.apple.FinderInfo\x00", "com.apple.system.Security\x00"}, Length: 0}, + getStruct(structKey{"xattr_name_random", "random", DirIn}), + }}, + {structKey{"xattr_name", "", DirInOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", ArgDir: DirInOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00", "system.advise\x00", "system.sockprotoname\x00", "com.apple.FinderInfo\x00", "com.apple.system.Security\x00"}, Length: 0}, + getStruct(structKey{"xattr_name_random", "random", DirInOut}), + }}, + {structKey{"xattr_name", "", DirOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", ArgDir: DirOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00", "system.advise\x00", "system.sockprotoname\x00", "com.apple.FinderInfo\x00", "com.apple.system.Security\x00"}, Length: 0}, + getStruct(structKey{"xattr_name_random", "random", DirOut}), + }}, + {structKey{"xattr_name_random", "", DirIn}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, + {structKey{"xattr_name_random", "", DirInOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirInOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirInOut, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, + {structKey{"xattr_name_random", "", DirOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirOut, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, + {structKey{"xattr_name_random", "random", DirIn}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, + {structKey{"xattr_name_random", "random", DirInOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirInOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirInOut, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, + {structKey{"xattr_name_random", "random", DirOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirOut, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, {structKey{"xfrm_address", "", DirIn}, []Type{ getStruct(structKey{"ipv4_addr", "in", DirIn}), getStruct(structKey{"ipv6_addr", "in6", DirIn}), @@ -21609,12 +21647,12 @@ var Calls = []*Call{ &Call{Name: "fcntl$setsig", CallName: "fcntl", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(10)}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "signalno", FldName: "sig", ArgDir: DirIn, IsOptional: false}, TypeSize: 4, BigEndian: false, BitfieldLen: 0}, Kind: IntSignalno}}, NR: 25}, &Call{Name: "fcntl$setstatus", CallName: "fcntl", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(4)}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1024, 8192, 65536, 262144, 2048}}}, NR: 25}, &Call{Name: "fdatasync", CallName: "fdatasync", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}}, NR: 83}, - &Call{Name: "fgetxattr", CallName: "fgetxattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 10}, + &Call{Name: "fgetxattr", CallName: "fgetxattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 10}, &Call{Name: "finit_module", CallName: "finit_module", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "args", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 273}, &Call{Name: "flistxattr", CallName: "flistxattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "list", ByteSize: 0}}, NR: 13}, &Call{Name: "flock", CallName: "flock", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "op", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2, 8, 4}}}, NR: 32}, - &Call{Name: "fremovexattr", CallName: "fremovexattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}}, NR: 16}, - &Call{Name: "fsetxattr", CallName: "fsetxattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 7}, + &Call{Name: "fremovexattr", CallName: "fremovexattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}}, NR: 16}, + &Call{Name: "fsetxattr", CallName: "fsetxattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 7}, &Call{Name: "fstat", CallName: "fstat", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "statbuf", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"stat", "", DirOut})}}, NR: 80}, &Call{Name: "fstatfs", CallName: "fstatfs", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}}, NR: 44}, &Call{Name: "fsync", CallName: "fsync", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}}, NR: 82}, @@ -21810,7 +21848,7 @@ var Calls = []*Call{ &Call{Name: "getsockopt$sock_timeval", CallName: "getsockopt", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(1)}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "optname", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{20, 21}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "optval", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"timeval", "", DirOut})}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "optlen", ArgDir: DirIn, IsOptional: false}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "", ArgDir: DirInOut, IsOptional: false}, TypeSize: 4, BigEndian: false, BitfieldLen: 0}, Buf: "optval", ByteSize: 0}}}, NR: 209}, &Call{Name: "gettid", CallName: "gettid", Native: true, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "ret", ArgDir: DirOut, IsOptional: false}, Desc: resource("pid")}, Args: []Type{}, NR: 178}, &Call{Name: "getuid", CallName: "getuid", Native: true, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "ret", ArgDir: DirOut, IsOptional: false}, Desc: resource("uid")}, Args: []Type{}, NR: 174}, - &Call{Name: "getxattr", CallName: "getxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 8}, + &Call{Name: "getxattr", CallName: "getxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 8}, &Call{Name: "init_module", CallName: "init_module", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "mod", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "mod", ByteSize: 0}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "args", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}}, NR: 105}, &Call{Name: "inotify_add_watch", CallName: "inotify_add_watch", Native: true, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "inotifydesc", FldName: "ret", ArgDir: DirOut, IsOptional: false}, Desc: resource("inotifydesc")}, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_inotify", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_inotify")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "mask", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 4, 8, 16, 256, 512, 1024, 2, 2048, 64, 128, 32, 33554432, 67108864, 536870912, 2147483648, 16777216}}}, NR: 27}, &Call{Name: "inotify_init", CallName: "inotify_init", Native: true, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_inotify", FldName: "ret", ArgDir: DirOut, IsOptional: false}, Desc: resource("fd_inotify")}, Args: []Type{}, NR: -1}, @@ -22358,7 +22396,7 @@ var Calls = []*Call{ &Call{Name: "keyctl$unlink", CallName: "keyctl", Native: true, Args: []Type{&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "code", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(9)}, &ResourceType{TypeCommon: TypeCommon{TypeName: "key", FldName: "key1", ArgDir: DirIn, IsOptional: false}, Desc: resource("key")}, &ResourceType{TypeCommon: TypeCommon{TypeName: "key", FldName: "key2", ArgDir: DirIn, IsOptional: false}, Desc: resource("key")}}, NR: 219}, &Call{Name: "keyctl$update", CallName: "keyctl", Native: true, Args: []Type{&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "code", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(2)}, &ResourceType{TypeCommon: TypeCommon{TypeName: "key", FldName: "key", ArgDir: DirIn, IsOptional: false}, Desc: resource("key")}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "payload", ArgDir: DirIn, IsOptional: true}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "payload", ArgDir: DirIn, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "paylen", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "payload", ByteSize: 0}}, NR: 219}, &Call{Name: "lchown", CallName: "lchown", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "uid", ArgDir: DirIn, IsOptional: false}, Desc: resource("uid")}, &ResourceType{TypeCommon: TypeCommon{TypeName: "gid", FldName: "gid", ArgDir: DirIn, IsOptional: false}, Desc: resource("gid")}}, NR: -1}, - &Call{Name: "lgetxattr", CallName: "lgetxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 9}, + &Call{Name: "lgetxattr", CallName: "lgetxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 9}, &Call{Name: "link", CallName: "link", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "old", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "new", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}}, NR: -1}, &Call{Name: "linkat", CallName: "linkat", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "oldfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "old", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "newfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "new", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{4096, 1024}}}, NR: 37}, &Call{Name: "listen", CallName: "listen", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock")}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "backlog", ArgDir: DirIn, IsOptional: false}, TypeSize: 4, BigEndian: false, BitfieldLen: 0}}}, NR: 201}, @@ -22366,9 +22404,9 @@ var Calls = []*Call{ &Call{Name: "listxattr", CallName: "listxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "list", ByteSize: 0}}, NR: 11}, &Call{Name: "llistxattr", CallName: "llistxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "list", ByteSize: 0}}, NR: 12}, &Call{Name: "lookup_dcookie", CallName: "lookup_dcookie", Native: true, Args: []Type{&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "cookie", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "buf", ByteSize: 0}}, NR: 18}, - &Call{Name: "lremovexattr", CallName: "lremovexattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}}, NR: 15}, + &Call{Name: "lremovexattr", CallName: "lremovexattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}}, NR: 15}, &Call{Name: "lseek", CallName: "lseek", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "fileoff", FldName: "offset", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Kind: IntFileoff}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "whence", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{0, 1, 2, 3, 4}}}, NR: 62}, - &Call{Name: "lsetxattr", CallName: "lsetxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 6}, + &Call{Name: "lsetxattr", CallName: "lsetxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 6}, &Call{Name: "lstat", CallName: "lstat", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "statbuf", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"stat", "", DirOut})}}, NR: -1}, &Call{Name: "madvise", CallName: "madvise", Native: true, Args: []Type{&VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", ArgDir: DirIn, IsOptional: false}, RangeBegin: 0, RangeEnd: 0}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "addr", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "advice", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{0, 1, 2, 3, 4, 9, 10, 11, 100, 101, 12, 13, 14, 15, 16, 17}}}, NR: 233}, &Call{Name: "mbind", CallName: "mbind", Native: true, Args: []Type{&VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", ArgDir: DirIn, IsOptional: false}, RangeBegin: 0, RangeEnd: 0}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "addr", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "mode", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{0, 2, 3, 1, 32768, 16384}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "nodemask", ArgDir: DirIn, IsOptional: false}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "maxnode", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2, 4}}}, NR: 235}, @@ -22513,7 +22551,7 @@ var Calls = []*Call{ &Call{Name: "recvmsg$kcm", CallName: "recvmsg", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_kcm", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock_kcm")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"recv_msghdr", "", DirIn})}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "f", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1073741824, 64, 8192, 1, 2, 32, 256, 65536}}}, NR: 212}, &Call{Name: "recvmsg$netrom", CallName: "recvmsg", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_netrom", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock_netrom")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"msghdr_netrom", "", DirIn})}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "f", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1073741824, 64, 8192, 1, 2, 32, 256, 65536}}}, NR: 212}, &Call{Name: "remap_file_pages", CallName: "remap_file_pages", Native: true, Args: []Type{&VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", ArgDir: DirIn, IsOptional: false}, RangeBegin: 0, RangeEnd: 0}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "addr", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "prot", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{4, 1, 2, 8, 16777216, 33554432}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "pgoff", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2, 32, 2048, 4096, 0, 16, 256, 262144, 8192, 65536, 16384, 32768, 131072, 0}}}, NR: 234}, - &Call{Name: "removexattr", CallName: "removexattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}}, NR: 14}, + &Call{Name: "removexattr", CallName: "removexattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}}, NR: 14}, &Call{Name: "rename", CallName: "rename", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "old", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "new", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}}, NR: -1}, &Call{Name: "renameat", CallName: "renameat", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "oldfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "old", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "newfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "new", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}}, NR: 38}, &Call{Name: "renameat2", CallName: "renameat2", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "oldfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "old", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "newfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "new", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{2, 1, 4}}}, NR: 276}, @@ -22777,7 +22815,7 @@ var Calls = []*Call{ &Call{Name: "setsockopt$sock_timeval", CallName: "setsockopt", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(1)}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "optname", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{20, 21}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "optval", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"timeval", "", DirIn})}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "optlen", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "optval", ByteSize: 0}}, NR: 208}, &Call{Name: "setsockopt$sock_void", CallName: "setsockopt", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(1)}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "optname", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{27, 36}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "optval", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(0)}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "optlen", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(0)}}, NR: 208}, &Call{Name: "setuid", CallName: "setuid", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "uid", ArgDir: DirIn, IsOptional: false}, Desc: resource("uid")}}, NR: 146}, - &Call{Name: "setxattr", CallName: "setxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 5}, + &Call{Name: "setxattr", CallName: "setxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 5}, &Call{Name: "shmat", CallName: "shmat", Native: true, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "shmaddr", FldName: "ret", ArgDir: DirOut, IsOptional: false}, Desc: resource("shmaddr")}, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "ipc_shm", FldName: "shmid", ArgDir: DirIn, IsOptional: false}, Desc: resource("ipc_shm")}, &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", ArgDir: DirIn, IsOptional: false}, RangeBegin: 0, RangeEnd: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{8192, 4096, 16384}}}, NR: 196}, &Call{Name: "shmctl$IPC_INFO", CallName: "shmctl", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "ipc_shm", FldName: "shmid", ArgDir: DirIn, IsOptional: false}, Desc: resource("ipc_shm")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(3)}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}}, NR: 195}, &Call{Name: "shmctl$IPC_RMID", CallName: "shmctl", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "ipc_shm", FldName: "shmid", ArgDir: DirIn, IsOptional: false}, Desc: resource("ipc_shm")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(0)}}, NR: 195}, diff --git a/sys/sys_ppc64le.const b/sys/sys_ppc64le.const index f779dc047..509e5559b 100644 --- a/sys/sys_ppc64le.const +++ b/sys/sys_ppc64le.const @@ -595,8 +595,6 @@ WNOHANG = 1 WNOWAIT = 16777216 WSTOPPED = 2 WUNTRACED = 2 -XATTR_CREATE = 1 -XATTR_REPLACE = 2 __NR_acct = 51 __NR_alarm = 27 __NR_capget = 183 @@ -640,12 +638,8 @@ __NR_fchown = 95 __NR_fchownat = 289 __NR_fcntl = 55 __NR_fdatasync = 148 -__NR_fgetxattr = 214 __NR_finit_module = 353 -__NR_flistxattr = 217 __NR_flock = 143 -__NR_fremovexattr = 220 -__NR_fsetxattr = 211 __NR_fstat = 108 __NR_fstatfs = 100 __NR_fsync = 118 @@ -674,7 +668,6 @@ __NR_getrlimit = 76 __NR_getrusage = 77 __NR_gettid = 207 __NR_getuid = 24 -__NR_getxattr = 212 __NR_init_module = 128 __NR_inotify_add_watch = 276 __NR_inotify_init = 275 @@ -693,15 +686,10 @@ __NR_ioprio_set = 273 __NR_kcmp = 354 __NR_kexec_load = 268 __NR_lchown = 16 -__NR_lgetxattr = 213 __NR_link = 9 __NR_linkat = 294 -__NR_listxattr = 215 -__NR_llistxattr = 216 __NR_lookup_dcookie = 235 -__NR_lremovexattr = 219 __NR_lseek = 19 -__NR_lsetxattr = 210 __NR_lstat = 107 __NR_madvise = 205 __NR_mbind = 259 @@ -760,7 +748,6 @@ __NR_readlink = 85 __NR_readlinkat = 296 __NR_readv = 145 __NR_remap_file_pages = 239 -__NR_removexattr = 218 __NR_rename = 38 __NR_renameat = 293 __NR_renameat2 = 357 @@ -804,7 +791,6 @@ __NR_setresuid = 164 __NR_setreuid = 70 __NR_setrlimit = 75 __NR_setuid = 23 -__NR_setxattr = 209 __NR_sigaltstack = 185 __NR_signalfd = 305 __NR_signalfd4 = 313 diff --git a/sys/sys_ppc64le.go b/sys/sys_ppc64le.go index da1ad2c4c..7294777cc 100644 --- a/sys/sys_ppc64le.go +++ b/sys/sys_ppc64le.go @@ -765,6 +765,8 @@ var structArray = []Type{ &StructType{TypeCommon: TypeCommon{TypeName: "vt_stat", IsOptional: false}}, &StructType{TypeCommon: TypeCommon{TypeName: "winsize", IsOptional: false}}, &StructType{TypeCommon: TypeCommon{TypeName: "x25_packet", IsOptional: false}, packed: true}, + &UnionType{TypeCommon: TypeCommon{TypeName: "xattr_name", IsOptional: false}, varlen: true}, + &StructType{TypeCommon: TypeCommon{TypeName: "xattr_name_random", IsOptional: false}, packed: true}, &UnionType{TypeCommon: TypeCommon{TypeName: "xfrm_address", IsOptional: false}}, &StructType{TypeCommon: TypeCommon{TypeName: "xfrm_filter", IsOptional: false}}, &StructType{TypeCommon: TypeCommon{TypeName: "xfrm_id", IsOptional: false}}, @@ -21093,6 +21095,42 @@ var structFields = []struct { &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "frame", ArgDir: DirOut, IsOptional: false}, TypeSize: 1, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{11, 15, 19, 23, 0, 35, 39, 1, 5, 9, 27, 31, 243, 247, 251, 255, 241, 253}}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}, }}, + {structKey{"xattr_name", "", DirIn}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "xattr_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00", "system.advise\x00", "system.sockprotoname\x00", "com.apple.FinderInfo\x00", "com.apple.system.Security\x00"}, Length: 0}, + getStruct(structKey{"xattr_name_random", "random", DirIn}), + }}, + {structKey{"xattr_name", "", DirInOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", ArgDir: DirInOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00", "system.advise\x00", "system.sockprotoname\x00", "com.apple.FinderInfo\x00", "com.apple.system.Security\x00"}, Length: 0}, + getStruct(structKey{"xattr_name_random", "random", DirInOut}), + }}, + {structKey{"xattr_name", "", DirOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", ArgDir: DirOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00", "system.advise\x00", "system.sockprotoname\x00", "com.apple.FinderInfo\x00", "com.apple.system.Security\x00"}, Length: 0}, + getStruct(structKey{"xattr_name_random", "random", DirOut}), + }}, + {structKey{"xattr_name_random", "", DirIn}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, + {structKey{"xattr_name_random", "", DirInOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirInOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirInOut, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, + {structKey{"xattr_name_random", "", DirOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirOut, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, + {structKey{"xattr_name_random", "random", DirIn}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, + {structKey{"xattr_name_random", "random", DirInOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirInOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirInOut, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, + {structKey{"xattr_name_random", "random", DirOut}, []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "prefix", ArgDir: DirOut, IsOptional: false}, Kind: BufferString, SubKind: "xattr_prefix", Values: []string{"system.\x00", "trusted.\x00", "security.\x00", "user.\x00", "btrfs.\x00", "osx.\x00", "os2.\x00"}, Length: 0}, + &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", ArgDir: DirOut, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}, + }}, {structKey{"xfrm_address", "", DirIn}, []Type{ getStruct(structKey{"ipv4_addr", "in", DirIn}), getStruct(structKey{"ipv6_addr", "in6", DirIn}), @@ -21609,12 +21647,12 @@ var Calls = []*Call{ &Call{Name: "fcntl$setsig", CallName: "fcntl", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(10)}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "signalno", FldName: "sig", ArgDir: DirIn, IsOptional: false}, TypeSize: 4, BigEndian: false, BitfieldLen: 0}, Kind: IntSignalno}}, NR: 55}, &Call{Name: "fcntl$setstatus", CallName: "fcntl", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(4)}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1024, 8192, 131072, 262144, 2048}}}, NR: 55}, &Call{Name: "fdatasync", CallName: "fdatasync", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}}, NR: 148}, - &Call{Name: "fgetxattr", CallName: "fgetxattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 214}, + &Call{Name: "fgetxattr", CallName: "fgetxattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 214}, &Call{Name: "finit_module", CallName: "finit_module", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "args", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 353}, &Call{Name: "flistxattr", CallName: "flistxattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "list", ByteSize: 0}}, NR: 217}, &Call{Name: "flock", CallName: "flock", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "op", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2, 8, 4}}}, NR: 143}, - &Call{Name: "fremovexattr", CallName: "fremovexattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}}, NR: 220}, - &Call{Name: "fsetxattr", CallName: "fsetxattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 211}, + &Call{Name: "fremovexattr", CallName: "fremovexattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}}, NR: 220}, + &Call{Name: "fsetxattr", CallName: "fsetxattr", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 211}, &Call{Name: "fstat", CallName: "fstat", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "statbuf", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"stat", "", DirOut})}}, NR: 108}, &Call{Name: "fstatfs", CallName: "fstatfs", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}}, NR: 100}, &Call{Name: "fsync", CallName: "fsync", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}}, NR: 118}, @@ -21810,7 +21848,7 @@ var Calls = []*Call{ &Call{Name: "getsockopt$sock_timeval", CallName: "getsockopt", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(1)}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "optname", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{18, 19}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "optval", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"timeval", "", DirOut})}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "optlen", ArgDir: DirIn, IsOptional: false}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "", ArgDir: DirInOut, IsOptional: false}, TypeSize: 4, BigEndian: false, BitfieldLen: 0}, Buf: "optval", ByteSize: 0}}}, NR: 340}, &Call{Name: "gettid", CallName: "gettid", Native: true, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "ret", ArgDir: DirOut, IsOptional: false}, Desc: resource("pid")}, Args: []Type{}, NR: 207}, &Call{Name: "getuid", CallName: "getuid", Native: true, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "ret", ArgDir: DirOut, IsOptional: false}, Desc: resource("uid")}, Args: []Type{}, NR: 24}, - &Call{Name: "getxattr", CallName: "getxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 212}, + &Call{Name: "getxattr", CallName: "getxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 212}, &Call{Name: "init_module", CallName: "init_module", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "mod", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "mod", ByteSize: 0}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "args", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}}, NR: 128}, &Call{Name: "inotify_add_watch", CallName: "inotify_add_watch", Native: true, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "inotifydesc", FldName: "ret", ArgDir: DirOut, IsOptional: false}, Desc: resource("inotifydesc")}, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_inotify", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_inotify")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "mask", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 4, 8, 16, 256, 512, 1024, 2, 2048, 64, 128, 32, 33554432, 67108864, 536870912, 2147483648, 16777216}}}, NR: 276}, &Call{Name: "inotify_init", CallName: "inotify_init", Native: true, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_inotify", FldName: "ret", ArgDir: DirOut, IsOptional: false}, Desc: resource("fd_inotify")}, Args: []Type{}, NR: 275}, @@ -22358,7 +22396,7 @@ var Calls = []*Call{ &Call{Name: "keyctl$unlink", CallName: "keyctl", Native: true, Args: []Type{&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "code", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(9)}, &ResourceType{TypeCommon: TypeCommon{TypeName: "key", FldName: "key1", ArgDir: DirIn, IsOptional: false}, Desc: resource("key")}, &ResourceType{TypeCommon: TypeCommon{TypeName: "key", FldName: "key2", ArgDir: DirIn, IsOptional: false}, Desc: resource("key")}}, NR: 271}, &Call{Name: "keyctl$update", CallName: "keyctl", Native: true, Args: []Type{&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "code", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(2)}, &ResourceType{TypeCommon: TypeCommon{TypeName: "key", FldName: "key", ArgDir: DirIn, IsOptional: false}, Desc: resource("key")}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "payload", ArgDir: DirIn, IsOptional: true}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "payload", ArgDir: DirIn, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "paylen", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "payload", ByteSize: 0}}, NR: 271}, &Call{Name: "lchown", CallName: "lchown", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "uid", ArgDir: DirIn, IsOptional: false}, Desc: resource("uid")}, &ResourceType{TypeCommon: TypeCommon{TypeName: "gid", FldName: "gid", ArgDir: DirIn, IsOptional: false}, Desc: resource("gid")}}, NR: 16}, - &Call{Name: "lgetxattr", CallName: "lgetxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 213}, + &Call{Name: "lgetxattr", CallName: "lgetxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "val", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}}, NR: 213}, &Call{Name: "link", CallName: "link", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "old", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "new", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}}, NR: 9}, &Call{Name: "linkat", CallName: "linkat", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "oldfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "old", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "newfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "new", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{4096, 1024}}}, NR: 294}, &Call{Name: "listen", CallName: "listen", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock")}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "backlog", ArgDir: DirIn, IsOptional: false}, TypeSize: 4, BigEndian: false, BitfieldLen: 0}}}, NR: 329}, @@ -22366,9 +22404,9 @@ var Calls = []*Call{ &Call{Name: "listxattr", CallName: "listxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "list", ByteSize: 0}}, NR: 215}, &Call{Name: "llistxattr", CallName: "llistxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "list", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "list", ByteSize: 0}}, NR: 216}, &Call{Name: "lookup_dcookie", CallName: "lookup_dcookie", Native: true, Args: []Type{&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "cookie", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "buf", ByteSize: 0}}, NR: 235}, - &Call{Name: "lremovexattr", CallName: "lremovexattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}}, NR: 219}, + &Call{Name: "lremovexattr", CallName: "lremovexattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}}, NR: 219}, &Call{Name: "lseek", CallName: "lseek", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd")}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "fileoff", FldName: "offset", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Kind: IntFileoff}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "whence", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{0, 1, 2, 3, 4}}}, NR: 19}, - &Call{Name: "lsetxattr", CallName: "lsetxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 210}, + &Call{Name: "lsetxattr", CallName: "lsetxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 210}, &Call{Name: "lstat", CallName: "lstat", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "statbuf", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"stat", "", DirOut})}}, NR: 107}, &Call{Name: "madvise", CallName: "madvise", Native: true, Args: []Type{&VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", ArgDir: DirIn, IsOptional: false}, RangeBegin: 0, RangeEnd: 0}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "addr", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "advice", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{0, 1, 2, 3, 4, 9, 10, 11, 100, 101, 12, 13, 14, 15, 16, 17}}}, NR: 205}, &Call{Name: "mbind", CallName: "mbind", Native: true, Args: []Type{&VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", ArgDir: DirIn, IsOptional: false}, RangeBegin: 0, RangeEnd: 0}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "addr", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "mode", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{0, 2, 3, 1, 32768, 16384}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "nodemask", ArgDir: DirIn, IsOptional: false}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "maxnode", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2, 4}}}, NR: 259}, @@ -22513,7 +22551,7 @@ var Calls = []*Call{ &Call{Name: "recvmsg$kcm", CallName: "recvmsg", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_kcm", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock_kcm")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"recv_msghdr", "", DirIn})}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "f", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1073741824, 64, 8192, 1, 2, 32, 256, 65536}}}, NR: 342}, &Call{Name: "recvmsg$netrom", CallName: "recvmsg", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_netrom", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock_netrom")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"msghdr_netrom", "", DirIn})}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "f", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1073741824, 64, 8192, 1, 2, 32, 256, 65536}}}, NR: 342}, &Call{Name: "remap_file_pages", CallName: "remap_file_pages", Native: true, Args: []Type{&VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", ArgDir: DirIn, IsOptional: false}, RangeBegin: 0, RangeEnd: 0}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "addr", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "prot", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{4, 1, 2, 8, 16777216, 33554432}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "pgoff", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2, 32, 2048, 4096, 0, 16, 256, 262144, 128, 65536, 64, 32768, 131072, 0}}}, NR: 239}, - &Call{Name: "removexattr", CallName: "removexattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}}, NR: 218}, + &Call{Name: "removexattr", CallName: "removexattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}}, NR: 218}, &Call{Name: "rename", CallName: "rename", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "old", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "new", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}}, NR: 38}, &Call{Name: "renameat", CallName: "renameat", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "oldfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "old", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "newfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "new", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}}, NR: 293}, &Call{Name: "renameat2", CallName: "renameat2", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "oldfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "old", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "newfd", ArgDir: DirIn, IsOptional: false}, Desc: resource("fd_dir")}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "new", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{2, 1, 4}}}, NR: 357}, @@ -22777,7 +22815,7 @@ var Calls = []*Call{ &Call{Name: "setsockopt$sock_timeval", CallName: "setsockopt", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(1)}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "optname", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{18, 19}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "optval", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"timeval", "", DirIn})}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "optlen", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "optval", ByteSize: 0}}, NR: 339}, &Call{Name: "setsockopt$sock_void", CallName: "setsockopt", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "sock", FldName: "fd", ArgDir: DirIn, IsOptional: false}, Desc: resource("sock")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(1)}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "optname", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{27, 36}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "optval", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(0)}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "optlen", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(0)}}, NR: 339}, &Call{Name: "setuid", CallName: "setuid", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "uid", ArgDir: DirIn, IsOptional: false}, Desc: resource("uid")}}, NR: 23}, - &Call{Name: "setxattr", CallName: "setxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 209}, + &Call{Name: "setxattr", CallName: "setxattr", Native: true, Args: []Type{&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferFilename}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", ArgDir: DirIn, IsOptional: false}, Type: getStruct(structKey{"xattr_name", "", DirIn})}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "", ArgDir: DirIn, IsOptional: false}, Kind: BufferString, SubKind: "", Values: []string(nil), Length: 0}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Buf: "val", ByteSize: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{1, 2}}}, NR: 209}, &Call{Name: "shmat", CallName: "shmat", Native: true, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "shmaddr", FldName: "ret", ArgDir: DirOut, IsOptional: false}, Desc: resource("shmaddr")}, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "ipc_shm", FldName: "shmid", ArgDir: DirIn, IsOptional: false}, Desc: resource("ipc_shm")}, &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", ArgDir: DirIn, IsOptional: false}, RangeBegin: 0, RangeEnd: 0}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "flags", FldName: "flags", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Vals: []uintptr{8192, 4096, 16384}}}, NR: -1}, &Call{Name: "shmctl$IPC_INFO", CallName: "shmctl", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "ipc_shm", FldName: "shmid", ArgDir: DirIn, IsOptional: false}, Desc: resource("ipc_shm")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(3)}, &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirIn, IsOptional: false}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", ArgDir: DirOut, IsOptional: false}, Kind: BufferBlobRand}}}, NR: -1}, &Call{Name: "shmctl$IPC_RMID", CallName: "shmctl", Native: true, Args: []Type{&ResourceType{TypeCommon: TypeCommon{TypeName: "ipc_shm", FldName: "shmid", ArgDir: DirIn, IsOptional: false}, Desc: resource("ipc_shm")}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", ArgDir: DirIn, IsOptional: false}, TypeSize: 8, BigEndian: false, BitfieldLen: 0}, Val: uintptr(0)}}, NR: -1}, diff --git a/sys/xattr.txt b/sys/xattr.txt new file mode 100644 index 000000000..1555aa689 --- /dev/null +++ b/sys/xattr.txt @@ -0,0 +1,33 @@ +# Copyright 2017 syzkaller project authors. All rights reserved. +# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. + +include + +setxattr(path ptr[in, filename], name ptr[in, xattr_name], val ptr[in, string], size len[val], flags flags[setxattr_flags]) +lsetxattr(path ptr[in, filename], name ptr[in, xattr_name], val ptr[in, string], size len[val], flags flags[setxattr_flags]) +fsetxattr(fd fd, name ptr[in, xattr_name], val ptr[in, string], size len[val], flags flags[setxattr_flags]) +getxattr(path ptr[in, filename], name ptr[in, xattr_name], val buffer[out], size len[val]) +lgetxattr(path ptr[in, filename], name ptr[in, xattr_name], val buffer[out], size len[val]) +fgetxattr(fd fd, name ptr[in, xattr_name], val buffer[out], size len[val]) +listxattr(path ptr[in, filename], list buffer[out], size len[list]) +llistxattr(path ptr[in, filename], list buffer[out], size len[list]) +flistxattr(fd fd, list buffer[out], size len[list]) +removexattr(path ptr[in, filename], name ptr[in, xattr_name]) +lremovexattr(path ptr[in, filename], name ptr[in, xattr_name]) +fremovexattr(fd fd, name ptr[in, xattr_name]) + +xattr_name [ + known string[xattr_names] + random xattr_name_random +] [varlen] + +xattr_name_random { + prefix string[xattr_prefix] + name string +} [packed] + +setxattr_flags = XATTR_CREATE, XATTR_REPLACE + +xattr_prefix = "system.", "trusted.", "security.", "user.", "btrfs.", "osx.", "os2." + +xattr_names = "system.posix_acl_access", "system.posix_acl_default", "system.advise", "system.sockprotoname", "com.apple.FinderInfo", "com.apple.system.Security" diff --git a/sys/xattr_amd64.const b/sys/xattr_amd64.const new file mode 100644 index 000000000..57417ef4d --- /dev/null +++ b/sys/xattr_amd64.const @@ -0,0 +1,15 @@ +# AUTOGENERATED FILE +XATTR_CREATE = 1 +XATTR_REPLACE = 2 +__NR_fgetxattr = 193 +__NR_flistxattr = 196 +__NR_fremovexattr = 199 +__NR_fsetxattr = 190 +__NR_getxattr = 191 +__NR_lgetxattr = 192 +__NR_listxattr = 194 +__NR_llistxattr = 195 +__NR_lremovexattr = 198 +__NR_lsetxattr = 189 +__NR_removexattr = 197 +__NR_setxattr = 188 diff --git a/sys/xattr_arm64.const b/sys/xattr_arm64.const new file mode 100644 index 000000000..d5cb26023 --- /dev/null +++ b/sys/xattr_arm64.const @@ -0,0 +1,15 @@ +# AUTOGENERATED FILE +XATTR_CREATE = 1 +XATTR_REPLACE = 2 +__NR_fgetxattr = 10 +__NR_flistxattr = 13 +__NR_fremovexattr = 16 +__NR_fsetxattr = 7 +__NR_getxattr = 8 +__NR_lgetxattr = 9 +__NR_listxattr = 11 +__NR_llistxattr = 12 +__NR_lremovexattr = 15 +__NR_lsetxattr = 6 +__NR_removexattr = 14 +__NR_setxattr = 5 diff --git a/sys/xattr_ppc64le.const b/sys/xattr_ppc64le.const new file mode 100644 index 000000000..592ffbbb2 --- /dev/null +++ b/sys/xattr_ppc64le.const @@ -0,0 +1,15 @@ +# AUTOGENERATED FILE +XATTR_CREATE = 1 +XATTR_REPLACE = 2 +__NR_fgetxattr = 214 +__NR_flistxattr = 217 +__NR_fremovexattr = 220 +__NR_fsetxattr = 211 +__NR_getxattr = 212 +__NR_lgetxattr = 213 +__NR_listxattr = 215 +__NR_llistxattr = 216 +__NR_lremovexattr = 219 +__NR_lsetxattr = 210 +__NR_removexattr = 218 +__NR_setxattr = 209 -- cgit mrf-deployment