aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux
diff options
context:
space:
mode:
authorHangbin Liu <liuhangbin@gmail.com>2019-06-26 11:21:34 +0800
committerDmitry Vyukov <dvyukov@google.com>2019-06-26 16:34:37 +0200
commitc2c0d4d6ae3a27d3c4457df81a03c06ddbe72282 (patch)
treecba2daf181ae65b368432dc1b709430c2bc1cc6d /sys/linux
parent4d3422405ed6c68b57f24f80dcfd0abd3a2c6c1a (diff)
sys/linux: update mpls_lable and rta types
Kernel get mpls lable like ``` unsigned entry = be32_to_cpu(hdr->label_stack_entry); result.label = (entry & MPLS_LS_LABEL_MASK) >> MPLS_LS_LABEL_SHIFT; ``` So we just need to store the label in big endian order. For mpls rta types, kernel accpet only one lable for RTA_DST and multi labels for RTA_NEWDST. Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Diffstat (limited to 'sys/linux')
-rw-r--r--sys/linux/gen/386.go41
-rw-r--r--sys/linux/gen/amd64.go41
-rw-r--r--sys/linux/gen/arm.go41
-rw-r--r--sys/linux/gen/arm64.go41
-rw-r--r--sys/linux/gen/ppc64le.go41
-rw-r--r--sys/linux/socket_netlink_route.txt5
-rw-r--r--sys/linux/socket_netlink_route_386.const2
-rw-r--r--sys/linux/socket_netlink_route_amd64.const2
-rw-r--r--sys/linux/socket_netlink_route_arm.const2
-rw-r--r--sys/linux/socket_netlink_route_arm64.const2
-rw-r--r--sys/linux/socket_netlink_route_ppc64le.const2
-rw-r--r--sys/linux/vnet.txt7
12 files changed, 167 insertions, 60 deletions
diff --git a/sys/linux/gen/386.go b/sys/linux/gen/386.go
index 1a19c1325..1097c660f 100644
--- a/sys/linux/gen/386.go
+++ b/sys/linux/gen/386.go
@@ -11357,10 +11357,10 @@ var structDescs_386 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "moved_len", TypeSize: 8}}},
}}},
{Key: StructKey{Name: "mpls_label"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "mpls_label", TypeSize: 4}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "ttl", TypeSize: 4}, ArgFormat: 1, BitfieldLen: 8, BitfieldMdl: true}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "s", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 8, BitfieldLen: 1, BitfieldMdl: true}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "tc", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 9, BitfieldLen: 3, BitfieldMdl: true}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "label", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 12, BitfieldLen: 20}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "label", TypeSize: 4}, ArgFormat: 1, BitfieldLen: 20, BitfieldMdl: true}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "tc", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 20, BitfieldLen: 3, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "s", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 23, BitfieldLen: 1, BitfieldMdl: true}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "ttl", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 24, BitfieldLen: 8}},
}}},
{Key: StructKey{Name: "mpls_packet"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "mpls_packet", IsVarlen: true}, Fields: []Type{
&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "labels", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "mpls_label"}}},
@@ -15973,11 +15973,6 @@ var structDescs_386 = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 2},
&ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "payload", TypeSize: 4}},
}, AlignAttr: 4}},
- {Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], array[mpls_label]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_DST, int16], array[mpls_label]]", IsVarlen: true}, Fields: []Type{
- &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
- &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "mpls_label"}}},
- }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], ifindex]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_DST, int16], ifindex]", TypeSize: 8}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
@@ -15993,6 +15988,11 @@ var structDescs_386 = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
&UnionType{Key: StructKey{Name: "ipv6_addr"}, FldName: "payload"},
}, AlignAttr: 4}},
+ {Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], mpls_label]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_DST, int16], mpls_label]", TypeSize: 8}, Fields: []Type{
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
+ &StructType{Key: StructKey{Name: "mpls_label"}, FldName: "payload"},
+ }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[RTA_ENCAP, int16], nl_generic_attr]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_ENCAP, int16], nl_generic_attr]", IsVarlen: true}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 22},
@@ -16039,6 +16039,11 @@ var structDescs_386 = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 9},
&StructType{Key: StructKey{Name: "rtnexthop"}, FldName: "payload"},
}, AlignAttr: 4}},
+ {Key: StructKey{Name: "nlattr_t[const[RTA_NEWDST, int16], array[mpls_label, 32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_NEWDST, int16], array[mpls_label, 32]]", TypeSize: 132}, Fields: []Type{
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 19},
+ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", TypeSize: 128}, Type: &StructType{Key: StructKey{Name: "mpls_label"}}, Kind: 1, RangeBegin: 32, RangeEnd: 32},
+ }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[RTA_OIF, int16], ifindex]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_OIF, int16], ifindex]", TypeSize: 8}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 4},
@@ -16081,6 +16086,11 @@ var structDescs_386 = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 25},
&ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "payload", TypeSize: 4}},
}, AlignAttr: 4}},
+ {Key: StructKey{Name: "nlattr_t[const[RTA_VIA, int16], sockaddr_generic]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_VIA, int16], sockaddr_generic]", TypeSize: 20}, Fields: []Type{
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 18},
+ &StructType{Key: StructKey{Name: "sockaddr_generic"}, FldName: "payload"},
+ }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[SEG6_ATTR_ALGID, int16], int8]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[SEG6_ATTR_ALGID, int16], int8]", TypeSize: 8}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 6},
@@ -20428,9 +20438,12 @@ var structDescs_386 = []*KeyedStruct{
&StructType{Key: StructKey{Name: "nlattr_t[const[RTA_MARK, int16], int32]"}, FldName: "RTA_MARK"},
}}},
{Key: StructKey{Name: "rtm_mpls_policy"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "rtm_mpls_policy", IsVarlen: true}, Fields: []Type{
- &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], array[mpls_label]]"}, FldName: "RTA_DST"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], mpls_label]"}, FldName: "RTA_DST"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_MULTIPATH, int16], rtnexthop]"}, FldName: "RTA_MULTIPATH"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_NEWDST, int16], array[mpls_label, 32]]"}, FldName: "RTA_NEWDST"},
&StructType{Key: StructKey{Name: "nlattr_t[const[RTA_OIF, int16], ifindex]"}, FldName: "RTA_OIF"},
&StructType{Key: StructKey{Name: "nlattr_t[const[RTA_TTL_PROPAGATE, int16], int8]"}, FldName: "RTA_TTL_PROPAGATE"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_VIA, int16], sockaddr_generic]"}, FldName: "RTA_VIA"},
}}},
{Key: StructKey{Name: "rtmsg[AF_INET6]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "rtmsg[AF_INET6]", TypeSize: 12}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "rtm_family", TypeSize: 1}}, Val: 10},
@@ -21854,6 +21867,10 @@ var structDescs_386 = []*KeyedStruct{
&UnionType{Key: StructKey{Name: "mac_addr", Dir: 2}, FldName: "sa_data"},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 8}}, IsPad: true},
}}},
+ {Key: StructKey{Name: "sockaddr_generic"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_generic", TypeSize: 16}, Fields: []Type{
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_domain", FldName: "sa_family", TypeSize: 2}}, Vals: []uint64{1, 2, 10, 4, 16, 9, 3, 8, 5, 17}},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "sa_data", TypeSize: 14}, Kind: 1, RangeBegin: 14, RangeEnd: 14},
+ }}},
{Key: StructKey{Name: "sockaddr_generic", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_generic", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_domain", FldName: "sa_family", TypeSize: 2, ArgDir: 2}}, Vals: []uint64{1, 2, 10, 4, 16, 9, 3, 8, 5, 17}},
&BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "sa_data", TypeSize: 14, ArgDir: 2}, Kind: 1, RangeBegin: 14, RangeEnd: 14},
@@ -48086,6 +48103,7 @@ var consts_386 = []ConstValue{
{Name: "RTA_MARK", Value: 16},
{Name: "RTA_METRICS", Value: 8},
{Name: "RTA_MULTIPATH", Value: 9},
+ {Name: "RTA_NEWDST", Value: 19},
{Name: "RTA_OIF", Value: 4},
{Name: "RTA_PREF", Value: 20},
{Name: "RTA_PREFSRC", Value: 7},
@@ -48093,6 +48111,7 @@ var consts_386 = []ConstValue{
{Name: "RTA_SRC", Value: 2},
{Name: "RTA_TTL_PROPAGATE", Value: 26},
{Name: "RTA_UID", Value: 25},
+ {Name: "RTA_VIA", Value: 18},
{Name: "RTC_AIE_OFF", Value: 28674},
{Name: "RTC_AIE_ON", Value: 28673},
{Name: "RTC_ALM_READ", Value: 2149871624},
@@ -51700,4 +51719,4 @@ var consts_386 = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_386 = "1606116bedd394a0b861b0ec0a30a1c045b5e23b"
+const revision_386 = "15a9e1059c0119f9921a6dd0aa0410377868fcec"
diff --git a/sys/linux/gen/amd64.go b/sys/linux/gen/amd64.go
index 962673dab..0bcbae5ea 100644
--- a/sys/linux/gen/amd64.go
+++ b/sys/linux/gen/amd64.go
@@ -11469,10 +11469,10 @@ var structDescs_amd64 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "moved_len", TypeSize: 8}}},
}}},
{Key: StructKey{Name: "mpls_label"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "mpls_label", TypeSize: 4}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "ttl", TypeSize: 4}, ArgFormat: 1, BitfieldLen: 8, BitfieldMdl: true}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "s", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 8, BitfieldLen: 1, BitfieldMdl: true}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "tc", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 9, BitfieldLen: 3, BitfieldMdl: true}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "label", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 12, BitfieldLen: 20}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "label", TypeSize: 4}, ArgFormat: 1, BitfieldLen: 20, BitfieldMdl: true}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "tc", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 20, BitfieldLen: 3, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "s", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 23, BitfieldLen: 1, BitfieldMdl: true}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "ttl", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 24, BitfieldLen: 8}},
}}},
{Key: StructKey{Name: "mpls_packet"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "mpls_packet", IsVarlen: true}, Fields: []Type{
&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "labels", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "mpls_label"}}},
@@ -16271,11 +16271,6 @@ var structDescs_amd64 = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 2},
&ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "payload", TypeSize: 4}},
}, AlignAttr: 4}},
- {Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], array[mpls_label]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_DST, int16], array[mpls_label]]", IsVarlen: true}, Fields: []Type{
- &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
- &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "mpls_label"}}},
- }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], ifindex]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_DST, int16], ifindex]", TypeSize: 8}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
@@ -16291,6 +16286,11 @@ var structDescs_amd64 = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
&UnionType{Key: StructKey{Name: "ipv6_addr"}, FldName: "payload"},
}, AlignAttr: 4}},
+ {Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], mpls_label]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_DST, int16], mpls_label]", TypeSize: 8}, Fields: []Type{
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
+ &StructType{Key: StructKey{Name: "mpls_label"}, FldName: "payload"},
+ }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[RTA_ENCAP, int16], nl_generic_attr]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_ENCAP, int16], nl_generic_attr]", IsVarlen: true}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 22},
@@ -16337,6 +16337,11 @@ var structDescs_amd64 = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 9},
&StructType{Key: StructKey{Name: "rtnexthop"}, FldName: "payload"},
}, AlignAttr: 4}},
+ {Key: StructKey{Name: "nlattr_t[const[RTA_NEWDST, int16], array[mpls_label, 32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_NEWDST, int16], array[mpls_label, 32]]", TypeSize: 132}, Fields: []Type{
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 19},
+ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", TypeSize: 128}, Type: &StructType{Key: StructKey{Name: "mpls_label"}}, Kind: 1, RangeBegin: 32, RangeEnd: 32},
+ }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[RTA_OIF, int16], ifindex]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_OIF, int16], ifindex]", TypeSize: 8}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 4},
@@ -16379,6 +16384,11 @@ var structDescs_amd64 = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 25},
&ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "payload", TypeSize: 4}},
}, AlignAttr: 4}},
+ {Key: StructKey{Name: "nlattr_t[const[RTA_VIA, int16], sockaddr_generic]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_VIA, int16], sockaddr_generic]", TypeSize: 20}, Fields: []Type{
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 18},
+ &StructType{Key: StructKey{Name: "sockaddr_generic"}, FldName: "payload"},
+ }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[SEG6_ATTR_ALGID, int16], int8]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[SEG6_ATTR_ALGID, int16], int8]", TypeSize: 8}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 6},
@@ -20720,9 +20730,12 @@ var structDescs_amd64 = []*KeyedStruct{
&StructType{Key: StructKey{Name: "nlattr_t[const[RTA_MARK, int16], int32]"}, FldName: "RTA_MARK"},
}}},
{Key: StructKey{Name: "rtm_mpls_policy"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "rtm_mpls_policy", IsVarlen: true}, Fields: []Type{
- &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], array[mpls_label]]"}, FldName: "RTA_DST"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], mpls_label]"}, FldName: "RTA_DST"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_MULTIPATH, int16], rtnexthop]"}, FldName: "RTA_MULTIPATH"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_NEWDST, int16], array[mpls_label, 32]]"}, FldName: "RTA_NEWDST"},
&StructType{Key: StructKey{Name: "nlattr_t[const[RTA_OIF, int16], ifindex]"}, FldName: "RTA_OIF"},
&StructType{Key: StructKey{Name: "nlattr_t[const[RTA_TTL_PROPAGATE, int16], int8]"}, FldName: "RTA_TTL_PROPAGATE"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_VIA, int16], sockaddr_generic]"}, FldName: "RTA_VIA"},
}}},
{Key: StructKey{Name: "rtmsg[AF_INET6]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "rtmsg[AF_INET6]", TypeSize: 12}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "rtm_family", TypeSize: 1}}, Val: 10},
@@ -22174,6 +22187,10 @@ var structDescs_amd64 = []*KeyedStruct{
&UnionType{Key: StructKey{Name: "mac_addr", Dir: 2}, FldName: "sa_data"},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 8}}, IsPad: true},
}}},
+ {Key: StructKey{Name: "sockaddr_generic"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_generic", TypeSize: 16}, Fields: []Type{
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_domain", FldName: "sa_family", TypeSize: 2}}, Vals: []uint64{1, 2, 10, 4, 16, 9, 3, 8, 5, 17}},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "sa_data", TypeSize: 14}, Kind: 1, RangeBegin: 14, RangeEnd: 14},
+ }}},
{Key: StructKey{Name: "sockaddr_generic", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_generic", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_domain", FldName: "sa_family", TypeSize: 2, ArgDir: 2}}, Vals: []uint64{1, 2, 10, 4, 16, 9, 3, 8, 5, 17}},
&BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "sa_data", TypeSize: 14, ArgDir: 2}, Kind: 1, RangeBegin: 14, RangeEnd: 14},
@@ -48608,6 +48625,7 @@ var consts_amd64 = []ConstValue{
{Name: "RTA_MARK", Value: 16},
{Name: "RTA_METRICS", Value: 8},
{Name: "RTA_MULTIPATH", Value: 9},
+ {Name: "RTA_NEWDST", Value: 19},
{Name: "RTA_OIF", Value: 4},
{Name: "RTA_PREF", Value: 20},
{Name: "RTA_PREFSRC", Value: 7},
@@ -48615,6 +48633,7 @@ var consts_amd64 = []ConstValue{
{Name: "RTA_SRC", Value: 2},
{Name: "RTA_TTL_PROPAGATE", Value: 26},
{Name: "RTA_UID", Value: 25},
+ {Name: "RTA_VIA", Value: 18},
{Name: "RTC_AIE_OFF", Value: 28674},
{Name: "RTC_AIE_ON", Value: 28673},
{Name: "RTC_ALM_READ", Value: 2149871624},
@@ -52237,4 +52256,4 @@ var consts_amd64 = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_amd64 = "ad6a79d9cc414f25b8b695e36fdefd7e3fb855e3"
+const revision_amd64 = "748fe551f032fd1a4600c5de812e5a3ee2f12fe5"
diff --git a/sys/linux/gen/arm.go b/sys/linux/gen/arm.go
index 4025a8646..54a1e9456 100644
--- a/sys/linux/gen/arm.go
+++ b/sys/linux/gen/arm.go
@@ -11174,10 +11174,10 @@ var structDescs_arm = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "moved_len", TypeSize: 8}}},
}}},
{Key: StructKey{Name: "mpls_label"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "mpls_label", TypeSize: 4}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "ttl", TypeSize: 4}, ArgFormat: 1, BitfieldLen: 8, BitfieldMdl: true}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "s", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 8, BitfieldLen: 1, BitfieldMdl: true}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "tc", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 9, BitfieldLen: 3, BitfieldMdl: true}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "label", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 12, BitfieldLen: 20}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "label", TypeSize: 4}, ArgFormat: 1, BitfieldLen: 20, BitfieldMdl: true}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "tc", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 20, BitfieldLen: 3, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "s", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 23, BitfieldLen: 1, BitfieldMdl: true}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "ttl", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 24, BitfieldLen: 8}},
}}},
{Key: StructKey{Name: "mpls_packet"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "mpls_packet", IsVarlen: true}, Fields: []Type{
&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "labels", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "mpls_label"}}},
@@ -15790,11 +15790,6 @@ var structDescs_arm = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 2},
&ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "payload", TypeSize: 4}},
}, AlignAttr: 4}},
- {Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], array[mpls_label]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_DST, int16], array[mpls_label]]", IsVarlen: true}, Fields: []Type{
- &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
- &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "mpls_label"}}},
- }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], ifindex]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_DST, int16], ifindex]", TypeSize: 8}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
@@ -15810,6 +15805,11 @@ var structDescs_arm = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
&UnionType{Key: StructKey{Name: "ipv6_addr"}, FldName: "payload"},
}, AlignAttr: 4}},
+ {Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], mpls_label]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_DST, int16], mpls_label]", TypeSize: 8}, Fields: []Type{
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
+ &StructType{Key: StructKey{Name: "mpls_label"}, FldName: "payload"},
+ }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[RTA_ENCAP, int16], nl_generic_attr]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_ENCAP, int16], nl_generic_attr]", IsVarlen: true}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 22},
@@ -15856,6 +15856,11 @@ var structDescs_arm = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 9},
&StructType{Key: StructKey{Name: "rtnexthop"}, FldName: "payload"},
}, AlignAttr: 4}},
+ {Key: StructKey{Name: "nlattr_t[const[RTA_NEWDST, int16], array[mpls_label, 32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_NEWDST, int16], array[mpls_label, 32]]", TypeSize: 132}, Fields: []Type{
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 19},
+ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", TypeSize: 128}, Type: &StructType{Key: StructKey{Name: "mpls_label"}}, Kind: 1, RangeBegin: 32, RangeEnd: 32},
+ }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[RTA_OIF, int16], ifindex]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_OIF, int16], ifindex]", TypeSize: 8}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 4},
@@ -15898,6 +15903,11 @@ var structDescs_arm = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 25},
&ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "payload", TypeSize: 4}},
}, AlignAttr: 4}},
+ {Key: StructKey{Name: "nlattr_t[const[RTA_VIA, int16], sockaddr_generic]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_VIA, int16], sockaddr_generic]", TypeSize: 20}, Fields: []Type{
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 18},
+ &StructType{Key: StructKey{Name: "sockaddr_generic"}, FldName: "payload"},
+ }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[SEG6_ATTR_ALGID, int16], int8]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[SEG6_ATTR_ALGID, int16], int8]", TypeSize: 8}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 6},
@@ -20245,9 +20255,12 @@ var structDescs_arm = []*KeyedStruct{
&StructType{Key: StructKey{Name: "nlattr_t[const[RTA_MARK, int16], int32]"}, FldName: "RTA_MARK"},
}}},
{Key: StructKey{Name: "rtm_mpls_policy"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "rtm_mpls_policy", IsVarlen: true}, Fields: []Type{
- &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], array[mpls_label]]"}, FldName: "RTA_DST"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], mpls_label]"}, FldName: "RTA_DST"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_MULTIPATH, int16], rtnexthop]"}, FldName: "RTA_MULTIPATH"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_NEWDST, int16], array[mpls_label, 32]]"}, FldName: "RTA_NEWDST"},
&StructType{Key: StructKey{Name: "nlattr_t[const[RTA_OIF, int16], ifindex]"}, FldName: "RTA_OIF"},
&StructType{Key: StructKey{Name: "nlattr_t[const[RTA_TTL_PROPAGATE, int16], int8]"}, FldName: "RTA_TTL_PROPAGATE"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_VIA, int16], sockaddr_generic]"}, FldName: "RTA_VIA"},
}}},
{Key: StructKey{Name: "rtmsg[AF_INET6]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "rtmsg[AF_INET6]", TypeSize: 12}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "rtm_family", TypeSize: 1}}, Val: 10},
@@ -21676,6 +21689,10 @@ var structDescs_arm = []*KeyedStruct{
&UnionType{Key: StructKey{Name: "mac_addr", Dir: 2}, FldName: "sa_data"},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 8}}, IsPad: true},
}}},
+ {Key: StructKey{Name: "sockaddr_generic"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_generic", TypeSize: 16}, Fields: []Type{
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_domain", FldName: "sa_family", TypeSize: 2}}, Vals: []uint64{1, 2, 10, 4, 16, 9, 3, 8, 5, 17}},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "sa_data", TypeSize: 14}, Kind: 1, RangeBegin: 14, RangeEnd: 14},
+ }}},
{Key: StructKey{Name: "sockaddr_generic", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_generic", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_domain", FldName: "sa_family", TypeSize: 2, ArgDir: 2}}, Vals: []uint64{1, 2, 10, 4, 16, 9, 3, 8, 5, 17}},
&BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "sa_data", TypeSize: 14, ArgDir: 2}, Kind: 1, RangeBegin: 14, RangeEnd: 14},
@@ -47673,6 +47690,7 @@ var consts_arm = []ConstValue{
{Name: "RTA_MARK", Value: 16},
{Name: "RTA_METRICS", Value: 8},
{Name: "RTA_MULTIPATH", Value: 9},
+ {Name: "RTA_NEWDST", Value: 19},
{Name: "RTA_OIF", Value: 4},
{Name: "RTA_PREF", Value: 20},
{Name: "RTA_PREFSRC", Value: 7},
@@ -47680,6 +47698,7 @@ var consts_arm = []ConstValue{
{Name: "RTA_SRC", Value: 2},
{Name: "RTA_TTL_PROPAGATE", Value: 26},
{Name: "RTA_UID", Value: 25},
+ {Name: "RTA_VIA", Value: 18},
{Name: "RTC_AIE_OFF", Value: 28674},
{Name: "RTC_AIE_ON", Value: 28673},
{Name: "RTC_ALM_READ", Value: 2149871624},
@@ -51277,4 +51296,4 @@ var consts_arm = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_arm = "3c3fb436aa51c107a7fe346fe0e53a7c18779d1c"
+const revision_arm = "638001e76f27907626bfdd07109518a61f517c40"
diff --git a/sys/linux/gen/arm64.go b/sys/linux/gen/arm64.go
index a587818ab..0e3d2d71a 100644
--- a/sys/linux/gen/arm64.go
+++ b/sys/linux/gen/arm64.go
@@ -11286,10 +11286,10 @@ var structDescs_arm64 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "moved_len", TypeSize: 8}}},
}}},
{Key: StructKey{Name: "mpls_label"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "mpls_label", TypeSize: 4}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "ttl", TypeSize: 4}, ArgFormat: 1, BitfieldLen: 8, BitfieldMdl: true}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "s", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 8, BitfieldLen: 1, BitfieldMdl: true}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "tc", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 9, BitfieldLen: 3, BitfieldMdl: true}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "label", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 12, BitfieldLen: 20}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "label", TypeSize: 4}, ArgFormat: 1, BitfieldLen: 20, BitfieldMdl: true}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "tc", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 20, BitfieldLen: 3, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "s", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 23, BitfieldLen: 1, BitfieldMdl: true}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "ttl", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 24, BitfieldLen: 8}},
}}},
{Key: StructKey{Name: "mpls_packet"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "mpls_packet", IsVarlen: true}, Fields: []Type{
&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "labels", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "mpls_label"}}},
@@ -16088,11 +16088,6 @@ var structDescs_arm64 = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 2},
&ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "payload", TypeSize: 4}},
}, AlignAttr: 4}},
- {Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], array[mpls_label]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_DST, int16], array[mpls_label]]", IsVarlen: true}, Fields: []Type{
- &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
- &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "mpls_label"}}},
- }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], ifindex]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_DST, int16], ifindex]", TypeSize: 8}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
@@ -16108,6 +16103,11 @@ var structDescs_arm64 = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
&UnionType{Key: StructKey{Name: "ipv6_addr"}, FldName: "payload"},
}, AlignAttr: 4}},
+ {Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], mpls_label]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_DST, int16], mpls_label]", TypeSize: 8}, Fields: []Type{
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
+ &StructType{Key: StructKey{Name: "mpls_label"}, FldName: "payload"},
+ }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[RTA_ENCAP, int16], nl_generic_attr]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_ENCAP, int16], nl_generic_attr]", IsVarlen: true}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 22},
@@ -16154,6 +16154,11 @@ var structDescs_arm64 = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 9},
&StructType{Key: StructKey{Name: "rtnexthop"}, FldName: "payload"},
}, AlignAttr: 4}},
+ {Key: StructKey{Name: "nlattr_t[const[RTA_NEWDST, int16], array[mpls_label, 32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_NEWDST, int16], array[mpls_label, 32]]", TypeSize: 132}, Fields: []Type{
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 19},
+ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", TypeSize: 128}, Type: &StructType{Key: StructKey{Name: "mpls_label"}}, Kind: 1, RangeBegin: 32, RangeEnd: 32},
+ }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[RTA_OIF, int16], ifindex]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_OIF, int16], ifindex]", TypeSize: 8}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 4},
@@ -16196,6 +16201,11 @@ var structDescs_arm64 = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 25},
&ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "payload", TypeSize: 4}},
}, AlignAttr: 4}},
+ {Key: StructKey{Name: "nlattr_t[const[RTA_VIA, int16], sockaddr_generic]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_VIA, int16], sockaddr_generic]", TypeSize: 20}, Fields: []Type{
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 18},
+ &StructType{Key: StructKey{Name: "sockaddr_generic"}, FldName: "payload"},
+ }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[SEG6_ATTR_ALGID, int16], int8]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[SEG6_ATTR_ALGID, int16], int8]", TypeSize: 8}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 6},
@@ -20537,9 +20547,12 @@ var structDescs_arm64 = []*KeyedStruct{
&StructType{Key: StructKey{Name: "nlattr_t[const[RTA_MARK, int16], int32]"}, FldName: "RTA_MARK"},
}}},
{Key: StructKey{Name: "rtm_mpls_policy"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "rtm_mpls_policy", IsVarlen: true}, Fields: []Type{
- &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], array[mpls_label]]"}, FldName: "RTA_DST"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], mpls_label]"}, FldName: "RTA_DST"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_MULTIPATH, int16], rtnexthop]"}, FldName: "RTA_MULTIPATH"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_NEWDST, int16], array[mpls_label, 32]]"}, FldName: "RTA_NEWDST"},
&StructType{Key: StructKey{Name: "nlattr_t[const[RTA_OIF, int16], ifindex]"}, FldName: "RTA_OIF"},
&StructType{Key: StructKey{Name: "nlattr_t[const[RTA_TTL_PROPAGATE, int16], int8]"}, FldName: "RTA_TTL_PROPAGATE"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_VIA, int16], sockaddr_generic]"}, FldName: "RTA_VIA"},
}}},
{Key: StructKey{Name: "rtmsg[AF_INET6]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "rtmsg[AF_INET6]", TypeSize: 12}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "rtm_family", TypeSize: 1}}, Val: 10},
@@ -21991,6 +22004,10 @@ var structDescs_arm64 = []*KeyedStruct{
&UnionType{Key: StructKey{Name: "mac_addr", Dir: 2}, FldName: "sa_data"},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 8}}, IsPad: true},
}}},
+ {Key: StructKey{Name: "sockaddr_generic"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_generic", TypeSize: 16}, Fields: []Type{
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_domain", FldName: "sa_family", TypeSize: 2}}, Vals: []uint64{1, 2, 10, 4, 16, 9, 3, 8, 5, 17}},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "sa_data", TypeSize: 14}, Kind: 1, RangeBegin: 14, RangeEnd: 14},
+ }}},
{Key: StructKey{Name: "sockaddr_generic", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_generic", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_domain", FldName: "sa_family", TypeSize: 2, ArgDir: 2}}, Vals: []uint64{1, 2, 10, 4, 16, 9, 3, 8, 5, 17}},
&BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "sa_data", TypeSize: 14, ArgDir: 2}, Kind: 1, RangeBegin: 14, RangeEnd: 14},
@@ -47999,6 +48016,7 @@ var consts_arm64 = []ConstValue{
{Name: "RTA_MARK", Value: 16},
{Name: "RTA_METRICS", Value: 8},
{Name: "RTA_MULTIPATH", Value: 9},
+ {Name: "RTA_NEWDST", Value: 19},
{Name: "RTA_OIF", Value: 4},
{Name: "RTA_PREF", Value: 20},
{Name: "RTA_PREFSRC", Value: 7},
@@ -48006,6 +48024,7 @@ var consts_arm64 = []ConstValue{
{Name: "RTA_SRC", Value: 2},
{Name: "RTA_TTL_PROPAGATE", Value: 26},
{Name: "RTA_UID", Value: 25},
+ {Name: "RTA_VIA", Value: 18},
{Name: "RTC_AIE_OFF", Value: 28674},
{Name: "RTC_AIE_ON", Value: 28673},
{Name: "RTC_ALM_READ", Value: 2149871624},
@@ -51587,4 +51606,4 @@ var consts_arm64 = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_arm64 = "6bb14aa21820407360f010f256bc72e1c84cfd3e"
+const revision_arm64 = "07809266460e405a130f3ffa31d560bc87fea20f"
diff --git a/sys/linux/gen/ppc64le.go b/sys/linux/gen/ppc64le.go
index b678398b0..142da9dad 100644
--- a/sys/linux/gen/ppc64le.go
+++ b/sys/linux/gen/ppc64le.go
@@ -11238,10 +11238,10 @@ var structDescs_ppc64le = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "moved_len", TypeSize: 8}}},
}}},
{Key: StructKey{Name: "mpls_label"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "mpls_label", TypeSize: 4}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "ttl", TypeSize: 4}, ArgFormat: 1, BitfieldLen: 8, BitfieldMdl: true}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "s", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 8, BitfieldLen: 1, BitfieldMdl: true}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "tc", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 9, BitfieldLen: 3, BitfieldMdl: true}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "label", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 12, BitfieldLen: 20}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "label", TypeSize: 4}, ArgFormat: 1, BitfieldLen: 20, BitfieldMdl: true}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "tc", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 20, BitfieldLen: 3, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32be", FldName: "s", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 23, BitfieldLen: 1, BitfieldMdl: true}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "ttl", TypeSize: 4}, ArgFormat: 1, BitfieldOff: 24, BitfieldLen: 8}},
}}},
{Key: StructKey{Name: "mpls_packet"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "mpls_packet", IsVarlen: true}, Fields: []Type{
&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "labels", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "mpls_label"}}},
@@ -16040,11 +16040,6 @@ var structDescs_ppc64le = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 2},
&ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "payload", TypeSize: 4}},
}, AlignAttr: 4}},
- {Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], array[mpls_label]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_DST, int16], array[mpls_label]]", IsVarlen: true}, Fields: []Type{
- &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
- &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "mpls_label"}}},
- }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], ifindex]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_DST, int16], ifindex]", TypeSize: 8}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
@@ -16060,6 +16055,11 @@ var structDescs_ppc64le = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
&UnionType{Key: StructKey{Name: "ipv6_addr"}, FldName: "payload"},
}, AlignAttr: 4}},
+ {Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], mpls_label]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_DST, int16], mpls_label]", TypeSize: 8}, Fields: []Type{
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
+ &StructType{Key: StructKey{Name: "mpls_label"}, FldName: "payload"},
+ }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[RTA_ENCAP, int16], nl_generic_attr]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_ENCAP, int16], nl_generic_attr]", IsVarlen: true}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 22},
@@ -16106,6 +16106,11 @@ var structDescs_ppc64le = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 9},
&StructType{Key: StructKey{Name: "rtnexthop"}, FldName: "payload"},
}, AlignAttr: 4}},
+ {Key: StructKey{Name: "nlattr_t[const[RTA_NEWDST, int16], array[mpls_label, 32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_NEWDST, int16], array[mpls_label, 32]]", TypeSize: 132}, Fields: []Type{
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 19},
+ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", TypeSize: 128}, Type: &StructType{Key: StructKey{Name: "mpls_label"}}, Kind: 1, RangeBegin: 32, RangeEnd: 32},
+ }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[RTA_OIF, int16], ifindex]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_OIF, int16], ifindex]", TypeSize: 8}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 4},
@@ -16148,6 +16153,11 @@ var structDescs_ppc64le = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 25},
&ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "payload", TypeSize: 4}},
}, AlignAttr: 4}},
+ {Key: StructKey{Name: "nlattr_t[const[RTA_VIA, int16], sockaddr_generic]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[RTA_VIA, int16], sockaddr_generic]", TypeSize: 20}, Fields: []Type{
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 18},
+ &StructType{Key: StructKey{Name: "sockaddr_generic"}, FldName: "payload"},
+ }, AlignAttr: 4}},
{Key: StructKey{Name: "nlattr_t[const[SEG6_ATTR_ALGID, int16], int8]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[SEG6_ATTR_ALGID, int16], int8]", TypeSize: 8}, Fields: []Type{
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 6},
@@ -20489,9 +20499,12 @@ var structDescs_ppc64le = []*KeyedStruct{
&StructType{Key: StructKey{Name: "nlattr_t[const[RTA_MARK, int16], int32]"}, FldName: "RTA_MARK"},
}}},
{Key: StructKey{Name: "rtm_mpls_policy"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "rtm_mpls_policy", IsVarlen: true}, Fields: []Type{
- &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], array[mpls_label]]"}, FldName: "RTA_DST"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_DST, int16], mpls_label]"}, FldName: "RTA_DST"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_MULTIPATH, int16], rtnexthop]"}, FldName: "RTA_MULTIPATH"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_NEWDST, int16], array[mpls_label, 32]]"}, FldName: "RTA_NEWDST"},
&StructType{Key: StructKey{Name: "nlattr_t[const[RTA_OIF, int16], ifindex]"}, FldName: "RTA_OIF"},
&StructType{Key: StructKey{Name: "nlattr_t[const[RTA_TTL_PROPAGATE, int16], int8]"}, FldName: "RTA_TTL_PROPAGATE"},
+ &StructType{Key: StructKey{Name: "nlattr_t[const[RTA_VIA, int16], sockaddr_generic]"}, FldName: "RTA_VIA"},
}}},
{Key: StructKey{Name: "rtmsg[AF_INET6]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "rtmsg[AF_INET6]", TypeSize: 12}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "rtm_family", TypeSize: 1}}, Val: 10},
@@ -21943,6 +21956,10 @@ var structDescs_ppc64le = []*KeyedStruct{
&UnionType{Key: StructKey{Name: "mac_addr", Dir: 2}, FldName: "sa_data"},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 8}}, IsPad: true},
}}},
+ {Key: StructKey{Name: "sockaddr_generic"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_generic", TypeSize: 16}, Fields: []Type{
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_domain", FldName: "sa_family", TypeSize: 2}}, Vals: []uint64{1, 2, 10, 4, 16, 9, 3, 8, 5, 17}},
+ &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "sa_data", TypeSize: 14}, Kind: 1, RangeBegin: 14, RangeEnd: 14},
+ }}},
{Key: StructKey{Name: "sockaddr_generic", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_generic", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_domain", FldName: "sa_family", TypeSize: 2, ArgDir: 2}}, Vals: []uint64{1, 2, 10, 4, 16, 9, 3, 8, 5, 17}},
&BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "sa_data", TypeSize: 14, ArgDir: 2}, Kind: 1, RangeBegin: 14, RangeEnd: 14},
@@ -47994,6 +48011,7 @@ var consts_ppc64le = []ConstValue{
{Name: "RTA_MARK", Value: 16},
{Name: "RTA_METRICS", Value: 8},
{Name: "RTA_MULTIPATH", Value: 9},
+ {Name: "RTA_NEWDST", Value: 19},
{Name: "RTA_OIF", Value: 4},
{Name: "RTA_PREF", Value: 20},
{Name: "RTA_PREFSRC", Value: 7},
@@ -48001,6 +48019,7 @@ var consts_ppc64le = []ConstValue{
{Name: "RTA_SRC", Value: 2},
{Name: "RTA_TTL_PROPAGATE", Value: 26},
{Name: "RTA_UID", Value: 25},
+ {Name: "RTA_VIA", Value: 18},
{Name: "RTC_AIE_OFF", Value: 536899586},
{Name: "RTC_AIE_ON", Value: 536899585},
{Name: "RTC_ALM_READ", Value: 1076129800},
@@ -51554,4 +51573,4 @@ var consts_ppc64le = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_ppc64le = "639f7473fa165cbe9436142cae3f78b2b627c06b"
+const revision_ppc64le = "da187a5c325188bfc6a1c7bd0381c52ce50415c1"
diff --git a/sys/linux/socket_netlink_route.txt b/sys/linux/socket_netlink_route.txt
index 9eb3d9978..3b25fc362 100644
--- a/sys/linux/socket_netlink_route.txt
+++ b/sys/linux/socket_netlink_route.txt
@@ -465,9 +465,12 @@ rtm_ipv6_policy [
] [varlen]
rtm_mpls_policy [
- RTA_DST nlattr[RTA_DST, array[mpls_label]]
+ RTA_DST nlattr[RTA_DST, mpls_label]
+ RTA_MULTIPATH nlattr[RTA_MULTIPATH, rtnexthop]
+ RTA_NEWDST nlattr[RTA_NEWDST, array[mpls_label, 32]]
RTA_OIF nlattr[RTA_OIF, ifindex]
RTA_TTL_PROPAGATE nlattr[RTA_TTL_PROPAGATE, int8]
+ RTA_VIA nlattr[RTA_VIA, sockaddr_generic]
] [varlen]
type fib_rule_hdr[FAMILY] {
diff --git a/sys/linux/socket_netlink_route_386.const b/sys/linux/socket_netlink_route_386.const
index 34c6829a8..252b0514c 100644
--- a/sys/linux/socket_netlink_route_386.const
+++ b/sys/linux/socket_netlink_route_386.const
@@ -357,6 +357,7 @@ RTA_GATEWAY = 5
RTA_MARK = 16
RTA_METRICS = 8
RTA_MULTIPATH = 9
+RTA_NEWDST = 19
RTA_OIF = 4
RTA_PREF = 20
RTA_PREFSRC = 7
@@ -364,6 +365,7 @@ RTA_PRIORITY = 6
RTA_SRC = 2
RTA_TTL_PROPAGATE = 26
RTA_UID = 25
+RTA_VIA = 18
RTM_DELADDR = 21
RTM_DELLINK = 17
RTM_DELNEIGH = 29
diff --git a/sys/linux/socket_netlink_route_amd64.const b/sys/linux/socket_netlink_route_amd64.const
index 2422eaceb..96e614671 100644
--- a/sys/linux/socket_netlink_route_amd64.const
+++ b/sys/linux/socket_netlink_route_amd64.const
@@ -357,6 +357,7 @@ RTA_GATEWAY = 5
RTA_MARK = 16
RTA_METRICS = 8
RTA_MULTIPATH = 9
+RTA_NEWDST = 19
RTA_OIF = 4
RTA_PREF = 20
RTA_PREFSRC = 7
@@ -364,6 +365,7 @@ RTA_PRIORITY = 6
RTA_SRC = 2
RTA_TTL_PROPAGATE = 26
RTA_UID = 25
+RTA_VIA = 18
RTM_DELADDR = 21
RTM_DELLINK = 17
RTM_DELNEIGH = 29
diff --git a/sys/linux/socket_netlink_route_arm.const b/sys/linux/socket_netlink_route_arm.const
index 6cb8989d0..7c7ef6fec 100644
--- a/sys/linux/socket_netlink_route_arm.const
+++ b/sys/linux/socket_netlink_route_arm.const
@@ -357,6 +357,7 @@ RTA_GATEWAY = 5
RTA_MARK = 16
RTA_METRICS = 8
RTA_MULTIPATH = 9
+RTA_NEWDST = 19
RTA_OIF = 4
RTA_PREF = 20
RTA_PREFSRC = 7
@@ -364,6 +365,7 @@ RTA_PRIORITY = 6
RTA_SRC = 2
RTA_TTL_PROPAGATE = 26
RTA_UID = 25
+RTA_VIA = 18
RTM_DELADDR = 21
RTM_DELLINK = 17
RTM_DELNEIGH = 29
diff --git a/sys/linux/socket_netlink_route_arm64.const b/sys/linux/socket_netlink_route_arm64.const
index 8346d6c88..fa61a028c 100644
--- a/sys/linux/socket_netlink_route_arm64.const
+++ b/sys/linux/socket_netlink_route_arm64.const
@@ -357,6 +357,7 @@ RTA_GATEWAY = 5
RTA_MARK = 16
RTA_METRICS = 8
RTA_MULTIPATH = 9
+RTA_NEWDST = 19
RTA_OIF = 4
RTA_PREF = 20
RTA_PREFSRC = 7
@@ -364,6 +365,7 @@ RTA_PRIORITY = 6
RTA_SRC = 2
RTA_TTL_PROPAGATE = 26
RTA_UID = 25
+RTA_VIA = 18
RTM_DELADDR = 21
RTM_DELLINK = 17
RTM_DELNEIGH = 29
diff --git a/sys/linux/socket_netlink_route_ppc64le.const b/sys/linux/socket_netlink_route_ppc64le.const
index 7f23f42fe..39b0a263c 100644
--- a/sys/linux/socket_netlink_route_ppc64le.const
+++ b/sys/linux/socket_netlink_route_ppc64le.const
@@ -357,6 +357,7 @@ RTA_GATEWAY = 5
RTA_MARK = 16
RTA_METRICS = 8
RTA_MULTIPATH = 9
+RTA_NEWDST = 19
RTA_OIF = 4
RTA_PREF = 20
RTA_PREFSRC = 7
@@ -364,6 +365,7 @@ RTA_PRIORITY = 6
RTA_SRC = 2
RTA_TTL_PROPAGATE = 26
RTA_UID = 25
+RTA_VIA = 18
RTM_DELADDR = 21
RTM_DELLINK = 17
RTM_DELNEIGH = 29
diff --git a/sys/linux/vnet.txt b/sys/linux/vnet.txt
index 636c1f0fc..b0038ff92 100644
--- a/sys/linux/vnet.txt
+++ b/sys/linux/vnet.txt
@@ -1424,12 +1424,11 @@ mpls_packet {
payload mpls_payload
} [packed]
-# TODO: is it this ordering or reverse?
mpls_label {
- ttl int32be:8
- s int32be:1
- tc int32be:3
label int32be:20
+ tc const[0, int32be:3]
+ s int32be:1
+ ttl const[0, int32be:8]
}
mpls_payload [