aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2018-09-02 06:19:08 +0200
committerDmitry Vyukov <dvyukov@google.com>2018-09-02 06:47:18 +0200
commit8d971420eead44f8995c02d0f01e81d978f90b89 (patch)
tree706642da67b456ed86c0366c8facc0ccbd25885f /sys/linux
parent9b32215970015234231ca66ad52a318d074ba952 (diff)
sys/linux: extend xattr descriptions
Update #533
Diffstat (limited to 'sys/linux')
-rw-r--r--sys/linux/gen/386.go201
-rw-r--r--sys/linux/gen/amd64.go201
-rw-r--r--sys/linux/gen/arm.go201
-rw-r--r--sys/linux/gen/arm64.go201
-rw-r--r--sys/linux/gen/ppc64le.go201
-rw-r--r--sys/linux/xattr.txt76
-rw-r--r--sys/linux/xattr_386.const15
-rw-r--r--sys/linux/xattr_amd64.const15
-rw-r--r--sys/linux/xattr_arm.const15
-rw-r--r--sys/linux/xattr_arm64.const15
-rw-r--r--sys/linux/xattr_ppc64le.const15
11 files changed, 1144 insertions, 12 deletions
diff --git a/sys/linux/gen/386.go b/sys/linux/gen/386.go
index 56fc496f4..45f7221b5 100644
--- a/sys/linux/gen/386.go
+++ b/sys/linux/gen/386.go
@@ -14381,6 +14381,15 @@ var structDescs_386 = []*KeyedStruct{
&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "metacopy_on", TypeSize: 11}, Kind: 2, Values: []string{"metacopy=on"}, NoZ: true},
&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "metacopy_off", TypeSize: 12}, Kind: 2, Values: []string{"metacopy=off"}, NoZ: true},
}}},
+ {Key: StructKey{Name: "ovl_fh"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ovl_fh", IsVarlen: true}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "version", TypeSize: 1}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "magic", TypeSize: 1}}, Val: 251},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 1}}, BitSize: 8, Buf: "parent"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ovl_fh_flags", FldName: "flags", TypeSize: 1}}, Vals: []uint64{1, 2, 4}, BitMask: true},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "type", TypeSize: 1}}},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "uuid", TypeSize: 16}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "fid", IsVarlen: true}},
+ }}},
{Key: StructKey{Name: "p9_dir"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "p9_dir", IsVarlen: true}, Fields: []Type{
&StructType{Key: StructKey{Name: "p9_qid"}, FldName: "qid"},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
@@ -14865,6 +14874,39 @@ var structDescs_386 = []*KeyedStruct{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pollfd_events", FldName: "events", TypeSize: 2}}, Vals: []uint64{1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 4096, 8192, 16384, 32768}, BitMask: true},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "revents", TypeSize: 2}}},
}}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP, gid]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_GROUP, gid]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 8},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "gid", FldName: "e_id", TypeSize: 4}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP_OBJ, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_GROUP_OBJ, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 4},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_MASK, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_MASK, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 16},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_OTHER, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_OTHER, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 32},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER, uid]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_USER, uid]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 2},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "e_id", TypeSize: 4}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER_OBJ, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_USER_OBJ, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 1},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_header"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_header", TypeSize: 4}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "a_version", TypeSize: 4}}, Val: 2},
+ }}},
{Key: StructKey{Name: "pppoe_addr"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "pppoe_addr", TypeSize: 24}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "sid", TypeSize: 2}}, Kind: 2, RangeEnd: 4},
&UnionType{Key: StructKey{Name: "mac_addr"}, FldName: "remote"},
@@ -20018,13 +20060,27 @@ var structDescs_386 = []*KeyedStruct{
&BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", IsVarlen: true}},
}}},
{Key: StructKey{Name: "xattr_name"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_name", IsVarlen: true}, Fields: []Type{
- &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", IsVarlen: true}, Kind: 2, 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", "user.syz\x00", "trusted.syz\x00", "security.evm\x00", "security.ima\x00", "security.selinux\x00", "security.capability\x00", "trusted.overlay.opaque\x00", "trusted.overlay.redirect\x00", "trusted.overlay.origin\x00", "trusted.overlay.impure\x00", "trusted.overlay.nlink\x00", "trusted.overlay.upper\x00", "trusted.overlay.metacopy\x00"}},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", IsVarlen: true}, Kind: 2, 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", "user.syz\x00", "trusted.syz\x00", "security.evm\x00", "security.ima\x00", "security.selinux\x00", "security.apparmor\x00", "security.capability\x00", "trusted.overlay.opaque\x00", "trusted.overlay.redirect\x00", "trusted.overlay.origin\x00", "trusted.overlay.impure\x00", "trusted.overlay.nlink\x00", "trusted.overlay.upper\x00", "trusted.overlay.metacopy\x00", "security.SMACK64\x00", "security.SMACK64IPIN\x00", "security.SMACK64IPOUT\x00", "security.SMACK64EXEC\x00", "security.SMACK64TRANSMUTE\x00", "security.SMACK64MMAP\x00"}},
&StructType{Key: StructKey{Name: "xattr_name_random"}, FldName: "random"},
}}},
{Key: StructKey{Name: "xattr_name_random"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_name_random", IsVarlen: true}, Fields: []Type{
&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "prefix", IsVarlen: true}, Kind: 2, SubKind: "xattr_prefix", Values: []string{"system.", "trusted.", "security.", "user.", "btrfs.", "osx.", "os2."}, NoZ: true},
&BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", IsVarlen: true}, Kind: 2},
}}},
+ {Key: StructKey{Name: "xattr_overlay_nlink"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_overlay_nlink", TypeSize: 40}, Fields: []Type{
+ &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "prefix", TypeSize: 2}, Kind: 2, SubKind: "xattr_overlay_nlink_prefix", Values: []string{"U+", "U-", "L+", "L-"}, NoZ: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 18}}, IsPad: true},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 20}, ArgFormat: 2}},
+ }}},
+ {Key: StructKey{Name: "xattr_system_posix_acl_access"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_system_posix_acl_access", IsVarlen: true}, Fields: []Type{
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_header"}, FldName: "header"},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER_OBJ, const[0, int32]]"}, FldName: "user_obj"},
+ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "users", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER, uid]"}}},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP_OBJ, const[0, int32]]"}, FldName: "group_obj"},
+ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "groups", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP, gid]"}}},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_MASK, const[0, int32]]"}, FldName: "mask"},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_OTHER, const[0, int32]]"}, FldName: "other"},
+ }}},
{Key: StructKey{Name: "xdp_umem_reg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xdp_umem_reg", TypeSize: 24}, Fields: []Type{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "addr", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "xdp_umem_sizes", FldName: "len", TypeSize: 8}}, Vals: []uint64{4096, 8192, 16384, 32768, 65536, 131072, 1048576, 2097152, 16777216}, BitMask: true},
@@ -22954,6 +23010,48 @@ var syscalls_386 = []*Syscall{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
}},
+ {NR: 228, Name: "fsetxattr$system_posix_acl", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "xattr_posix_acl_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "xattr_system_posix_acl_access"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 228, Name: "fsetxattr$trusted_overlay_nlink", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.nlink\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "xattr_overlay_nlink"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 228, Name: "fsetxattr$trusted_overlay_opaque", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.opaque\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 228, Name: "fsetxattr$trusted_overlay_origin", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.origin\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 228, Name: "fsetxattr$trusted_overlay_redirect", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 25}, Kind: 2, Values: []string{"trusted.overlay.redirect\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 228, Name: "fsetxattr$trusted_overlay_upper", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.upper\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "ovl_fh"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
{NR: 108, Name: "fstat", CallName: "fstat", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "statbuf", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "stat", Dir: 1}}},
@@ -29000,6 +29098,48 @@ var syscalls_386 = []*Syscall{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
}},
+ {NR: 227, Name: "lsetxattr$system_posix_acl", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "xattr_posix_acl_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "xattr_system_posix_acl_access"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 227, Name: "lsetxattr$trusted_overlay_nlink", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.nlink\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "xattr_overlay_nlink"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 227, Name: "lsetxattr$trusted_overlay_opaque", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.opaque\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 227, Name: "lsetxattr$trusted_overlay_origin", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.origin\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 227, Name: "lsetxattr$trusted_overlay_redirect", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 25}, Kind: 2, Values: []string{"trusted.overlay.redirect\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 227, Name: "lsetxattr$trusted_overlay_upper", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.upper\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "ovl_fh"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
{NR: 107, Name: "lstat", CallName: "lstat", Args: []Type{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "statbuf", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "stat", Dir: 1}}},
@@ -32416,6 +32556,48 @@ var syscalls_386 = []*Syscall{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
}},
+ {NR: 226, Name: "setxattr$system_posix_acl", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "xattr_posix_acl_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "xattr_system_posix_acl_access"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 226, Name: "setxattr$trusted_overlay_nlink", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.nlink\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "xattr_overlay_nlink"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 226, Name: "setxattr$trusted_overlay_opaque", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.opaque\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 226, Name: "setxattr$trusted_overlay_origin", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.origin\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 226, Name: "setxattr$trusted_overlay_redirect", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 25}, Kind: 2, Values: []string{"trusted.overlay.redirect\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 226, Name: "setxattr$trusted_overlay_upper", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.upper\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "ovl_fh"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
{NR: 373, Name: "shutdown", CallName: "shutdown", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "sock", FldName: "fd", TypeSize: 4}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "shutdown_flags", FldName: "how", TypeSize: 4}}, Vals: []uint64{0, 1}, BitMask: true},
@@ -34018,6 +34200,15 @@ var syscalls_386 = []*Syscall{
var consts_386 = []ConstValue{
{Name: "ABS_CNT", Value: 64},
{Name: "ABS_MAX", Value: 63},
+ {Name: "ACL_EXECUTE", Value: 1},
+ {Name: "ACL_GROUP", Value: 8},
+ {Name: "ACL_GROUP_OBJ", Value: 4},
+ {Name: "ACL_MASK", Value: 16},
+ {Name: "ACL_OTHER", Value: 32},
+ {Name: "ACL_READ", Value: 4},
+ {Name: "ACL_USER", Value: 2},
+ {Name: "ACL_USER_OBJ", Value: 1},
+ {Name: "ACL_WRITE", Value: 2},
{Name: "ADDR_COMPAT_LAYOUT", Value: 2097152},
{Name: "ADDR_LIMIT_32BIT", Value: 8388608},
{Name: "ADDR_LIMIT_3GB", Value: 134217728},
@@ -36966,6 +37157,10 @@ var consts_386 = []ConstValue{
{Name: "NUD_REACHABLE", Value: 2},
{Name: "NUD_STALE", Value: 4},
{Name: "OMAGIC", Value: 263},
+ {Name: "OVL_FH_FLAG_ANY_ENDIAN", Value: 2},
+ {Name: "OVL_FH_FLAG_BIG_ENDIAN", Value: 1},
+ {Name: "OVL_FH_FLAG_PATH_UPPER", Value: 4},
+ {Name: "OVL_FH_MAGIC", Value: 251},
{Name: "O_APPEND", Value: 1024},
{Name: "O_CLOEXEC", Value: 524288},
{Name: "O_CREAT", Value: 64},
@@ -37212,6 +37407,7 @@ var consts_386 = []ConstValue{
{Name: "POLLWRBAND", Value: 512},
{Name: "POLLWRNORM", Value: 256},
{Name: "POLL_BUSY_LOOP", Value: 32768},
+ {Name: "POSIX_ACL_XATTR_VERSION", Value: 2},
{Name: "POSIX_FADV_DONTNEED", Value: 4},
{Name: "POSIX_FADV_NOREUSE", Value: 5},
{Name: "POSIX_FADV_NORMAL"},
@@ -38830,6 +39026,7 @@ var consts_386 = []ConstValue{
{Name: "USERIO_CMD_SEND_INTERRUPT", Value: 2},
{Name: "USERIO_CMD_SET_PORT_TYPE", Value: 1},
{Name: "USER_CLIENT", Value: 1},
+ {Name: "UUID_SIZE", Value: 16},
{Name: "V4L2_AUDCAP_AVL", Value: 2},
{Name: "V4L2_AUDCAP_STEREO", Value: 1},
{Name: "V4L2_AUDMODE_AVL", Value: 1},
@@ -40483,4 +40680,4 @@ var consts_386 = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_386 = "cf409e12bbb8bef7899f39295b0b6d69d318af8d"
+const revision_386 = "034d4275241b8cebc2c3b9edf1693460dfc8372f"
diff --git a/sys/linux/gen/amd64.go b/sys/linux/gen/amd64.go
index 89311786a..73d6eb765 100644
--- a/sys/linux/gen/amd64.go
+++ b/sys/linux/gen/amd64.go
@@ -14606,6 +14606,15 @@ var structDescs_amd64 = []*KeyedStruct{
&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "metacopy_on", TypeSize: 11}, Kind: 2, Values: []string{"metacopy=on"}, NoZ: true},
&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "metacopy_off", TypeSize: 12}, Kind: 2, Values: []string{"metacopy=off"}, NoZ: true},
}}},
+ {Key: StructKey{Name: "ovl_fh"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ovl_fh", IsVarlen: true}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "version", TypeSize: 1}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "magic", TypeSize: 1}}, Val: 251},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 1}}, BitSize: 8, Buf: "parent"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ovl_fh_flags", FldName: "flags", TypeSize: 1}}, Vals: []uint64{1, 2, 4}, BitMask: true},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "type", TypeSize: 1}}},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "uuid", TypeSize: 16}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "fid", IsVarlen: true}},
+ }}},
{Key: StructKey{Name: "p9_dir"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "p9_dir", IsVarlen: true}, Fields: []Type{
&StructType{Key: StructKey{Name: "p9_qid"}, FldName: "qid"},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
@@ -15090,6 +15099,39 @@ var structDescs_amd64 = []*KeyedStruct{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pollfd_events", FldName: "events", TypeSize: 2}}, Vals: []uint64{1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 4096, 8192, 16384, 32768}, BitMask: true},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "revents", TypeSize: 2}}},
}}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP, gid]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_GROUP, gid]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 8},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "gid", FldName: "e_id", TypeSize: 4}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP_OBJ, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_GROUP_OBJ, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 4},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_MASK, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_MASK, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 16},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_OTHER, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_OTHER, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 32},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER, uid]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_USER, uid]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 2},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "e_id", TypeSize: 4}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER_OBJ, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_USER_OBJ, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 1},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_header"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_header", TypeSize: 4}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "a_version", TypeSize: 4}}, Val: 2},
+ }}},
{Key: StructKey{Name: "pppoe_addr"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "pppoe_addr", TypeSize: 24}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "sid", TypeSize: 2}}, Kind: 2, RangeEnd: 4},
&UnionType{Key: StructKey{Name: "mac_addr"}, FldName: "remote"},
@@ -20350,13 +20392,27 @@ var structDescs_amd64 = []*KeyedStruct{
&BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", IsVarlen: true}},
}}},
{Key: StructKey{Name: "xattr_name"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_name", IsVarlen: true}, Fields: []Type{
- &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", IsVarlen: true}, Kind: 2, 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", "user.syz\x00", "trusted.syz\x00", "security.evm\x00", "security.ima\x00", "security.selinux\x00", "security.capability\x00", "trusted.overlay.opaque\x00", "trusted.overlay.redirect\x00", "trusted.overlay.origin\x00", "trusted.overlay.impure\x00", "trusted.overlay.nlink\x00", "trusted.overlay.upper\x00", "trusted.overlay.metacopy\x00"}},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", IsVarlen: true}, Kind: 2, 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", "user.syz\x00", "trusted.syz\x00", "security.evm\x00", "security.ima\x00", "security.selinux\x00", "security.apparmor\x00", "security.capability\x00", "trusted.overlay.opaque\x00", "trusted.overlay.redirect\x00", "trusted.overlay.origin\x00", "trusted.overlay.impure\x00", "trusted.overlay.nlink\x00", "trusted.overlay.upper\x00", "trusted.overlay.metacopy\x00", "security.SMACK64\x00", "security.SMACK64IPIN\x00", "security.SMACK64IPOUT\x00", "security.SMACK64EXEC\x00", "security.SMACK64TRANSMUTE\x00", "security.SMACK64MMAP\x00"}},
&StructType{Key: StructKey{Name: "xattr_name_random"}, FldName: "random"},
}}},
{Key: StructKey{Name: "xattr_name_random"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_name_random", IsVarlen: true}, Fields: []Type{
&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "prefix", IsVarlen: true}, Kind: 2, SubKind: "xattr_prefix", Values: []string{"system.", "trusted.", "security.", "user.", "btrfs.", "osx.", "os2."}, NoZ: true},
&BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", IsVarlen: true}, Kind: 2},
}}},
+ {Key: StructKey{Name: "xattr_overlay_nlink"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_overlay_nlink", TypeSize: 40}, Fields: []Type{
+ &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "prefix", TypeSize: 2}, Kind: 2, SubKind: "xattr_overlay_nlink_prefix", Values: []string{"U+", "U-", "L+", "L-"}, NoZ: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 18}}, IsPad: true},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 20}, ArgFormat: 2}},
+ }}},
+ {Key: StructKey{Name: "xattr_system_posix_acl_access"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_system_posix_acl_access", IsVarlen: true}, Fields: []Type{
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_header"}, FldName: "header"},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER_OBJ, const[0, int32]]"}, FldName: "user_obj"},
+ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "users", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER, uid]"}}},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP_OBJ, const[0, int32]]"}, FldName: "group_obj"},
+ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "groups", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP, gid]"}}},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_MASK, const[0, int32]]"}, FldName: "mask"},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_OTHER, const[0, int32]]"}, FldName: "other"},
+ }}},
{Key: StructKey{Name: "xdp_umem_reg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xdp_umem_reg", TypeSize: 24}, Fields: []Type{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "addr", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "xdp_umem_sizes", FldName: "len", TypeSize: 8}}, Vals: []uint64{4096, 8192, 16384, 32768, 65536, 131072, 1048576, 2097152, 16777216}, BitMask: true},
@@ -23404,6 +23460,48 @@ var syscalls_amd64 = []*Syscall{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
}},
+ {NR: 190, Name: "fsetxattr$system_posix_acl", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "xattr_posix_acl_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_system_posix_acl_access"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 190, Name: "fsetxattr$trusted_overlay_nlink", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.nlink\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_overlay_nlink"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 190, Name: "fsetxattr$trusted_overlay_opaque", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.opaque\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 190, Name: "fsetxattr$trusted_overlay_origin", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.origin\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 190, Name: "fsetxattr$trusted_overlay_redirect", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 25}, Kind: 2, Values: []string{"trusted.overlay.redirect\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 190, Name: "fsetxattr$trusted_overlay_upper", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.upper\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "ovl_fh"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
{NR: 5, Name: "fstat", CallName: "fstat", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "statbuf", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "stat", Dir: 1}}},
@@ -29470,6 +29568,48 @@ var syscalls_amd64 = []*Syscall{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
}},
+ {NR: 189, Name: "lsetxattr$system_posix_acl", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "xattr_posix_acl_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_system_posix_acl_access"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 189, Name: "lsetxattr$trusted_overlay_nlink", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.nlink\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_overlay_nlink"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 189, Name: "lsetxattr$trusted_overlay_opaque", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.opaque\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 189, Name: "lsetxattr$trusted_overlay_origin", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.origin\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 189, Name: "lsetxattr$trusted_overlay_redirect", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 25}, Kind: 2, Values: []string{"trusted.overlay.redirect\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 189, Name: "lsetxattr$trusted_overlay_upper", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.upper\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "ovl_fh"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
{NR: 6, Name: "lstat", CallName: "lstat", Args: []Type{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "statbuf", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "stat", Dir: 1}}},
@@ -33028,6 +33168,48 @@ var syscalls_amd64 = []*Syscall{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
}},
+ {NR: 188, Name: "setxattr$system_posix_acl", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "xattr_posix_acl_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_system_posix_acl_access"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 188, Name: "setxattr$trusted_overlay_nlink", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.nlink\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_overlay_nlink"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 188, Name: "setxattr$trusted_overlay_opaque", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.opaque\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 188, Name: "setxattr$trusted_overlay_origin", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.origin\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 188, Name: "setxattr$trusted_overlay_redirect", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 25}, Kind: 2, Values: []string{"trusted.overlay.redirect\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 188, Name: "setxattr$trusted_overlay_upper", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.upper\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "ovl_fh"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
{NR: 30, Name: "shmat", CallName: "shmat", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "ipc_shm", FldName: "shmid", TypeSize: 4}},
&VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 8}},
@@ -34687,6 +34869,15 @@ var syscalls_amd64 = []*Syscall{
var consts_amd64 = []ConstValue{
{Name: "ABS_CNT", Value: 64},
{Name: "ABS_MAX", Value: 63},
+ {Name: "ACL_EXECUTE", Value: 1},
+ {Name: "ACL_GROUP", Value: 8},
+ {Name: "ACL_GROUP_OBJ", Value: 4},
+ {Name: "ACL_MASK", Value: 16},
+ {Name: "ACL_OTHER", Value: 32},
+ {Name: "ACL_READ", Value: 4},
+ {Name: "ACL_USER", Value: 2},
+ {Name: "ACL_USER_OBJ", Value: 1},
+ {Name: "ACL_WRITE", Value: 2},
{Name: "ADDR_COMPAT_LAYOUT", Value: 2097152},
{Name: "ADDR_LIMIT_32BIT", Value: 8388608},
{Name: "ADDR_LIMIT_3GB", Value: 134217728},
@@ -37635,6 +37826,10 @@ var consts_amd64 = []ConstValue{
{Name: "NUD_REACHABLE", Value: 2},
{Name: "NUD_STALE", Value: 4},
{Name: "OMAGIC", Value: 263},
+ {Name: "OVL_FH_FLAG_ANY_ENDIAN", Value: 2},
+ {Name: "OVL_FH_FLAG_BIG_ENDIAN", Value: 1},
+ {Name: "OVL_FH_FLAG_PATH_UPPER", Value: 4},
+ {Name: "OVL_FH_MAGIC", Value: 251},
{Name: "O_APPEND", Value: 1024},
{Name: "O_CLOEXEC", Value: 524288},
{Name: "O_CREAT", Value: 64},
@@ -37881,6 +38076,7 @@ var consts_amd64 = []ConstValue{
{Name: "POLLWRBAND", Value: 512},
{Name: "POLLWRNORM", Value: 256},
{Name: "POLL_BUSY_LOOP", Value: 32768},
+ {Name: "POSIX_ACL_XATTR_VERSION", Value: 2},
{Name: "POSIX_FADV_DONTNEED", Value: 4},
{Name: "POSIX_FADV_NOREUSE", Value: 5},
{Name: "POSIX_FADV_NORMAL"},
@@ -39513,6 +39709,7 @@ var consts_amd64 = []ConstValue{
{Name: "USERIO_CMD_SEND_INTERRUPT", Value: 2},
{Name: "USERIO_CMD_SET_PORT_TYPE", Value: 1},
{Name: "USER_CLIENT", Value: 1},
+ {Name: "UUID_SIZE", Value: 16},
{Name: "V4L2_AUDCAP_AVL", Value: 2},
{Name: "V4L2_AUDCAP_STEREO", Value: 1},
{Name: "V4L2_AUDMODE_AVL", Value: 1},
@@ -41177,4 +41374,4 @@ var consts_amd64 = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_amd64 = "3efd822501eed7b0536ca7f8ba2b7720b9f6bab3"
+const revision_amd64 = "9d53ce5e4d4e0304076e90c9405038a6e51e0ac0"
diff --git a/sys/linux/gen/arm.go b/sys/linux/gen/arm.go
index 270ec0ceb..b1e066d8f 100644
--- a/sys/linux/gen/arm.go
+++ b/sys/linux/gen/arm.go
@@ -14236,6 +14236,15 @@ var structDescs_arm = []*KeyedStruct{
&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "metacopy_on", TypeSize: 11}, Kind: 2, Values: []string{"metacopy=on"}, NoZ: true},
&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "metacopy_off", TypeSize: 12}, Kind: 2, Values: []string{"metacopy=off"}, NoZ: true},
}}},
+ {Key: StructKey{Name: "ovl_fh"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ovl_fh", IsVarlen: true}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "version", TypeSize: 1}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "magic", TypeSize: 1}}, Val: 251},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 1}}, BitSize: 8, Buf: "parent"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ovl_fh_flags", FldName: "flags", TypeSize: 1}}, Vals: []uint64{1, 2, 4}, BitMask: true},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "type", TypeSize: 1}}},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "uuid", TypeSize: 16}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "fid", IsVarlen: true}},
+ }}},
{Key: StructKey{Name: "p9_dir"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "p9_dir", IsVarlen: true}, Fields: []Type{
&StructType{Key: StructKey{Name: "p9_qid"}, FldName: "qid"},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
@@ -14720,6 +14729,39 @@ var structDescs_arm = []*KeyedStruct{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pollfd_events", FldName: "events", TypeSize: 2}}, Vals: []uint64{1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 4096, 8192, 16384, 32768}, BitMask: true},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "revents", TypeSize: 2}}},
}}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP, gid]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_GROUP, gid]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 8},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "gid", FldName: "e_id", TypeSize: 4}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP_OBJ, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_GROUP_OBJ, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 4},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_MASK, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_MASK, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 16},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_OTHER, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_OTHER, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 32},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER, uid]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_USER, uid]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 2},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "e_id", TypeSize: 4}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER_OBJ, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_USER_OBJ, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 1},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_header"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_header", TypeSize: 4}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "a_version", TypeSize: 4}}, Val: 2},
+ }}},
{Key: StructKey{Name: "pppoe_addr"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "pppoe_addr", TypeSize: 24}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "sid", TypeSize: 2}}, Kind: 2, RangeEnd: 4},
&UnionType{Key: StructKey{Name: "mac_addr"}, FldName: "remote"},
@@ -19883,13 +19925,27 @@ var structDescs_arm = []*KeyedStruct{
&BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", IsVarlen: true}},
}}},
{Key: StructKey{Name: "xattr_name"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_name", IsVarlen: true}, Fields: []Type{
- &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", IsVarlen: true}, Kind: 2, 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", "user.syz\x00", "trusted.syz\x00", "security.evm\x00", "security.ima\x00", "security.selinux\x00", "security.capability\x00", "trusted.overlay.opaque\x00", "trusted.overlay.redirect\x00", "trusted.overlay.origin\x00", "trusted.overlay.impure\x00", "trusted.overlay.nlink\x00", "trusted.overlay.upper\x00", "trusted.overlay.metacopy\x00"}},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", IsVarlen: true}, Kind: 2, 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", "user.syz\x00", "trusted.syz\x00", "security.evm\x00", "security.ima\x00", "security.selinux\x00", "security.apparmor\x00", "security.capability\x00", "trusted.overlay.opaque\x00", "trusted.overlay.redirect\x00", "trusted.overlay.origin\x00", "trusted.overlay.impure\x00", "trusted.overlay.nlink\x00", "trusted.overlay.upper\x00", "trusted.overlay.metacopy\x00", "security.SMACK64\x00", "security.SMACK64IPIN\x00", "security.SMACK64IPOUT\x00", "security.SMACK64EXEC\x00", "security.SMACK64TRANSMUTE\x00", "security.SMACK64MMAP\x00"}},
&StructType{Key: StructKey{Name: "xattr_name_random"}, FldName: "random"},
}}},
{Key: StructKey{Name: "xattr_name_random"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_name_random", IsVarlen: true}, Fields: []Type{
&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "prefix", IsVarlen: true}, Kind: 2, SubKind: "xattr_prefix", Values: []string{"system.", "trusted.", "security.", "user.", "btrfs.", "osx.", "os2."}, NoZ: true},
&BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", IsVarlen: true}, Kind: 2},
}}},
+ {Key: StructKey{Name: "xattr_overlay_nlink"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_overlay_nlink", TypeSize: 40}, Fields: []Type{
+ &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "prefix", TypeSize: 2}, Kind: 2, SubKind: "xattr_overlay_nlink_prefix", Values: []string{"U+", "U-", "L+", "L-"}, NoZ: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 18}}, IsPad: true},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 20}, ArgFormat: 2}},
+ }}},
+ {Key: StructKey{Name: "xattr_system_posix_acl_access"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_system_posix_acl_access", IsVarlen: true}, Fields: []Type{
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_header"}, FldName: "header"},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER_OBJ, const[0, int32]]"}, FldName: "user_obj"},
+ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "users", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER, uid]"}}},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP_OBJ, const[0, int32]]"}, FldName: "group_obj"},
+ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "groups", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP, gid]"}}},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_MASK, const[0, int32]]"}, FldName: "mask"},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_OTHER, const[0, int32]]"}, FldName: "other"},
+ }}},
{Key: StructKey{Name: "xdp_umem_reg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xdp_umem_reg", TypeSize: 24}, Fields: []Type{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "addr", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "xdp_umem_sizes", FldName: "len", TypeSize: 8}}, Vals: []uint64{4096, 8192, 16384, 32768, 65536, 131072, 1048576, 2097152, 16777216}, BitMask: true},
@@ -22856,6 +22912,48 @@ var syscalls_arm = []*Syscall{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
}},
+ {NR: 228, Name: "fsetxattr$system_posix_acl", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "xattr_posix_acl_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "xattr_system_posix_acl_access"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 228, Name: "fsetxattr$trusted_overlay_nlink", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.nlink\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "xattr_overlay_nlink"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 228, Name: "fsetxattr$trusted_overlay_opaque", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.opaque\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 228, Name: "fsetxattr$trusted_overlay_origin", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.origin\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 228, Name: "fsetxattr$trusted_overlay_redirect", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 25}, Kind: 2, Values: []string{"trusted.overlay.redirect\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 228, Name: "fsetxattr$trusted_overlay_upper", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.upper\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "ovl_fh"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
{NR: 108, Name: "fstat", CallName: "fstat", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "statbuf", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "stat", Dir: 1}}},
@@ -28764,6 +28862,48 @@ var syscalls_arm = []*Syscall{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
}},
+ {NR: 227, Name: "lsetxattr$system_posix_acl", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "xattr_posix_acl_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "xattr_system_posix_acl_access"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 227, Name: "lsetxattr$trusted_overlay_nlink", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.nlink\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "xattr_overlay_nlink"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 227, Name: "lsetxattr$trusted_overlay_opaque", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.opaque\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 227, Name: "lsetxattr$trusted_overlay_origin", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.origin\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 227, Name: "lsetxattr$trusted_overlay_redirect", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 25}, Kind: 2, Values: []string{"trusted.overlay.redirect\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 227, Name: "lsetxattr$trusted_overlay_upper", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.upper\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "ovl_fh"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
{NR: 107, Name: "lstat", CallName: "lstat", Args: []Type{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "statbuf", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "stat", Dir: 1}}},
@@ -32292,6 +32432,48 @@ var syscalls_arm = []*Syscall{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
}},
+ {NR: 226, Name: "setxattr$system_posix_acl", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "xattr_posix_acl_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "xattr_system_posix_acl_access"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 226, Name: "setxattr$trusted_overlay_nlink", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.nlink\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "xattr_overlay_nlink"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 226, Name: "setxattr$trusted_overlay_opaque", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.opaque\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 226, Name: "setxattr$trusted_overlay_origin", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.origin\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 226, Name: "setxattr$trusted_overlay_redirect", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 25}, Kind: 2, Values: []string{"trusted.overlay.redirect\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 226, Name: "setxattr$trusted_overlay_upper", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.upper\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "ovl_fh"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
{NR: 305, Name: "shmat", CallName: "shmat", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "ipc_shm", FldName: "shmid", TypeSize: 4}},
&VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 4}},
@@ -33938,6 +34120,15 @@ var syscalls_arm = []*Syscall{
var consts_arm = []ConstValue{
{Name: "ABS_CNT", Value: 64},
{Name: "ABS_MAX", Value: 63},
+ {Name: "ACL_EXECUTE", Value: 1},
+ {Name: "ACL_GROUP", Value: 8},
+ {Name: "ACL_GROUP_OBJ", Value: 4},
+ {Name: "ACL_MASK", Value: 16},
+ {Name: "ACL_OTHER", Value: 32},
+ {Name: "ACL_READ", Value: 4},
+ {Name: "ACL_USER", Value: 2},
+ {Name: "ACL_USER_OBJ", Value: 1},
+ {Name: "ACL_WRITE", Value: 2},
{Name: "ADDR_COMPAT_LAYOUT", Value: 2097152},
{Name: "ADDR_LIMIT_32BIT", Value: 8388608},
{Name: "ADDR_LIMIT_3GB", Value: 134217728},
@@ -36836,6 +37027,10 @@ var consts_arm = []ConstValue{
{Name: "NUD_REACHABLE", Value: 2},
{Name: "NUD_STALE", Value: 4},
{Name: "OMAGIC", Value: 263},
+ {Name: "OVL_FH_FLAG_ANY_ENDIAN", Value: 2},
+ {Name: "OVL_FH_FLAG_BIG_ENDIAN", Value: 1},
+ {Name: "OVL_FH_FLAG_PATH_UPPER", Value: 4},
+ {Name: "OVL_FH_MAGIC", Value: 251},
{Name: "O_APPEND", Value: 1024},
{Name: "O_CLOEXEC", Value: 524288},
{Name: "O_CREAT", Value: 64},
@@ -37082,6 +37277,7 @@ var consts_arm = []ConstValue{
{Name: "POLLWRBAND", Value: 512},
{Name: "POLLWRNORM", Value: 256},
{Name: "POLL_BUSY_LOOP", Value: 32768},
+ {Name: "POSIX_ACL_XATTR_VERSION", Value: 2},
{Name: "POSIX_FADV_DONTNEED", Value: 4},
{Name: "POSIX_FADV_NOREUSE", Value: 5},
{Name: "POSIX_FADV_NORMAL"},
@@ -38698,6 +38894,7 @@ var consts_arm = []ConstValue{
{Name: "USERIO_CMD_SEND_INTERRUPT", Value: 2},
{Name: "USERIO_CMD_SET_PORT_TYPE", Value: 1},
{Name: "USER_CLIENT", Value: 1},
+ {Name: "UUID_SIZE", Value: 16},
{Name: "V4L2_AUDCAP_AVL", Value: 2},
{Name: "V4L2_AUDCAP_STEREO", Value: 1},
{Name: "V4L2_AUDMODE_AVL", Value: 1},
@@ -40349,4 +40546,4 @@ var consts_arm = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_arm = "d64ccba4ff5f75614cce9e04b971a39e735578b2"
+const revision_arm = "8e29318621f98bc9b90c93f203d08f3a645e3d48"
diff --git a/sys/linux/gen/arm64.go b/sys/linux/gen/arm64.go
index d37ef5ba9..1552dbecc 100644
--- a/sys/linux/gen/arm64.go
+++ b/sys/linux/gen/arm64.go
@@ -14423,6 +14423,15 @@ var structDescs_arm64 = []*KeyedStruct{
&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "metacopy_on", TypeSize: 11}, Kind: 2, Values: []string{"metacopy=on"}, NoZ: true},
&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "metacopy_off", TypeSize: 12}, Kind: 2, Values: []string{"metacopy=off"}, NoZ: true},
}}},
+ {Key: StructKey{Name: "ovl_fh"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ovl_fh", IsVarlen: true}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "version", TypeSize: 1}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "magic", TypeSize: 1}}, Val: 251},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 1}}, BitSize: 8, Buf: "parent"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ovl_fh_flags", FldName: "flags", TypeSize: 1}}, Vals: []uint64{1, 2, 4}, BitMask: true},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "type", TypeSize: 1}}},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "uuid", TypeSize: 16}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "fid", IsVarlen: true}},
+ }}},
{Key: StructKey{Name: "p9_dir"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "p9_dir", IsVarlen: true}, Fields: []Type{
&StructType{Key: StructKey{Name: "p9_qid"}, FldName: "qid"},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
@@ -14907,6 +14916,39 @@ var structDescs_arm64 = []*KeyedStruct{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pollfd_events", FldName: "events", TypeSize: 2}}, Vals: []uint64{1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 4096, 8192, 16384, 32768}, BitMask: true},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "revents", TypeSize: 2}}},
}}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP, gid]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_GROUP, gid]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 8},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "gid", FldName: "e_id", TypeSize: 4}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP_OBJ, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_GROUP_OBJ, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 4},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_MASK, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_MASK, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 16},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_OTHER, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_OTHER, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 32},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER, uid]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_USER, uid]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 2},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "e_id", TypeSize: 4}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER_OBJ, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_USER_OBJ, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 1},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_header"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_header", TypeSize: 4}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "a_version", TypeSize: 4}}, Val: 2},
+ }}},
{Key: StructKey{Name: "pppoe_addr"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "pppoe_addr", TypeSize: 24}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "sid", TypeSize: 2}}, Kind: 2, RangeEnd: 4},
&UnionType{Key: StructKey{Name: "mac_addr"}, FldName: "remote"},
@@ -20142,13 +20184,27 @@ var structDescs_arm64 = []*KeyedStruct{
&BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", IsVarlen: true}},
}}},
{Key: StructKey{Name: "xattr_name"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_name", IsVarlen: true}, Fields: []Type{
- &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", IsVarlen: true}, Kind: 2, 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", "user.syz\x00", "trusted.syz\x00", "security.evm\x00", "security.ima\x00", "security.selinux\x00", "security.capability\x00", "trusted.overlay.opaque\x00", "trusted.overlay.redirect\x00", "trusted.overlay.origin\x00", "trusted.overlay.impure\x00", "trusted.overlay.nlink\x00", "trusted.overlay.upper\x00", "trusted.overlay.metacopy\x00"}},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", IsVarlen: true}, Kind: 2, 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", "user.syz\x00", "trusted.syz\x00", "security.evm\x00", "security.ima\x00", "security.selinux\x00", "security.apparmor\x00", "security.capability\x00", "trusted.overlay.opaque\x00", "trusted.overlay.redirect\x00", "trusted.overlay.origin\x00", "trusted.overlay.impure\x00", "trusted.overlay.nlink\x00", "trusted.overlay.upper\x00", "trusted.overlay.metacopy\x00", "security.SMACK64\x00", "security.SMACK64IPIN\x00", "security.SMACK64IPOUT\x00", "security.SMACK64EXEC\x00", "security.SMACK64TRANSMUTE\x00", "security.SMACK64MMAP\x00"}},
&StructType{Key: StructKey{Name: "xattr_name_random"}, FldName: "random"},
}}},
{Key: StructKey{Name: "xattr_name_random"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_name_random", IsVarlen: true}, Fields: []Type{
&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "prefix", IsVarlen: true}, Kind: 2, SubKind: "xattr_prefix", Values: []string{"system.", "trusted.", "security.", "user.", "btrfs.", "osx.", "os2."}, NoZ: true},
&BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", IsVarlen: true}, Kind: 2},
}}},
+ {Key: StructKey{Name: "xattr_overlay_nlink"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_overlay_nlink", TypeSize: 40}, Fields: []Type{
+ &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "prefix", TypeSize: 2}, Kind: 2, SubKind: "xattr_overlay_nlink_prefix", Values: []string{"U+", "U-", "L+", "L-"}, NoZ: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 18}}, IsPad: true},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 20}, ArgFormat: 2}},
+ }}},
+ {Key: StructKey{Name: "xattr_system_posix_acl_access"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_system_posix_acl_access", IsVarlen: true}, Fields: []Type{
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_header"}, FldName: "header"},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER_OBJ, const[0, int32]]"}, FldName: "user_obj"},
+ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "users", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER, uid]"}}},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP_OBJ, const[0, int32]]"}, FldName: "group_obj"},
+ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "groups", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP, gid]"}}},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_MASK, const[0, int32]]"}, FldName: "mask"},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_OTHER, const[0, int32]]"}, FldName: "other"},
+ }}},
{Key: StructKey{Name: "xdp_umem_reg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xdp_umem_reg", TypeSize: 24}, Fields: []Type{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "addr", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "xdp_umem_sizes", FldName: "len", TypeSize: 8}}, Vals: []uint64{4096, 8192, 16384, 32768, 65536, 131072, 1048576, 2097152, 16777216}, BitMask: true},
@@ -23160,6 +23216,48 @@ var syscalls_arm64 = []*Syscall{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
}},
+ {NR: 7, Name: "fsetxattr$system_posix_acl", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "xattr_posix_acl_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_system_posix_acl_access"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 7, Name: "fsetxattr$trusted_overlay_nlink", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.nlink\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_overlay_nlink"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 7, Name: "fsetxattr$trusted_overlay_opaque", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.opaque\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 7, Name: "fsetxattr$trusted_overlay_origin", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.origin\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 7, Name: "fsetxattr$trusted_overlay_redirect", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 25}, Kind: 2, Values: []string{"trusted.overlay.redirect\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 7, Name: "fsetxattr$trusted_overlay_upper", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.upper\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "ovl_fh"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
{NR: 80, Name: "fstat", CallName: "fstat", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "statbuf", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "stat", Dir: 1}}},
@@ -29077,6 +29175,48 @@ var syscalls_arm64 = []*Syscall{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
}},
+ {NR: 6, Name: "lsetxattr$system_posix_acl", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "xattr_posix_acl_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_system_posix_acl_access"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 6, Name: "lsetxattr$trusted_overlay_nlink", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.nlink\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_overlay_nlink"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 6, Name: "lsetxattr$trusted_overlay_opaque", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.opaque\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 6, Name: "lsetxattr$trusted_overlay_origin", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.origin\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 6, Name: "lsetxattr$trusted_overlay_redirect", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 25}, Kind: 2, Values: []string{"trusted.overlay.redirect\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 6, Name: "lsetxattr$trusted_overlay_upper", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.upper\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "ovl_fh"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
{NR: 233, Name: "madvise", CallName: "madvise", Args: []Type{
&VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 8}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "addr"},
@@ -32556,6 +32696,48 @@ var syscalls_arm64 = []*Syscall{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
}},
+ {NR: 5, Name: "setxattr$system_posix_acl", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "xattr_posix_acl_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_system_posix_acl_access"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 5, Name: "setxattr$trusted_overlay_nlink", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.nlink\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_overlay_nlink"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 5, Name: "setxattr$trusted_overlay_opaque", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.opaque\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 5, Name: "setxattr$trusted_overlay_origin", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.origin\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 5, Name: "setxattr$trusted_overlay_redirect", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 25}, Kind: 2, Values: []string{"trusted.overlay.redirect\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 5, Name: "setxattr$trusted_overlay_upper", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.upper\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "ovl_fh"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
{NR: 196, Name: "shmat", CallName: "shmat", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "ipc_shm", FldName: "shmid", TypeSize: 4}},
&VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 8}},
@@ -34169,6 +34351,15 @@ var syscalls_arm64 = []*Syscall{
var consts_arm64 = []ConstValue{
{Name: "ABS_CNT", Value: 64},
{Name: "ABS_MAX", Value: 63},
+ {Name: "ACL_EXECUTE", Value: 1},
+ {Name: "ACL_GROUP", Value: 8},
+ {Name: "ACL_GROUP_OBJ", Value: 4},
+ {Name: "ACL_MASK", Value: 16},
+ {Name: "ACL_OTHER", Value: 32},
+ {Name: "ACL_READ", Value: 4},
+ {Name: "ACL_USER", Value: 2},
+ {Name: "ACL_USER_OBJ", Value: 1},
+ {Name: "ACL_WRITE", Value: 2},
{Name: "ADDR_COMPAT_LAYOUT", Value: 2097152},
{Name: "ADDR_LIMIT_32BIT", Value: 8388608},
{Name: "ADDR_LIMIT_3GB", Value: 134217728},
@@ -37076,6 +37267,10 @@ var consts_arm64 = []ConstValue{
{Name: "NUD_REACHABLE", Value: 2},
{Name: "NUD_STALE", Value: 4},
{Name: "OMAGIC", Value: 263},
+ {Name: "OVL_FH_FLAG_ANY_ENDIAN", Value: 2},
+ {Name: "OVL_FH_FLAG_BIG_ENDIAN", Value: 1},
+ {Name: "OVL_FH_FLAG_PATH_UPPER", Value: 4},
+ {Name: "OVL_FH_MAGIC", Value: 251},
{Name: "O_APPEND", Value: 1024},
{Name: "O_CLOEXEC", Value: 524288},
{Name: "O_CREAT", Value: 64},
@@ -37322,6 +37517,7 @@ var consts_arm64 = []ConstValue{
{Name: "POLLWRBAND", Value: 512},
{Name: "POLLWRNORM", Value: 256},
{Name: "POLL_BUSY_LOOP", Value: 32768},
+ {Name: "POSIX_ACL_XATTR_VERSION", Value: 2},
{Name: "POSIX_FADV_DONTNEED", Value: 4},
{Name: "POSIX_FADV_NOREUSE", Value: 5},
{Name: "POSIX_FADV_NORMAL"},
@@ -38948,6 +39144,7 @@ var consts_arm64 = []ConstValue{
{Name: "USERIO_CMD_SEND_INTERRUPT", Value: 2},
{Name: "USERIO_CMD_SET_PORT_TYPE", Value: 1},
{Name: "USER_CLIENT", Value: 1},
+ {Name: "UUID_SIZE", Value: 16},
{Name: "V4L2_AUDCAP_AVL", Value: 2},
{Name: "V4L2_AUDCAP_STEREO", Value: 1},
{Name: "V4L2_AUDMODE_AVL", Value: 1},
@@ -40571,4 +40768,4 @@ var consts_arm64 = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_arm64 = "33b760e03637540176d75bef5357cc5b147afabe"
+const revision_arm64 = "47a45bb589ebe3d532c83feab04e13018f823058"
diff --git a/sys/linux/gen/ppc64le.go b/sys/linux/gen/ppc64le.go
index 384002896..cfed44fc7 100644
--- a/sys/linux/gen/ppc64le.go
+++ b/sys/linux/gen/ppc64le.go
@@ -14333,6 +14333,15 @@ var structDescs_ppc64le = []*KeyedStruct{
&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "metacopy_on", TypeSize: 11}, Kind: 2, Values: []string{"metacopy=on"}, NoZ: true},
&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "metacopy_off", TypeSize: 12}, Kind: 2, Values: []string{"metacopy=off"}, NoZ: true},
}}},
+ {Key: StructKey{Name: "ovl_fh"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ovl_fh", IsVarlen: true}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "version", TypeSize: 1}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "magic", TypeSize: 1}}, Val: 251},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 1}}, BitSize: 8, Buf: "parent"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ovl_fh_flags", FldName: "flags", TypeSize: 1}}, Vals: []uint64{1, 2, 4}, BitMask: true},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "type", TypeSize: 1}}},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "uuid", TypeSize: 16}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "fid", IsVarlen: true}},
+ }}},
{Key: StructKey{Name: "p9_dir"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "p9_dir", IsVarlen: true}, Fields: []Type{
&StructType{Key: StructKey{Name: "p9_qid"}, FldName: "qid"},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
@@ -14817,6 +14826,39 @@ var structDescs_ppc64le = []*KeyedStruct{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pollfd_events", FldName: "events", TypeSize: 2}}, Vals: []uint64{1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 4096, 8192, 16384, 32768}, BitMask: true},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "revents", TypeSize: 2}}},
}}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP, gid]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_GROUP, gid]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 8},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "gid", FldName: "e_id", TypeSize: 4}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP_OBJ, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_GROUP_OBJ, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 4},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_MASK, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_MASK, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 16},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_OTHER, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_OTHER, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 32},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER, uid]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_USER, uid]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 2},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "e_id", TypeSize: 4}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER_OBJ, const[0, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_entry[ACL_USER_OBJ, const[0, int32]]", TypeSize: 8}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_tag", TypeSize: 2}}, Val: 1},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "posix_acl_perm", FldName: "e_perm", TypeSize: 2}}, Vals: []uint64{4, 2, 1}, BitMask: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "e_id", TypeSize: 4}}},
+ }}},
+ {Key: StructKey{Name: "posix_acl_xattr_header"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "posix_acl_xattr_header", TypeSize: 4}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "a_version", TypeSize: 4}}, Val: 2},
+ }}},
{Key: StructKey{Name: "pppoe_addr"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "pppoe_addr", TypeSize: 24}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "sid", TypeSize: 2}}, Kind: 2, RangeEnd: 4},
&UnionType{Key: StructKey{Name: "mac_addr"}, FldName: "remote"},
@@ -19153,13 +19195,27 @@ var structDescs_ppc64le = []*KeyedStruct{
&BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", IsVarlen: true}},
}}},
{Key: StructKey{Name: "xattr_name"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_name", IsVarlen: true}, Fields: []Type{
- &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", IsVarlen: true}, Kind: 2, 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", "user.syz\x00", "trusted.syz\x00", "security.evm\x00", "security.ima\x00", "security.selinux\x00", "security.capability\x00", "trusted.overlay.opaque\x00", "trusted.overlay.redirect\x00", "trusted.overlay.origin\x00", "trusted.overlay.impure\x00", "trusted.overlay.nlink\x00", "trusted.overlay.upper\x00", "trusted.overlay.metacopy\x00"}},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "known", IsVarlen: true}, Kind: 2, 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", "user.syz\x00", "trusted.syz\x00", "security.evm\x00", "security.ima\x00", "security.selinux\x00", "security.apparmor\x00", "security.capability\x00", "trusted.overlay.opaque\x00", "trusted.overlay.redirect\x00", "trusted.overlay.origin\x00", "trusted.overlay.impure\x00", "trusted.overlay.nlink\x00", "trusted.overlay.upper\x00", "trusted.overlay.metacopy\x00", "security.SMACK64\x00", "security.SMACK64IPIN\x00", "security.SMACK64IPOUT\x00", "security.SMACK64EXEC\x00", "security.SMACK64TRANSMUTE\x00", "security.SMACK64MMAP\x00"}},
&StructType{Key: StructKey{Name: "xattr_name_random"}, FldName: "random"},
}}},
{Key: StructKey{Name: "xattr_name_random"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_name_random", IsVarlen: true}, Fields: []Type{
&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "prefix", IsVarlen: true}, Kind: 2, SubKind: "xattr_prefix", Values: []string{"system.", "trusted.", "security.", "user.", "btrfs.", "osx.", "os2."}, NoZ: true},
&BufferType{TypeCommon: TypeCommon{TypeName: "string", FldName: "name", IsVarlen: true}, Kind: 2},
}}},
+ {Key: StructKey{Name: "xattr_overlay_nlink"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_overlay_nlink", TypeSize: 40}, Fields: []Type{
+ &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "prefix", TypeSize: 2}, Kind: 2, SubKind: "xattr_overlay_nlink_prefix", Values: []string{"U+", "U-", "L+", "L-"}, NoZ: true},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 18}}, IsPad: true},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 20}, ArgFormat: 2}},
+ }}},
+ {Key: StructKey{Name: "xattr_system_posix_acl_access"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xattr_system_posix_acl_access", IsVarlen: true}, Fields: []Type{
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_header"}, FldName: "header"},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER_OBJ, const[0, int32]]"}, FldName: "user_obj"},
+ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "users", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_USER, uid]"}}},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP_OBJ, const[0, int32]]"}, FldName: "group_obj"},
+ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "groups", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_GROUP, gid]"}}},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_MASK, const[0, int32]]"}, FldName: "mask"},
+ &StructType{Key: StructKey{Name: "posix_acl_xattr_entry[ACL_OTHER, const[0, int32]]"}, FldName: "other"},
+ }}},
{Key: StructKey{Name: "xdp_umem_reg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "xdp_umem_reg", TypeSize: 24}, Fields: []Type{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "addr", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "xdp_umem_sizes", FldName: "len", TypeSize: 8}}, Vals: []uint64{4096, 8192, 16384, 32768, 65536, 131072, 1048576, 2097152, 16777216}, BitMask: true},
@@ -22203,6 +22259,48 @@ var syscalls_ppc64le = []*Syscall{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
}},
+ {NR: 211, Name: "fsetxattr$system_posix_acl", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "xattr_posix_acl_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_system_posix_acl_access"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 211, Name: "fsetxattr$trusted_overlay_nlink", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.nlink\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_overlay_nlink"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 211, Name: "fsetxattr$trusted_overlay_opaque", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.opaque\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 211, Name: "fsetxattr$trusted_overlay_origin", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.origin\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 211, Name: "fsetxattr$trusted_overlay_redirect", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 25}, Kind: 2, Values: []string{"trusted.overlay.redirect\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 211, Name: "fsetxattr$trusted_overlay_upper", CallName: "fsetxattr", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.upper\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "ovl_fh"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
{NR: 108, Name: "fstat", CallName: "fstat", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "statbuf", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "stat", Dir: 1}}},
@@ -27561,6 +27659,48 @@ var syscalls_ppc64le = []*Syscall{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
}},
+ {NR: 210, Name: "lsetxattr$system_posix_acl", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "xattr_posix_acl_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_system_posix_acl_access"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 210, Name: "lsetxattr$trusted_overlay_nlink", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.nlink\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_overlay_nlink"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 210, Name: "lsetxattr$trusted_overlay_opaque", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.opaque\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 210, Name: "lsetxattr$trusted_overlay_origin", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.origin\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 210, Name: "lsetxattr$trusted_overlay_redirect", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 25}, Kind: 2, Values: []string{"trusted.overlay.redirect\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 210, Name: "lsetxattr$trusted_overlay_upper", CallName: "lsetxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.upper\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "ovl_fh"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
{NR: 107, Name: "lstat", CallName: "lstat", Args: []Type{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "statbuf", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "stat", Dir: 1}}},
@@ -30968,6 +31108,48 @@ var syscalls_ppc64le = []*Syscall{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
}},
+ {NR: 209, Name: "setxattr$system_posix_acl", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "xattr_posix_acl_names", Values: []string{"system.posix_acl_access\x00", "system.posix_acl_default\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_system_posix_acl_access"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 209, Name: "setxattr$trusted_overlay_nlink", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.nlink\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "xattr_overlay_nlink"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 209, Name: "setxattr$trusted_overlay_opaque", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.opaque\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 209, Name: "setxattr$trusted_overlay_origin", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 23}, Kind: 2, Values: []string{"trusted.overlay.origin\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 2}, Kind: 2, Values: []string{"y\x00"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 209, Name: "setxattr$trusted_overlay_redirect", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 25}, Kind: 2, Values: []string{"trusted.overlay.redirect\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
+ {NR: 209, Name: "setxattr$trusted_overlay_upper", CallName: "setxattr", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 22}, Kind: 2, Values: []string{"trusted.overlay.upper\x00"}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "ovl_fh"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "val"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "setxattr_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true},
+ }},
{NR: 338, Name: "shutdown", CallName: "shutdown", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "sock", FldName: "fd", TypeSize: 4}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "shutdown_flags", FldName: "how", TypeSize: 8}}, Vals: []uint64{0, 1}, BitMask: true},
@@ -32564,6 +32746,15 @@ var syscalls_ppc64le = []*Syscall{
var consts_ppc64le = []ConstValue{
{Name: "ABS_CNT", Value: 64},
{Name: "ABS_MAX", Value: 63},
+ {Name: "ACL_EXECUTE", Value: 1},
+ {Name: "ACL_GROUP", Value: 8},
+ {Name: "ACL_GROUP_OBJ", Value: 4},
+ {Name: "ACL_MASK", Value: 16},
+ {Name: "ACL_OTHER", Value: 32},
+ {Name: "ACL_READ", Value: 4},
+ {Name: "ACL_USER", Value: 2},
+ {Name: "ACL_USER_OBJ", Value: 1},
+ {Name: "ACL_WRITE", Value: 2},
{Name: "ADDR_COMPAT_LAYOUT", Value: 2097152},
{Name: "ADDR_LIMIT_32BIT", Value: 8388608},
{Name: "ADDR_LIMIT_3GB", Value: 134217728},
@@ -35371,6 +35562,10 @@ var consts_ppc64le = []ConstValue{
{Name: "NUD_REACHABLE", Value: 2},
{Name: "NUD_STALE", Value: 4},
{Name: "OMAGIC", Value: 263},
+ {Name: "OVL_FH_FLAG_ANY_ENDIAN", Value: 2},
+ {Name: "OVL_FH_FLAG_BIG_ENDIAN", Value: 1},
+ {Name: "OVL_FH_FLAG_PATH_UPPER", Value: 4},
+ {Name: "OVL_FH_MAGIC", Value: 251},
{Name: "O_APPEND", Value: 1024},
{Name: "O_CLOEXEC", Value: 524288},
{Name: "O_CREAT", Value: 64},
@@ -35617,6 +35812,7 @@ var consts_ppc64le = []ConstValue{
{Name: "POLLWRBAND", Value: 512},
{Name: "POLLWRNORM", Value: 256},
{Name: "POLL_BUSY_LOOP", Value: 32768},
+ {Name: "POSIX_ACL_XATTR_VERSION", Value: 2},
{Name: "POSIX_FADV_DONTNEED", Value: 4},
{Name: "POSIX_FADV_NOREUSE", Value: 5},
{Name: "POSIX_FADV_NORMAL"},
@@ -37223,6 +37419,7 @@ var consts_ppc64le = []ConstValue{
{Name: "USERIO_CMD_SEND_INTERRUPT", Value: 2},
{Name: "USERIO_CMD_SET_PORT_TYPE", Value: 1},
{Name: "USER_CLIENT", Value: 1},
+ {Name: "UUID_SIZE", Value: 16},
{Name: "VETH_INFO_PEER", Value: 1},
{Name: "VHOST_ACCESS_RO", Value: 1},
{Name: "VHOST_ACCESS_RW", Value: 3},
@@ -37927,4 +38124,4 @@ var consts_ppc64le = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_ppc64le = "17f888e873bc99a49d971c80b87ddad7d8291e82"
+const revision_ppc64le = "c5c93d7e6ee635fd7c05f7f80d1228b4f533936e"
diff --git a/sys/linux/xattr.txt b/sys/linux/xattr.txt
index 9684d6773..133e339e4 100644
--- a/sys/linux/xattr.txt
+++ b/sys/linux/xattr.txt
@@ -2,6 +2,10 @@
# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file.
include <linux/xattr.h>
+include <linux/uuid.h>
+include <uapi/linux/posix_acl_xattr.h>
+include <uapi/linux/posix_acl.h>
+include <fs/overlayfs/overlayfs.h>
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])
@@ -30,5 +34,73 @@ setxattr_flags = XATTR_CREATE, XATTR_REPLACE
xattr_prefix = "system.", "trusted.", "security.", "user.", "btrfs.", "osx.", "os2."
-# TODO: specify meaningful values for known attributes, for example, the only meaninful value for "trusted.overlay.origin" is "y".
-xattr_names = "system.posix_acl_access", "system.posix_acl_default", "system.advise", "system.sockprotoname", "com.apple.FinderInfo", "com.apple.system.Security", "user.syz", "trusted.syz", "security.evm", "security.ima", "security.selinux", "security.capability", "trusted.overlay.opaque", "trusted.overlay.redirect", "trusted.overlay.origin", "trusted.overlay.impure", "trusted.overlay.nlink", "trusted.overlay.upper", "trusted.overlay.metacopy"
+xattr_names = "system.posix_acl_access", "system.posix_acl_default", "system.advise", "system.sockprotoname", "com.apple.FinderInfo", "com.apple.system.Security", "user.syz", "trusted.syz", "security.evm", "security.ima", "security.selinux", "security.apparmor", "security.capability", "trusted.overlay.opaque", "trusted.overlay.redirect", "trusted.overlay.origin", "trusted.overlay.impure", "trusted.overlay.nlink", "trusted.overlay.upper", "trusted.overlay.metacopy", "security.SMACK64", "security.SMACK64IPIN", "security.SMACK64IPOUT", "security.SMACK64EXEC", "security.SMACK64TRANSMUTE", "security.SMACK64MMAP"
+
+setxattr$system_posix_acl(path ptr[in, filename], name ptr[in, string[xattr_posix_acl_names]], val ptr[in, xattr_system_posix_acl_access], size len[val], flags flags[setxattr_flags])
+lsetxattr$system_posix_acl(path ptr[in, filename], name ptr[in, string[xattr_posix_acl_names]], val ptr[in, xattr_system_posix_acl_access], size len[val], flags flags[setxattr_flags])
+fsetxattr$system_posix_acl(fd fd, name ptr[in, string[xattr_posix_acl_names]], val ptr[in, xattr_system_posix_acl_access], size len[val], flags flags[setxattr_flags])
+
+xattr_posix_acl_names = "system.posix_acl_access", "system.posix_acl_default"
+
+xattr_system_posix_acl_access {
+ header posix_acl_xattr_header
+ user_obj posix_acl_xattr_entry[ACL_USER_OBJ, const[0, int32]]
+ users array[posix_acl_xattr_entry[ACL_USER, uid]]
+ group_obj posix_acl_xattr_entry[ACL_GROUP_OBJ, const[0, int32]]
+ groups array[posix_acl_xattr_entry[ACL_GROUP, gid]]
+ mask posix_acl_xattr_entry[ACL_MASK, const[0, int32]]
+ other posix_acl_xattr_entry[ACL_OTHER, const[0, int32]]
+} [packed]
+
+posix_acl_xattr_header {
+ a_version const[POSIX_ACL_XATTR_VERSION, int32]
+}
+
+type posix_acl_xattr_entry[TAG, ID] {
+ e_tag const[TAG, int16]
+ e_perm flags[posix_acl_perm, int16]
+ e_id ID
+}
+
+posix_acl_perm = ACL_READ, ACL_WRITE, ACL_EXECUTE
+
+setxattr$trusted_overlay_origin(path ptr[in, filename], name ptr[in, string["trusted.overlay.origin"]], val ptr[in, string["y"]], size len[val], flags flags[setxattr_flags])
+lsetxattr$trusted_overlay_origin(path ptr[in, filename], name ptr[in, string["trusted.overlay.origin"]], val ptr[in, string["y"]], size len[val], flags flags[setxattr_flags])
+fsetxattr$trusted_overlay_origin(fd fd, name ptr[in, string["trusted.overlay.origin"]], val ptr[in, string["y"]], size len[val], flags flags[setxattr_flags])
+
+setxattr$trusted_overlay_opaque(path ptr[in, filename], name ptr[in, string["trusted.overlay.opaque"]], val ptr[in, string["y"]], size len[val], flags flags[setxattr_flags])
+lsetxattr$trusted_overlay_opaque(path ptr[in, filename], name ptr[in, string["trusted.overlay.opaque"]], val ptr[in, string["y"]], size len[val], flags flags[setxattr_flags])
+fsetxattr$trusted_overlay_opaque(fd fd, name ptr[in, string["trusted.overlay.opaque"]], val ptr[in, string["y"]], size len[val], flags flags[setxattr_flags])
+
+setxattr$trusted_overlay_redirect(path ptr[in, filename], name ptr[in, string["trusted.overlay.redirect"]], val ptr[in, filename], size len[val], flags flags[setxattr_flags])
+lsetxattr$trusted_overlay_redirect(path ptr[in, filename], name ptr[in, string["trusted.overlay.redirect"]], val ptr[in, filename], size len[val], flags flags[setxattr_flags])
+fsetxattr$trusted_overlay_redirect(fd fd, name ptr[in, string["trusted.overlay.redirect"]], val ptr[in, filename], size len[val], flags flags[setxattr_flags])
+
+setxattr$trusted_overlay_nlink(path ptr[in, filename], name ptr[in, string["trusted.overlay.nlink"]], val ptr[in, xattr_overlay_nlink], size len[val], flags flags[setxattr_flags])
+lsetxattr$trusted_overlay_nlink(path ptr[in, filename], name ptr[in, string["trusted.overlay.nlink"]], val ptr[in, xattr_overlay_nlink], size len[val], flags flags[setxattr_flags])
+fsetxattr$trusted_overlay_nlink(fd fd, name ptr[in, string["trusted.overlay.nlink"]], val ptr[in, xattr_overlay_nlink], size len[val], flags flags[setxattr_flags])
+
+setxattr$trusted_overlay_upper(path ptr[in, filename], name ptr[in, string["trusted.overlay.upper"]], val ptr[in, ovl_fh], size len[val], flags flags[setxattr_flags])
+lsetxattr$trusted_overlay_upper(path ptr[in, filename], name ptr[in, string["trusted.overlay.upper"]], val ptr[in, ovl_fh], size len[val], flags flags[setxattr_flags])
+fsetxattr$trusted_overlay_upper(fd fd, name ptr[in, string["trusted.overlay.upper"]], val ptr[in, ovl_fh], size len[val], flags flags[setxattr_flags])
+
+xattr_overlay_nlink {
+ prefix stringnoz[xattr_overlay_nlink_prefix]
+ num fmt[dec, int64]
+}
+
+xattr_overlay_nlink_prefix = "U+", "U-", "L+", "L-"
+
+ovl_fh {
+ version const[0, int8]
+ magic const[OVL_FH_MAGIC, int8]
+ len bytesize[parent, int8]
+ flags flags[ovl_fh_flags, int8]
+ type int8
+ uuid uuid_t
+ fid array[int8]
+} [packed]
+
+type uuid_t array[int8, UUID_SIZE]
+
+ovl_fh_flags = OVL_FH_FLAG_BIG_ENDIAN, OVL_FH_FLAG_ANY_ENDIAN, OVL_FH_FLAG_PATH_UPPER
diff --git a/sys/linux/xattr_386.const b/sys/linux/xattr_386.const
index 5502a19ed..921c66f57 100644
--- a/sys/linux/xattr_386.const
+++ b/sys/linux/xattr_386.const
@@ -1,4 +1,19 @@
# AUTOGENERATED FILE
+ACL_EXECUTE = 1
+ACL_GROUP = 8
+ACL_GROUP_OBJ = 4
+ACL_MASK = 16
+ACL_OTHER = 32
+ACL_READ = 4
+ACL_USER = 2
+ACL_USER_OBJ = 1
+ACL_WRITE = 2
+OVL_FH_FLAG_ANY_ENDIAN = 2
+OVL_FH_FLAG_BIG_ENDIAN = 1
+OVL_FH_FLAG_PATH_UPPER = 4
+OVL_FH_MAGIC = 251
+POSIX_ACL_XATTR_VERSION = 2
+UUID_SIZE = 16
XATTR_CREATE = 1
XATTR_REPLACE = 2
__NR_fgetxattr = 231
diff --git a/sys/linux/xattr_amd64.const b/sys/linux/xattr_amd64.const
index 57417ef4d..ffc140f5a 100644
--- a/sys/linux/xattr_amd64.const
+++ b/sys/linux/xattr_amd64.const
@@ -1,4 +1,19 @@
# AUTOGENERATED FILE
+ACL_EXECUTE = 1
+ACL_GROUP = 8
+ACL_GROUP_OBJ = 4
+ACL_MASK = 16
+ACL_OTHER = 32
+ACL_READ = 4
+ACL_USER = 2
+ACL_USER_OBJ = 1
+ACL_WRITE = 2
+OVL_FH_FLAG_ANY_ENDIAN = 2
+OVL_FH_FLAG_BIG_ENDIAN = 1
+OVL_FH_FLAG_PATH_UPPER = 4
+OVL_FH_MAGIC = 251
+POSIX_ACL_XATTR_VERSION = 2
+UUID_SIZE = 16
XATTR_CREATE = 1
XATTR_REPLACE = 2
__NR_fgetxattr = 193
diff --git a/sys/linux/xattr_arm.const b/sys/linux/xattr_arm.const
index 5502a19ed..921c66f57 100644
--- a/sys/linux/xattr_arm.const
+++ b/sys/linux/xattr_arm.const
@@ -1,4 +1,19 @@
# AUTOGENERATED FILE
+ACL_EXECUTE = 1
+ACL_GROUP = 8
+ACL_GROUP_OBJ = 4
+ACL_MASK = 16
+ACL_OTHER = 32
+ACL_READ = 4
+ACL_USER = 2
+ACL_USER_OBJ = 1
+ACL_WRITE = 2
+OVL_FH_FLAG_ANY_ENDIAN = 2
+OVL_FH_FLAG_BIG_ENDIAN = 1
+OVL_FH_FLAG_PATH_UPPER = 4
+OVL_FH_MAGIC = 251
+POSIX_ACL_XATTR_VERSION = 2
+UUID_SIZE = 16
XATTR_CREATE = 1
XATTR_REPLACE = 2
__NR_fgetxattr = 231
diff --git a/sys/linux/xattr_arm64.const b/sys/linux/xattr_arm64.const
index d5cb26023..f9f64279f 100644
--- a/sys/linux/xattr_arm64.const
+++ b/sys/linux/xattr_arm64.const
@@ -1,4 +1,19 @@
# AUTOGENERATED FILE
+ACL_EXECUTE = 1
+ACL_GROUP = 8
+ACL_GROUP_OBJ = 4
+ACL_MASK = 16
+ACL_OTHER = 32
+ACL_READ = 4
+ACL_USER = 2
+ACL_USER_OBJ = 1
+ACL_WRITE = 2
+OVL_FH_FLAG_ANY_ENDIAN = 2
+OVL_FH_FLAG_BIG_ENDIAN = 1
+OVL_FH_FLAG_PATH_UPPER = 4
+OVL_FH_MAGIC = 251
+POSIX_ACL_XATTR_VERSION = 2
+UUID_SIZE = 16
XATTR_CREATE = 1
XATTR_REPLACE = 2
__NR_fgetxattr = 10
diff --git a/sys/linux/xattr_ppc64le.const b/sys/linux/xattr_ppc64le.const
index 592ffbbb2..7483d9645 100644
--- a/sys/linux/xattr_ppc64le.const
+++ b/sys/linux/xattr_ppc64le.const
@@ -1,4 +1,19 @@
# AUTOGENERATED FILE
+ACL_EXECUTE = 1
+ACL_GROUP = 8
+ACL_GROUP_OBJ = 4
+ACL_MASK = 16
+ACL_OTHER = 32
+ACL_READ = 4
+ACL_USER = 2
+ACL_USER_OBJ = 1
+ACL_WRITE = 2
+OVL_FH_FLAG_ANY_ENDIAN = 2
+OVL_FH_FLAG_BIG_ENDIAN = 1
+OVL_FH_FLAG_PATH_UPPER = 4
+OVL_FH_MAGIC = 251
+POSIX_ACL_XATTR_VERSION = 2
+UUID_SIZE = 16
XATTR_CREATE = 1
XATTR_REPLACE = 2
__NR_fgetxattr = 214