doc/netlink/specs: Add sub-message type to rt_link family

Start using sub-message selectors in the rt_link spec for the
link-specific 'data' and 'slave-data' attributes.

Signed-off-by: Donald Hunter <donald.hunter@gmail.com>
Link: https://lore.kernel.org/r/20231215093720.18774-7-donald.hunter@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Donald Hunter 2023-12-15 09:37:13 +00:00 committed by Jakub Kicinski
parent 8b6811d966
commit 077b6022d2
1 changed files with 432 additions and 4 deletions

View File

@ -82,6 +82,18 @@ definitions:
-
name: ifi-change
type: u32
-
name: ifla-bridge-id
type: struct
members:
-
name: prio
type: u16
-
name: addr
type: binary
len: 6
display-hint: mac
-
name: ifla-cacheinfo
type: struct
@ -966,8 +978,9 @@ attribute-sets:
type: string
-
name: data
type: binary
# kind specific nest, e.g. linkinfo-bridge-attrs
type: sub-message
sub-message: linkinfo-data-msg
selector: kind
-
name: xstats
type: binary
@ -976,10 +989,12 @@ attribute-sets:
type: string
-
name: slave-data
type: binary
# kind specific nest
type: sub-message
sub-message: linkinfo-member-data-msg
selector: slave-kind
-
name: linkinfo-bridge-attrs
name-prefix: ifla-br-
attributes:
-
name: forward-delay
@ -1011,9 +1026,11 @@ attribute-sets:
-
name: root-id
type: binary
struct: ifla-bridge-id
-
name: bridge-id
type: binary
struct: ifla-bridge-id
-
name: root-port
type: u16
@ -1041,6 +1058,7 @@ attribute-sets:
-
name: group-addr
type: binary
display-hint: mac
-
name: fdb-flush
type: binary
@ -1123,6 +1141,376 @@ attribute-sets:
-
name: mcast-querier-state
type: binary
-
name: linkinfo-brport-attrs
name-prefix: ifla-brport-
attributes:
-
name: state
type: u8
-
name: priority
type: u16
-
name: cost
type: u32
-
name: mode
type: flag
-
name: guard
type: flag
-
name: protect
type: flag
-
name: fast-leave
type: flag
-
name: learning
type: flag
-
name: unicast-flood
type: flag
-
name: proxyarp
type: flag
-
name: learning-sync
type: flag
-
name: proxyarp-wifi
type: flag
-
name: root-id
type: binary
struct: ifla-bridge-id
-
name: bridge-id
type: binary
struct: ifla-bridge-id
-
name: designated-port
type: u16
-
name: designated-cost
type: u16
-
name: id
type: u16
-
name: "no"
type: u16
-
name: topology-change-ack
type: u8
-
name: config-pending
type: u8
-
name: message-age-timer
type: u64
-
name: forward-delay-timer
type: u64
-
name: hold-timer
type: u64
-
name: flush
type: flag
-
name: multicast-router
type: u8
-
name: pad
type: pad
-
name: mcast-flood
type: flag
-
name: mcast-to-ucast
type: flag
-
name: vlan-tunnel
type: flag
-
name: bcast-flood
type: flag
-
name: group-fwd-mask
type: u16
-
name: neigh-suppress
type: flag
-
name: isolated
type: flag
-
name: backup-port
type: u32
-
name: mrp-ring-open
type: flag
-
name: mrp-in-open
type: flag
-
name: mcast-eht-hosts-limit
type: u32
-
name: mcast-eht-hosts-cnt
type: u32
-
name: locked
type: flag
-
name: mab
type: flag
-
name: mcast-n-groups
type: u32
-
name: mcast-max-groups
type: u32
-
name: neigh-vlan-suppress
type: flag
-
name: backup-nhid
type: u32
-
name: linkinfo-gre-attrs
name-prefix: ifla-gre-
attributes:
-
name: link
type: u32
-
name: iflags
type: u16
-
name: oflags
type: u16
-
name: ikey
type: u32
-
name: okey
type: u32
-
name: local
type: binary
display-hint: ipv4
-
name: remote
type: binary
display-hint: ipv4
-
name: ttl
type: u8
-
name: tos
type: u8
-
name: pmtudisc
type: u8
-
name: encap-limit
type: u32
-
name: flowinfo
type: u32
-
name: flags
type: u32
-
name: encap-type
type: u16
-
name: encap-flags
type: u16
-
name: encap-sport
type: u16
-
name: encap-dport
type: u16
-
name: collect-metadata
type: flag
-
name: ignore-df
type: u8
-
name: fwmark
type: u32
-
name: erspan-index
type: u32
-
name: erspan-ver
type: u8
-
name: erspan-dir
type: u8
-
name: erspan-hwid
type: u16
-
name: linkinfo-geneve-attrs
name-prefix: ifla-geneve-
attributes:
-
name: id
type: u32
-
name: remote
type: binary
display-hint: ipv4
-
name: ttl
type: u8
-
name: tos
type: u8
-
name: port
type: u16
-
name: collect-metadata
type: flag
-
name: remote6
type: binary
display-hint: ipv6
-
name: udp-csum
type: u8
-
name: udp-zero-csum6-tx
type: u8
-
name: udp-zero-csum6-rx
type: u8
-
name: label
type: u32
-
name: ttl-inherit
type: u8
-
name: df
type: u8
-
name: inner-proto-inherit
type: flag
-
name: linkinfo-iptun-attrs
name-prefix: ifla-iptun-
attributes:
-
name: link
type: u32
-
name: local
type: binary
display-hint: ipv4
-
name: remote
type: binary
display-hint: ipv4
-
name: ttl
type: u8
-
name: tos
type: u8
-
name: encap-limit
type: u8
-
name: flowinfo
type: u32
-
name: flags
type: u16
-
name: proto
type: u8
-
name: pmtudisc
type: u8
-
name: 6rd-prefix
type: binary
display-hint: ipv6
-
name: 6rd-relay-prefix
type: binary
display-hint: ipv4
-
name: 6rd-prefixlen
type: u16
-
name: 6rd-relay-prefixlen
type: u16
-
name: encap-type
type: u16
-
name: encap-flags
type: u16
-
name: encap-sport
type: u16
-
name: encap-dport
type: u16
-
name: collect-metadata
type: flag
-
name: fwmark
type: u32
-
name: linkinfo-tun-attrs
name-prefix: ifla-tun-
attributes:
-
name: owner
type: u32
-
name: group
type: u32
-
name: type
type: u8
-
name: pi
type: u8
-
name: vnet-hdr
type: u8
-
name: persist
type: u8
-
name: multi-queue
type: u8
-
name: num-queues
type: u32
-
name: num-disabled-queues
type: u32
-
name: linkinfo-vrf-attrs
name-prefix: ifla-vrf-
attributes:
-
name: table
type: u32
-
name: xdp-attrs
attributes:
@ -1241,6 +1629,46 @@ attribute-sets:
name: used
type: u8
sub-messages:
-
name: linkinfo-data-msg
formats:
-
value: bridge
attribute-set: linkinfo-bridge-attrs
-
value: erspan
attribute-set: linkinfo-gre-attrs
-
value: gre
attribute-set: linkinfo-gre-attrs
-
value: gretap
attribute-set: linkinfo-gre-attrs
-
value: geneve
attribute-set: linkinfo-geneve-attrs
-
value: ipip
attribute-set: linkinfo-iptun-attrs
-
value: sit
attribute-set: linkinfo-iptun-attrs
-
value: tun
attribute-set: linkinfo-tun-attrs
-
value: vrf
attribute-set: linkinfo-vrf-attrs
-
name: linkinfo-member-data-msg
formats:
-
value: bridge
attribute-set: linkinfo-brport-attrs
-
value: bond
operations:
enum-model: directional
list: