From be1a56115bbc3dac09ccb92162a8d5f8937ba492 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Thu, 17 May 2018 12:16:18 +0200 Subject: sys/linux: use optional in tun descriptions --- sys/linux/gen/386.go | 22 +++++++++++----------- sys/linux/gen/amd64.go | 22 +++++++++++----------- sys/linux/gen/arm.go | 22 +++++++++++----------- sys/linux/gen/arm64.go | 22 +++++++++++----------- sys/linux/gen/ppc64le.go | 22 +++++++++++----------- sys/linux/tun.txt | 14 ++------------ 6 files changed, 57 insertions(+), 67 deletions(-) (limited to 'sys/linux') diff --git a/sys/linux/gen/386.go b/sys/linux/gen/386.go index b58d52f45..f5244bbc0 100644 --- a/sys/linux/gen/386.go +++ b/sys/linux/gen/386.go @@ -10393,6 +10393,14 @@ var structDescs_386 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "fs_opt[\"nls\", stringnoz[codepages_names]]"}, FldName: "nls"}, &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "utf8", TypeSize: 4}, Kind: 2, Values: []string{"utf8"}, NoZ: true}, }}}, + {Key: StructKey{Name: "optional[tun_pi]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "optional[tun_pi]", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "tun_pi"}, FldName: "val"}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, + }}}, + {Key: StructKey{Name: "optional[virtio_net_hdr]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "optional[virtio_net_hdr]", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "virtio_net_hdr"}, FldName: "val"}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, + }}}, {Key: StructKey{Name: "packet_fanout_val"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "packet_fanout_val", TypeSize: 4}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "id", TypeSize: 2}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "packet_fanout_types", FldName: "type", TypeSize: 1}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6, 7}}, @@ -13647,8 +13655,8 @@ var structDescs_386 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "tpacket_req3"}, FldName: "req3"}, }}}, {Key: StructKey{Name: "tun_buffer"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "tun_buffer", IsVarlen: true}, Fields: []Type{ - &UnionType{Key: StructKey{Name: "tun_pi_or_void"}, FldName: "pi"}, - &UnionType{Key: StructKey{Name: "virtio_net_hdr_or_void"}, FldName: "hdr"}, + &UnionType{Key: StructKey{Name: "optional[tun_pi]"}, FldName: "pi"}, + &UnionType{Key: StructKey{Name: "optional[virtio_net_hdr]"}, FldName: "hdr"}, &UnionType{Key: StructKey{Name: "tun_payload"}, FldName: "data"}, }}}, {Key: StructKey{Name: "tun_filter"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "tun_filter", IsVarlen: true}, Fields: []Type{ @@ -13670,10 +13678,6 @@ var structDescs_386 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "flags", TypeSize: 2}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ether_types", FldName: "proto", TypeSize: 2}, BigEndian: true}, Vals: []uint64{96, 512, 513, 8944, 2048, 2053, 2054, 2560, 2561, 17157, 24576, 24577, 24578, 24579, 24580, 24581, 24582, 24583, 25944, 32821, 32923, 33011, 33024, 35006, 8939, 33079, 34525, 34824, 34825, 34878, 34887, 34888, 34892, 34915, 34916, 34924, 34948, 34958, 34978, 34984, 34997, 35018, 35045, 35047, 35061, 35063, 35064, 35067, 35078, 35085, 35092, 35095, 35119, 36864, 37120, 37376, 37632, 56026, 64507, 1536, 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 13, 16, 17, 21, 22, 23, 24, 25, 26, 27, 28, 245, 246, 247, 248, 249}}, }}}, - {Key: StructKey{Name: "tun_pi_or_void"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "tun_pi_or_void", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "tun_pi"}, FldName: "pi"}, - &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, - }}}, {Key: StructKey{Name: "ucred"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ucred", TypeSize: 12}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "pid", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "uid", TypeSize: 4}}, @@ -14651,10 +14655,6 @@ var structDescs_386 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "start", TypeSize: 2}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "offset", TypeSize: 2}}}, }}}, - {Key: StructKey{Name: "virtio_net_hdr_or_void"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "virtio_net_hdr_or_void", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "virtio_net_hdr"}, FldName: "hdr"}, - &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, - }}}, {Key: StructKey{Name: "vlan_tag"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vlan_tag", IsVarlen: true}, Fields: []Type{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tag_ad", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "vlan_tag_ad"}}, Kind: 1, RangeEnd: 1}, &StructType{Key: StructKey{Name: "vlan_tag_q"}, FldName: "tag_q"}, @@ -33047,4 +33047,4 @@ var consts_386 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_386 = "4c1aa2be22211f87715bcf165d8a11afb2f2def3" +const revision_386 = "97f94ce741010451418eace9f57874ef0d45c5af" diff --git a/sys/linux/gen/amd64.go b/sys/linux/gen/amd64.go index cf53403d6..84e72c515 100644 --- a/sys/linux/gen/amd64.go +++ b/sys/linux/gen/amd64.go @@ -10604,6 +10604,14 @@ var structDescs_amd64 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "fs_opt[\"nls\", stringnoz[codepages_names]]"}, FldName: "nls"}, &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "utf8", TypeSize: 4}, Kind: 2, Values: []string{"utf8"}, NoZ: true}, }}}, + {Key: StructKey{Name: "optional[tun_pi]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "optional[tun_pi]", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "tun_pi"}, FldName: "val"}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, + }}}, + {Key: StructKey{Name: "optional[virtio_net_hdr]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "optional[virtio_net_hdr]", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "virtio_net_hdr"}, FldName: "val"}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, + }}}, {Key: StructKey{Name: "packet_fanout_val"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "packet_fanout_val", TypeSize: 4}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "id", TypeSize: 2}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "packet_fanout_types", FldName: "type", TypeSize: 1}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6, 7}}, @@ -13958,8 +13966,8 @@ var structDescs_amd64 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "tpacket_req3"}, FldName: "req3"}, }}}, {Key: StructKey{Name: "tun_buffer"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "tun_buffer", IsVarlen: true}, Fields: []Type{ - &UnionType{Key: StructKey{Name: "tun_pi_or_void"}, FldName: "pi"}, - &UnionType{Key: StructKey{Name: "virtio_net_hdr_or_void"}, FldName: "hdr"}, + &UnionType{Key: StructKey{Name: "optional[tun_pi]"}, FldName: "pi"}, + &UnionType{Key: StructKey{Name: "optional[virtio_net_hdr]"}, FldName: "hdr"}, &UnionType{Key: StructKey{Name: "tun_payload"}, FldName: "data"}, }}}, {Key: StructKey{Name: "tun_filter"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "tun_filter", IsVarlen: true}, Fields: []Type{ @@ -13981,10 +13989,6 @@ var structDescs_amd64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "flags", TypeSize: 2}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ether_types", FldName: "proto", TypeSize: 2}, BigEndian: true}, Vals: []uint64{96, 512, 513, 8944, 2048, 2053, 2054, 2560, 2561, 17157, 24576, 24577, 24578, 24579, 24580, 24581, 24582, 24583, 25944, 32821, 32923, 33011, 33024, 35006, 8939, 33079, 34525, 34824, 34825, 34878, 34887, 34888, 34892, 34915, 34916, 34924, 34948, 34958, 34978, 34984, 34997, 35018, 35045, 35047, 35061, 35063, 35064, 35067, 35078, 35085, 35092, 35095, 35119, 36864, 37120, 37376, 37632, 56026, 64507, 1536, 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 13, 16, 17, 21, 22, 23, 24, 25, 26, 27, 28, 245, 246, 247, 248, 249}}, }}}, - {Key: StructKey{Name: "tun_pi_or_void"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "tun_pi_or_void", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "tun_pi"}, FldName: "pi"}, - &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, - }}}, {Key: StructKey{Name: "ucred"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ucred", TypeSize: 12}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "pid", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "uid", TypeSize: 4}}, @@ -14968,10 +14972,6 @@ var structDescs_amd64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "start", TypeSize: 2}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "offset", TypeSize: 2}}}, }}}, - {Key: StructKey{Name: "virtio_net_hdr_or_void"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "virtio_net_hdr_or_void", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "virtio_net_hdr"}, FldName: "hdr"}, - &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, - }}}, {Key: StructKey{Name: "vlan_tag"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vlan_tag", IsVarlen: true}, Fields: []Type{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tag_ad", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "vlan_tag_ad"}}, Kind: 1, RangeEnd: 1}, &StructType{Key: StructKey{Name: "vlan_tag_q"}, FldName: "tag_q"}, @@ -33725,4 +33725,4 @@ var consts_amd64 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_amd64 = "a1988b159784102e37949f726690b7de08d95b4f" +const revision_amd64 = "233033417ec80423a8e8a9a65abcdf173e6ad4fe" diff --git a/sys/linux/gen/arm.go b/sys/linux/gen/arm.go index 10ba738fb..349053024 100644 --- a/sys/linux/gen/arm.go +++ b/sys/linux/gen/arm.go @@ -10236,6 +10236,14 @@ var structDescs_arm = []*KeyedStruct{ &StructType{Key: StructKey{Name: "fs_opt[\"nls\", stringnoz[codepages_names]]"}, FldName: "nls"}, &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "utf8", TypeSize: 4}, Kind: 2, Values: []string{"utf8"}, NoZ: true}, }}}, + {Key: StructKey{Name: "optional[tun_pi]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "optional[tun_pi]", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "tun_pi"}, FldName: "val"}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, + }}}, + {Key: StructKey{Name: "optional[virtio_net_hdr]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "optional[virtio_net_hdr]", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "virtio_net_hdr"}, FldName: "val"}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, + }}}, {Key: StructKey{Name: "packet_fanout_val"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "packet_fanout_val", TypeSize: 4}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "id", TypeSize: 2}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "packet_fanout_types", FldName: "type", TypeSize: 1}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6, 7}}, @@ -13516,8 +13524,8 @@ var structDescs_arm = []*KeyedStruct{ &StructType{Key: StructKey{Name: "tpacket_req3"}, FldName: "req3"}, }}}, {Key: StructKey{Name: "tun_buffer"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "tun_buffer", IsVarlen: true}, Fields: []Type{ - &UnionType{Key: StructKey{Name: "tun_pi_or_void"}, FldName: "pi"}, - &UnionType{Key: StructKey{Name: "virtio_net_hdr_or_void"}, FldName: "hdr"}, + &UnionType{Key: StructKey{Name: "optional[tun_pi]"}, FldName: "pi"}, + &UnionType{Key: StructKey{Name: "optional[virtio_net_hdr]"}, FldName: "hdr"}, &UnionType{Key: StructKey{Name: "tun_payload"}, FldName: "data"}, }}}, {Key: StructKey{Name: "tun_filter"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "tun_filter", IsVarlen: true}, Fields: []Type{ @@ -13539,10 +13547,6 @@ var structDescs_arm = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "flags", TypeSize: 2}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ether_types", FldName: "proto", TypeSize: 2}, BigEndian: true}, Vals: []uint64{96, 512, 513, 8944, 2048, 2053, 2054, 2560, 2561, 17157, 24576, 24577, 24578, 24579, 24580, 24581, 24582, 24583, 25944, 32821, 32923, 33011, 33024, 35006, 8939, 33079, 34525, 34824, 34825, 34878, 34887, 34888, 34892, 34915, 34916, 34924, 34948, 34958, 34978, 34984, 34997, 35018, 35045, 35047, 35061, 35063, 35064, 35067, 35078, 35085, 35092, 35095, 35119, 36864, 37120, 37376, 37632, 56026, 64507, 1536, 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 13, 16, 17, 21, 22, 23, 24, 25, 26, 27, 28, 245, 246, 247, 248, 249}}, }}}, - {Key: StructKey{Name: "tun_pi_or_void"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "tun_pi_or_void", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "tun_pi"}, FldName: "pi"}, - &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, - }}}, {Key: StructKey{Name: "ucred"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ucred", TypeSize: 12}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "pid", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "uid", TypeSize: 4}}, @@ -14504,10 +14508,6 @@ var structDescs_arm = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "start", TypeSize: 2}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "offset", TypeSize: 2}}}, }}}, - {Key: StructKey{Name: "virtio_net_hdr_or_void"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "virtio_net_hdr_or_void", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "virtio_net_hdr"}, FldName: "hdr"}, - &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, - }}}, {Key: StructKey{Name: "vlan_tag"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vlan_tag", IsVarlen: true}, Fields: []Type{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tag_ad", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "vlan_tag_ad"}}, Kind: 1, RangeEnd: 1}, &StructType{Key: StructKey{Name: "vlan_tag_q"}, FldName: "tag_q"}, @@ -32914,4 +32914,4 @@ var consts_arm = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_arm = "1b96898113dbc4516a907e37799afe3ea36deeab" +const revision_arm = "2b5e231755e9fa44244d44f48b976dc9dfcfabf5" diff --git a/sys/linux/gen/arm64.go b/sys/linux/gen/arm64.go index 89eafab26..d4d9df5b8 100644 --- a/sys/linux/gen/arm64.go +++ b/sys/linux/gen/arm64.go @@ -10409,6 +10409,14 @@ var structDescs_arm64 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "fs_opt[\"nls\", stringnoz[codepages_names]]"}, FldName: "nls"}, &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "utf8", TypeSize: 4}, Kind: 2, Values: []string{"utf8"}, NoZ: true}, }}}, + {Key: StructKey{Name: "optional[tun_pi]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "optional[tun_pi]", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "tun_pi"}, FldName: "val"}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, + }}}, + {Key: StructKey{Name: "optional[virtio_net_hdr]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "optional[virtio_net_hdr]", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "virtio_net_hdr"}, FldName: "val"}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, + }}}, {Key: StructKey{Name: "packet_fanout_val"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "packet_fanout_val", TypeSize: 4}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "id", TypeSize: 2}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "packet_fanout_types", FldName: "type", TypeSize: 1}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6, 7}}, @@ -13763,8 +13771,8 @@ var structDescs_arm64 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "tpacket_req3"}, FldName: "req3"}, }}}, {Key: StructKey{Name: "tun_buffer"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "tun_buffer", IsVarlen: true}, Fields: []Type{ - &UnionType{Key: StructKey{Name: "tun_pi_or_void"}, FldName: "pi"}, - &UnionType{Key: StructKey{Name: "virtio_net_hdr_or_void"}, FldName: "hdr"}, + &UnionType{Key: StructKey{Name: "optional[tun_pi]"}, FldName: "pi"}, + &UnionType{Key: StructKey{Name: "optional[virtio_net_hdr]"}, FldName: "hdr"}, &UnionType{Key: StructKey{Name: "tun_payload"}, FldName: "data"}, }}}, {Key: StructKey{Name: "tun_filter"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "tun_filter", IsVarlen: true}, Fields: []Type{ @@ -13786,10 +13794,6 @@ var structDescs_arm64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "flags", TypeSize: 2}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ether_types", FldName: "proto", TypeSize: 2}, BigEndian: true}, Vals: []uint64{96, 512, 513, 8944, 2048, 2053, 2054, 2560, 2561, 17157, 24576, 24577, 24578, 24579, 24580, 24581, 24582, 24583, 25944, 32821, 32923, 33011, 33024, 35006, 8939, 33079, 34525, 34824, 34825, 34878, 34887, 34888, 34892, 34915, 34916, 34924, 34948, 34958, 34978, 34984, 34997, 35018, 35045, 35047, 35061, 35063, 35064, 35067, 35078, 35085, 35092, 35095, 35119, 36864, 37120, 37376, 37632, 56026, 64507, 1536, 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 13, 16, 17, 21, 22, 23, 24, 25, 26, 27, 28, 245, 246, 247, 248, 249}}, }}}, - {Key: StructKey{Name: "tun_pi_or_void"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "tun_pi_or_void", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "tun_pi"}, FldName: "pi"}, - &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, - }}}, {Key: StructKey{Name: "ucred"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ucred", TypeSize: 12}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "pid", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "uid", TypeSize: 4}}, @@ -14748,10 +14752,6 @@ var structDescs_arm64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "start", TypeSize: 2}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "offset", TypeSize: 2}}}, }}}, - {Key: StructKey{Name: "virtio_net_hdr_or_void"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "virtio_net_hdr_or_void", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "virtio_net_hdr"}, FldName: "hdr"}, - &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, - }}}, {Key: StructKey{Name: "vlan_tag"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vlan_tag", IsVarlen: true}, Fields: []Type{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tag_ad", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "vlan_tag_ad"}}, Kind: 1, RangeEnd: 1}, &StructType{Key: StructKey{Name: "vlan_tag_q"}, FldName: "tag_q"}, @@ -33111,4 +33111,4 @@ var consts_arm64 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_arm64 = "20353259404399b35c73ba56ae78cdaff1b2942a" +const revision_arm64 = "a4fff2cea8a7699f000ed1915640ad1c8e816b92" diff --git a/sys/linux/gen/ppc64le.go b/sys/linux/gen/ppc64le.go index f6ea9e36a..be4606249 100644 --- a/sys/linux/gen/ppc64le.go +++ b/sys/linux/gen/ppc64le.go @@ -10361,6 +10361,14 @@ var structDescs_ppc64le = []*KeyedStruct{ &StructType{Key: StructKey{Name: "fs_opt[\"nls\", stringnoz[codepages_names]]"}, FldName: "nls"}, &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "utf8", TypeSize: 4}, Kind: 2, Values: []string{"utf8"}, NoZ: true}, }}}, + {Key: StructKey{Name: "optional[tun_pi]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "optional[tun_pi]", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "tun_pi"}, FldName: "val"}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, + }}}, + {Key: StructKey{Name: "optional[virtio_net_hdr]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "optional[virtio_net_hdr]", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "virtio_net_hdr"}, FldName: "val"}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, + }}}, {Key: StructKey{Name: "packet_fanout_val"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "packet_fanout_val", TypeSize: 4}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "id", TypeSize: 2}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "packet_fanout_types", FldName: "type", TypeSize: 1}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6, 7}}, @@ -13611,8 +13619,8 @@ var structDescs_ppc64le = []*KeyedStruct{ &StructType{Key: StructKey{Name: "tpacket_req3"}, FldName: "req3"}, }}}, {Key: StructKey{Name: "tun_buffer"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "tun_buffer", IsVarlen: true}, Fields: []Type{ - &UnionType{Key: StructKey{Name: "tun_pi_or_void"}, FldName: "pi"}, - &UnionType{Key: StructKey{Name: "virtio_net_hdr_or_void"}, FldName: "hdr"}, + &UnionType{Key: StructKey{Name: "optional[tun_pi]"}, FldName: "pi"}, + &UnionType{Key: StructKey{Name: "optional[virtio_net_hdr]"}, FldName: "hdr"}, &UnionType{Key: StructKey{Name: "tun_payload"}, FldName: "data"}, }}}, {Key: StructKey{Name: "tun_filter"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "tun_filter", IsVarlen: true}, Fields: []Type{ @@ -13634,10 +13642,6 @@ var structDescs_ppc64le = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "flags", TypeSize: 2}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ether_types", FldName: "proto", TypeSize: 2}, BigEndian: true}, Vals: []uint64{96, 512, 513, 8944, 2048, 2053, 2054, 2560, 2561, 17157, 24576, 24577, 24578, 24579, 24580, 24581, 24582, 24583, 25944, 32821, 32923, 33011, 33024, 35006, 8939, 33079, 34525, 34824, 34825, 34878, 34887, 34888, 34892, 34915, 34916, 34924, 34948, 34958, 34978, 34984, 34997, 35018, 35045, 35047, 35061, 35063, 35064, 35067, 35078, 35085, 35092, 35095, 35119, 36864, 37120, 37376, 37632, 56026, 64507, 1536, 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 13, 16, 17, 21, 22, 23, 24, 25, 26, 27, 28, 245, 246, 247, 248, 249}}, }}}, - {Key: StructKey{Name: "tun_pi_or_void"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "tun_pi_or_void", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "tun_pi"}, FldName: "pi"}, - &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, - }}}, {Key: StructKey{Name: "ucred"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ucred", TypeSize: 12}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "pid", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "uid", TypeSize: 4}}, @@ -13813,10 +13817,6 @@ var structDescs_ppc64le = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "start", TypeSize: 2}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "offset", TypeSize: 2}}}, }}}, - {Key: StructKey{Name: "virtio_net_hdr_or_void"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "virtio_net_hdr_or_void", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "virtio_net_hdr"}, FldName: "hdr"}, - &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, - }}}, {Key: StructKey{Name: "vlan_tag"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vlan_tag", IsVarlen: true}, Fields: []Type{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tag_ad", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "vlan_tag_ad"}}, Kind: 1, RangeEnd: 1}, &StructType{Key: StructKey{Name: "vlan_tag_q"}, FldName: "tag_q"}, @@ -30521,4 +30521,4 @@ var consts_ppc64le = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_ppc64le = "529bfcceddd61870a65656e0b060bacbf6751d08" +const revision_ppc64le = "eae94073f1ff3ad2bedabb5df416f14856b29e2c" diff --git a/sys/linux/tun.txt b/sys/linux/tun.txt index ca0047e39..09d998b9a 100755 --- a/sys/linux/tun.txt +++ b/sys/linux/tun.txt @@ -40,21 +40,11 @@ ioctl$TUNSETVNETBE(fd fd_tun, cmd const[TUNSETVNETBE], arg ptr[in, bool32]) # virtio_net_hdr can be present or missing (depending on IFF_VNET_HDR). # We may want to support optional fields, which will make this simpler. tun_buffer { - pi tun_pi_or_void - hdr virtio_net_hdr_or_void + pi optional[tun_pi] + hdr optional[virtio_net_hdr] data tun_payload } [packed] -tun_pi_or_void [ - pi tun_pi - void void -] [varlen] - -virtio_net_hdr_or_void [ - hdr virtio_net_hdr - void void -] [varlen] - tun_pi { flags const[0, int16] proto flags[ether_types, int16be] -- cgit mrf-deployment