--- /dev/null
+# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
+
+name: rt-addr
+protocol: netlink-raw
+protonum: 0
+
+doc:
+ Address configuration over rtnetlink.
+
+definitions:
+ -
+ name: ifaddrmsg
+ type: struct
+ members:
+ -
+ name: ifa-family
+ type: u8
+ -
+ name: ifa-prefixlen
+ type: u8
+ -
+ name: ifa-flags
+ type: u8
+ enum: ifa-flags
+ enum-as-flags: true
+ -
+ name: ifa-scope
+ type: u8
+ -
+ name: ifa-index
+ type: u32
+ -
+ name: ifa-cacheinfo
+ type: struct
+ members:
+ -
+ name: ifa-prefered
+ type: u32
+ -
+ name: ifa-valid
+ type: u32
+ -
+ name: cstamp
+ type: u32
+ -
+ name: tstamp
+ type: u32
+
+ -
+ name: ifa-flags
+ type: flags
+ entries:
+ -
+ name: secondary
+ -
+ name: nodad
+ -
+ name: optimistic
+ -
+ name: dadfailed
+ -
+ name: homeaddress
+ -
+ name: deprecated
+ -
+ name: tentative
+ -
+ name: permanent
+ -
+ name: managetempaddr
+ -
+ name: noprefixroute
+ -
+ name: mcautojoin
+ -
+ name: stable-privacy
+
+attribute-sets:
+ -
+ name: addr-attrs
+ name-prefix: ifa-
+ attributes:
+ -
+ name: address
+ type: binary
+ display-hint: ipv4
+ -
+ name: local
+ type: binary
+ display-hint: ipv4
+ -
+ name: label
+ type: string
+ -
+ name: broadcast
+ type: binary
+ display-hint: ipv4
+ -
+ name: anycast
+ type: binary
+ -
+ name: cacheinfo
+ type: binary
+ struct: ifa-cacheinfo
+ -
+ name: multicast
+ type: binary
+ -
+ name: flags
+ type: u32
+ enum: ifa-flags
+ enum-as-flags: true
+ -
+ name: rt-priority
+ type: u32
+ -
+ name: target-netnsid
+ type: binary
+ -
+ name: proto
+ type: u8
+
+
+operations:
+ fixed-header: ifaddrmsg
+ enum-model: directional
+ list:
+ -
+ name: newaddr
+ doc: Add new address
+ attribute-set: addr-attrs
+ do:
+ request:
+ value: 20
+ attributes: &ifaddr-all
+ - ifa-family
+ - ifa-flags
+ - ifa-prefixlen
+ - ifa-scope
+ - ifa-index
+ - address
+ - label
+ - local
+ - cacheinfo
+ -
+ name: deladdr
+ doc: Remove address
+ attribute-set: addr-attrs
+ do:
+ request:
+ value: 21
+ attributes:
+ - ifa-family
+ - ifa-flags
+ - ifa-prefixlen
+ - ifa-scope
+ - ifa-index
+ - address
+ - local
+ -
+ name: getaddr
+ doc: Dump address information.
+ attribute-set: addr-attrs
+ dump:
+ request:
+ value: 22
+ attributes:
+ - ifa-index
+ reply:
+ value: 20
+ attributes: *ifaddr-all
+ -
+ name: getmulticast
+ doc: Get / dump IPv4/IPv6 multicast addresses.
+ attribute-set: addr-attrs
+ fixed-header: ifaddrmsg
+ do:
+ request:
+ value: 58
+ attributes:
+ - ifa-family
+ - ifa-index
+ reply:
+ value: 58
+ attributes: &mcaddr-attrs
+ - multicast
+ - cacheinfo
+ dump:
+ request:
+ value: 58
+ attributes:
+ - ifa-family
+ reply:
+ value: 58
+ attributes: *mcaddr-attrs
+
+mcast-groups:
+ list:
+ -
+ name: rtnlgrp-ipv4-ifaddr
+ value: 5
+ -
+ name: rtnlgrp-ipv6-ifaddr
+ value: 9
--- /dev/null
+# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
+
+name: rt-link
+protocol: netlink-raw
+protonum: 0
+
+doc:
+ Link configuration over rtnetlink.
+
+definitions:
+ -
+ name: ifinfo-flags
+ type: flags
+ entries:
+ -
+ name: up
+ -
+ name: broadcast
+ -
+ name: debug
+ -
+ name: loopback
+ -
+ name: point-to-point
+ -
+ name: no-trailers
+ -
+ name: running
+ -
+ name: no-arp
+ -
+ name: promisc
+ -
+ name: all-multi
+ -
+ name: master
+ -
+ name: slave
+ -
+ name: multicast
+ -
+ name: portsel
+ -
+ name: auto-media
+ -
+ name: dynamic
+ -
+ name: lower-up
+ -
+ name: dormant
+ -
+ name: echo
+ -
+ name: vlan-protocols
+ type: enum
+ entries:
+ -
+ name: 8021q
+ value: 33024
+ -
+ name: 8021ad
+ value: 34984
+ -
+ name: rtgenmsg
+ type: struct
+ members:
+ -
+ name: family
+ type: u8
+ -
+ name: ifinfomsg
+ type: struct
+ members:
+ -
+ name: ifi-family
+ type: u8
+ -
+ name: pad
+ type: pad
+ len: 1
+ -
+ name: ifi-type
+ type: u16
+ -
+ name: ifi-index
+ type: s32
+ -
+ name: ifi-flags
+ type: u32
+ enum: ifinfo-flags
+ enum-as-flags: true
+ -
+ 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
+ members:
+ -
+ name: max-reasm-len
+ type: u32
+ -
+ name: tstamp
+ type: u32
+ -
+ name: reachable-time
+ type: s32
+ -
+ name: retrans-time
+ type: u32
+ -
+ name: rtnl-link-stats
+ type: struct
+ members:
+ -
+ name: rx-packets
+ type: u32
+ -
+ name: tx-packets
+ type: u32
+ -
+ name: rx-bytes
+ type: u32
+ -
+ name: tx-bytes
+ type: u32
+ -
+ name: rx-errors
+ type: u32
+ -
+ name: tx-errors
+ type: u32
+ -
+ name: rx-dropped
+ type: u32
+ -
+ name: tx-dropped
+ type: u32
+ -
+ name: multicast
+ type: u32
+ -
+ name: collisions
+ type: u32
+ -
+ name: rx-length-errors
+ type: u32
+ -
+ name: rx-over-errors
+ type: u32
+ -
+ name: rx-crc-errors
+ type: u32
+ -
+ name: rx-frame-errors
+ type: u32
+ -
+ name: rx-fifo-errors
+ type: u32
+ -
+ name: rx-missed-errors
+ type: u32
+ -
+ name: tx-aborted-errors
+ type: u32
+ -
+ name: tx-carrier-errors
+ type: u32
+ -
+ name: tx-fifo-errors
+ type: u32
+ -
+ name: tx-heartbeat-errors
+ type: u32
+ -
+ name: tx-window-errors
+ type: u32
+ -
+ name: rx-compressed
+ type: u32
+ -
+ name: tx-compressed
+ type: u32
+ -
+ name: rx-nohandler
+ type: u32
+ -
+ name: rtnl-link-stats64
+ type: struct
+ members:
+ -
+ name: rx-packets
+ type: u64
+ -
+ name: tx-packets
+ type: u64
+ -
+ name: rx-bytes
+ type: u64
+ -
+ name: tx-bytes
+ type: u64
+ -
+ name: rx-errors
+ type: u64
+ -
+ name: tx-errors
+ type: u64
+ -
+ name: rx-dropped
+ type: u64
+ -
+ name: tx-dropped
+ type: u64
+ -
+ name: multicast
+ type: u64
+ -
+ name: collisions
+ type: u64
+ -
+ name: rx-length-errors
+ type: u64
+ -
+ name: rx-over-errors
+ type: u64
+ -
+ name: rx-crc-errors
+ type: u64
+ -
+ name: rx-frame-errors
+ type: u64
+ -
+ name: rx-fifo-errors
+ type: u64
+ -
+ name: rx-missed-errors
+ type: u64
+ -
+ name: tx-aborted-errors
+ type: u64
+ -
+ name: tx-carrier-errors
+ type: u64
+ -
+ name: tx-fifo-errors
+ type: u64
+ -
+ name: tx-heartbeat-errors
+ type: u64
+ -
+ name: tx-window-errors
+ type: u64
+ -
+ name: rx-compressed
+ type: u64
+ -
+ name: tx-compressed
+ type: u64
+ -
+ name: rx-nohandler
+ type: u64
+ -
+ name: rx-otherhost-dropped
+ type: u64
+ -
+ name: rtnl-link-ifmap
+ type: struct
+ members:
+ -
+ name: mem-start
+ type: u64
+ -
+ name: mem-end
+ type: u64
+ -
+ name: base-addr
+ type: u64
+ -
+ name: irq
+ type: u16
+ -
+ name: dma
+ type: u8
+ -
+ name: port
+ type: u8
+ -
+ name: ipv4-devconf
+ type: struct
+ members:
+ -
+ name: forwarding
+ type: u32
+ -
+ name: mc-forwarding
+ type: u32
+ -
+ name: proxy-arp
+ type: u32
+ -
+ name: accept-redirects
+ type: u32
+ -
+ name: secure-redirects
+ type: u32
+ -
+ name: send-redirects
+ type: u32
+ -
+ name: shared-media
+ type: u32
+ -
+ name: rp-filter
+ type: u32
+ -
+ name: accept-source-route
+ type: u32
+ -
+ name: bootp-relay
+ type: u32
+ -
+ name: log-martians
+ type: u32
+ -
+ name: tag
+ type: u32
+ -
+ name: arpfilter
+ type: u32
+ -
+ name: medium-id
+ type: u32
+ -
+ name: noxfrm
+ type: u32
+ -
+ name: nopolicy
+ type: u32
+ -
+ name: force-igmp-version
+ type: u32
+ -
+ name: arp-announce
+ type: u32
+ -
+ name: arp-ignore
+ type: u32
+ -
+ name: promote-secondaries
+ type: u32
+ -
+ name: arp-accept
+ type: u32
+ -
+ name: arp-notify
+ type: u32
+ -
+ name: accept-local
+ type: u32
+ -
+ name: src-vmark
+ type: u32
+ -
+ name: proxy-arp-pvlan
+ type: u32
+ -
+ name: route-localnet
+ type: u32
+ -
+ name: igmpv2-unsolicited-report-interval
+ type: u32
+ -
+ name: igmpv3-unsolicited-report-interval
+ type: u32
+ -
+ name: ignore-routes-with-linkdown
+ type: u32
+ -
+ name: drop-unicast-in-l2-multicast
+ type: u32
+ -
+ name: drop-gratuitous-arp
+ type: u32
+ -
+ name: bc-forwarding
+ type: u32
+ -
+ name: arp-evict-nocarrier
+ type: u32
+ -
+ name: ipv6-devconf
+ type: struct
+ members:
+ -
+ name: forwarding
+ type: u32
+ -
+ name: hoplimit
+ type: u32
+ -
+ name: mtu6
+ type: u32
+ -
+ name: accept-ra
+ type: u32
+ -
+ name: accept-redirects
+ type: u32
+ -
+ name: autoconf
+ type: u32
+ -
+ name: dad-transmits
+ type: u32
+ -
+ name: rtr-solicits
+ type: u32
+ -
+ name: rtr-solicit-interval
+ type: u32
+ -
+ name: rtr-solicit-delay
+ type: u32
+ -
+ name: use-tempaddr
+ type: u32
+ -
+ name: temp-valid-lft
+ type: u32
+ -
+ name: temp-prefered-lft
+ type: u32
+ -
+ name: regen-max-retry
+ type: u32
+ -
+ name: max-desync-factor
+ type: u32
+ -
+ name: max-addresses
+ type: u32
+ -
+ name: force-mld-version
+ type: u32
+ -
+ name: accept-ra-defrtr
+ type: u32
+ -
+ name: accept-ra-pinfo
+ type: u32
+ -
+ name: accept-ra-rtr-pref
+ type: u32
+ -
+ name: rtr-probe-interval
+ type: u32
+ -
+ name: accept-ra-rt-info-max-plen
+ type: u32
+ -
+ name: proxy-ndp
+ type: u32
+ -
+ name: optimistic-dad
+ type: u32
+ -
+ name: accept-source-route
+ type: u32
+ -
+ name: mc-forwarding
+ type: u32
+ -
+ name: disable-ipv6
+ type: u32
+ -
+ name: accept-dad
+ type: u32
+ -
+ name: force-tllao
+ type: u32
+ -
+ name: ndisc-notify
+ type: u32
+ -
+ name: mldv1-unsolicited-report-interval
+ type: u32
+ -
+ name: mldv2-unsolicited-report-interval
+ type: u32
+ -
+ name: suppress-frag-ndisc
+ type: u32
+ -
+ name: accept-ra-from-local
+ type: u32
+ -
+ name: use-optimistic
+ type: u32
+ -
+ name: accept-ra-mtu
+ type: u32
+ -
+ name: stable-secret
+ type: u32
+ -
+ name: use-oif-addrs-only
+ type: u32
+ -
+ name: accept-ra-min-hop-limit
+ type: u32
+ -
+ name: ignore-routes-with-linkdown
+ type: u32
+ -
+ name: drop-unicast-in-l2-multicast
+ type: u32
+ -
+ name: drop-unsolicited-na
+ type: u32
+ -
+ name: keep-addr-on-down
+ type: u32
+ -
+ name: rtr-solicit-max-interval
+ type: u32
+ -
+ name: seg6-enabled
+ type: u32
+ -
+ name: seg6-require-hmac
+ type: u32
+ -
+ name: enhanced-dad
+ type: u32
+ -
+ name: addr-gen-mode
+ type: u8
+ -
+ name: disable-policy
+ type: u32
+ -
+ name: accept-ra-rt-info-min-plen
+ type: u32
+ -
+ name: ndisc-tclass
+ type: u32
+ -
+ name: rpl-seg-enabled
+ type: u32
+ -
+ name: ra-defrtr-metric
+ type: u32
+ -
+ name: ioam6-enabled
+ type: u32
+ -
+ name: ioam6-id
+ type: u32
+ -
+ name: ioam6-id-wide
+ type: u32
+ -
+ name: ndisc-evict-nocarrier
+ type: u32
+ -
+ name: accept-untracked-na
+ type: u32
+ -
+ name: ifla-icmp6-stats
+ type: struct
+ members:
+ -
+ name: inmsgs
+ type: u64
+ -
+ name: inerrors
+ type: u64
+ -
+ name: outmsgs
+ type: u64
+ -
+ name: outerrors
+ type: u64
+ -
+ name: csumerrors
+ type: u64
+ -
+ name: ratelimithost
+ type: u64
+ -
+ name: ifla-inet6-stats
+ type: struct
+ members:
+ -
+ name: inpkts
+ type: u64
+ -
+ name: inoctets
+ type: u64
+ -
+ name: indelivers
+ type: u64
+ -
+ name: outforwdatagrams
+ type: u64
+ -
+ name: outpkts
+ type: u64
+ -
+ name: outoctets
+ type: u64
+ -
+ name: inhdrerrors
+ type: u64
+ -
+ name: intoobigerrors
+ type: u64
+ -
+ name: innoroutes
+ type: u64
+ -
+ name: inaddrerrors
+ type: u64
+ -
+ name: inunknownprotos
+ type: u64
+ -
+ name: intruncatedpkts
+ type: u64
+ -
+ name: indiscards
+ type: u64
+ -
+ name: outdiscards
+ type: u64
+ -
+ name: outnoroutes
+ type: u64
+ -
+ name: reasmtimeout
+ type: u64
+ -
+ name: reasmreqds
+ type: u64
+ -
+ name: reasmoks
+ type: u64
+ -
+ name: reasmfails
+ type: u64
+ -
+ name: fragoks
+ type: u64
+ -
+ name: fragfails
+ type: u64
+ -
+ name: fragcreates
+ type: u64
+ -
+ name: inmcastpkts
+ type: u64
+ -
+ name: outmcastpkts
+ type: u64
+ -
+ name: inbcastpkts
+ type: u64
+ -
+ name: outbcastpkts
+ type: u64
+ -
+ name: inmcastoctets
+ type: u64
+ -
+ name: outmcastoctets
+ type: u64
+ -
+ name: inbcastoctets
+ type: u64
+ -
+ name: outbcastoctets
+ type: u64
+ -
+ name: csumerrors
+ type: u64
+ -
+ name: noectpkts
+ type: u64
+ -
+ name: ect1-pkts
+ type: u64
+ -
+ name: ect0-pkts
+ type: u64
+ -
+ name: cepkts
+ type: u64
+ -
+ name: reasm-overlaps
+ type: u64
+ - name: br-boolopt-multi
+ type: struct
+ members:
+ -
+ name: optval
+ type: u32
+ -
+ name: optmask
+ type: u32
+ -
+ name: if_stats_msg
+ type: struct
+ members:
+ -
+ name: family
+ type: u8
+ -
+ name: pad
+ type: pad
+ len: 3
+ -
+ name: ifindex
+ type: u32
+ -
+ name: filter-mask
+ type: u32
+ -
+ name: ifla-vlan-flags
+ type: struct
+ members:
+ -
+ name: flags
+ type: u32
+ enum: vlan-flags
+ enum-as-flags: true
+ -
+ name: mask
+ type: u32
+ display-hint: hex
+ -
+ name: vlan-flags
+ type: flags
+ entries:
+ - reorder-hdr
+ - gvrp
+ - loose-binding
+ - mvrp
+ - bridge-binding
+ -
+ name: ifla-vlan-qos-mapping
+ type: struct
+ members:
+ -
+ name: from
+ type: u32
+ -
+ name: to
+ type: u32
+ -
+ name: ifla-geneve-port-range
+ type: struct
+ members:
+ -
+ name: low
+ type: u16
+ byte-order: big-endian
+ -
+ name: high
+ type: u16
+ byte-order: big-endian
+ -
+ name: ifla-vf-mac
+ type: struct
+ members:
+ -
+ name: vf
+ type: u32
+ -
+ name: mac
+ type: binary
+ len: 32
+ -
+ name: ifla-vf-vlan
+ type: struct
+ members:
+ -
+ name: vf
+ type: u32
+ -
+ name: vlan
+ type: u32
+ -
+ name: qos
+ type: u32
+ -
+ name: ifla-vf-tx-rate
+ type: struct
+ members:
+ -
+ name: vf
+ type: u32
+ -
+ name: rate
+ type: u32
+ -
+ name: ifla-vf-spoofchk
+ type: struct
+ members:
+ -
+ name: vf
+ type: u32
+ -
+ name: setting
+ type: u32
+ -
+ name: ifla-vf-link-state
+ type: struct
+ members:
+ -
+ name: vf
+ type: u32
+ -
+ name: link-state
+ type: u32
+ enum: ifla-vf-link-state-enum
+ -
+ name: ifla-vf-link-state-enum
+ type: enum
+ entries:
+ - auto
+ - enable
+ - disable
+ -
+ name: ifla-vf-rate
+ type: struct
+ members:
+ -
+ name: vf
+ type: u32
+ -
+ name: min-tx-rate
+ type: u32
+ -
+ name: max-tx-rate
+ type: u32
+ -
+ name: ifla-vf-rss-query-en
+ type: struct
+ members:
+ -
+ name: vf
+ type: u32
+ -
+ name: setting
+ type: u32
+ -
+ name: ifla-vf-trust
+ type: struct
+ members:
+ -
+ name: vf
+ type: u32
+ -
+ name: setting
+ type: u32
+ -
+ name: ifla-vf-guid
+ type: struct
+ members:
+ -
+ name: vf
+ type: u32
+ -
+ name: guid
+ type: u64
+ -
+ name: ifla-vf-vlan-info
+ type: struct
+ members:
+ -
+ name: vf
+ type: u32
+ -
+ name: vlan
+ type: u32
+ -
+ name: qos
+ type: u32
+ -
+ name: vlan-proto
+ type: u32
+ -
+ name: rtext-filter
+ type: flags
+ entries:
+ - vf
+ - brvlan
+ - brvlan-compressed
+ - skip-stats
+ - mrp
+ - cfm-config
+ - cfm-status
+ - mst
+ -
+ name: netkit-policy
+ type: enum
+ entries:
+ -
+ name: forward
+ value: 0
+ -
+ name: blackhole
+ value: 2
+ -
+ name: netkit-mode
+ type: enum
+ entries:
+ - name: l2
+ - name: l3
+
+ -
+ name: netkit-scrub
+ type: enum
+ entries:
+ - name: none
+ - name: default
+
+attribute-sets:
+ -
+ name: link-attrs
+ name-prefix: ifla-
+ attributes:
+ -
+ name: address
+ type: binary
+ display-hint: mac
+ -
+ name: broadcast
+ type: binary
+ display-hint: mac
+ -
+ name: ifname
+ type: string
+ -
+ name: mtu
+ type: u32
+ -
+ name: link
+ type: u32
+ -
+ name: qdisc
+ type: string
+ -
+ name: stats
+ type: binary
+ struct: rtnl-link-stats
+ -
+ name: cost
+ type: string
+ -
+ name: priority
+ type: string
+ -
+ name: master
+ type: u32
+ -
+ name: wireless
+ type: string
+ -
+ name: protinfo
+ type: string
+ -
+ name: txqlen
+ type: u32
+ -
+ name: map
+ type: binary
+ struct: rtnl-link-ifmap
+ -
+ name: weight
+ type: u32
+ -
+ name: operstate
+ type: u8
+ -
+ name: linkmode
+ type: u8
+ -
+ name: linkinfo
+ type: nest
+ nested-attributes: linkinfo-attrs
+ -
+ name: net-ns-pid
+ type: u32
+ -
+ name: ifalias
+ type: string
+ -
+ name: num-vf
+ type: u32
+ -
+ name: vfinfo-list
+ type: nest
+ nested-attributes: vfinfo-list-attrs
+ -
+ name: stats64
+ type: binary
+ struct: rtnl-link-stats64
+ -
+ name: vf-ports
+ type: nest
+ nested-attributes: vf-ports-attrs
+ -
+ name: port-self
+ type: nest
+ nested-attributes: port-self-attrs
+ -
+ name: af-spec
+ type: nest
+ nested-attributes: af-spec-attrs
+ -
+ name: group
+ type: u32
+ -
+ name: net-ns-fd
+ type: u32
+ -
+ name: ext-mask
+ type: u32
+ enum: rtext-filter
+ enum-as-flags: true
+ -
+ name: promiscuity
+ type: u32
+ -
+ name: num-tx-queues
+ type: u32
+ -
+ name: num-rx-queues
+ type: u32
+ -
+ name: carrier
+ type: u8
+ -
+ name: phys-port-id
+ type: binary
+ -
+ name: carrier-changes
+ type: u32
+ -
+ name: phys-switch-id
+ type: binary
+ -
+ name: link-netnsid
+ type: s32
+ -
+ name: phys-port-name
+ type: string
+ -
+ name: proto-down
+ type: u8
+ -
+ name: gso-max-segs
+ type: u32
+ -
+ name: gso-max-size
+ type: u32
+ -
+ name: pad
+ type: pad
+ -
+ name: xdp
+ type: nest
+ nested-attributes: xdp-attrs
+ -
+ name: event
+ type: u32
+ -
+ name: new-netnsid
+ type: s32
+ -
+ name: target-netnsid
+ type: s32
+ -
+ name: carrier-up-count
+ type: u32
+ -
+ name: carrier-down-count
+ type: u32
+ -
+ name: new-ifindex
+ type: s32
+ -
+ name: min-mtu
+ type: u32
+ -
+ name: max-mtu
+ type: u32
+ -
+ name: prop-list
+ type: nest
+ nested-attributes: link-attrs
+ -
+ name: alt-ifname
+ type: string
+ multi-attr: true
+ -
+ name: perm-address
+ type: binary
+ display-hint: mac
+ -
+ name: proto-down-reason
+ type: string
+ -
+ name: parent-dev-name
+ type: string
+ -
+ name: parent-dev-bus-name
+ type: string
+ -
+ name: gro-max-size
+ type: u32
+ -
+ name: tso-max-size
+ type: u32
+ -
+ name: tso-max-segs
+ type: u32
+ -
+ name: allmulti
+ type: u32
+ -
+ name: devlink-port
+ type: binary
+ -
+ name: gso-ipv4-max-size
+ type: u32
+ -
+ name: gro-ipv4-max-size
+ type: u32
+ -
+ name: dpll-pin
+ type: nest
+ nested-attributes: link-dpll-pin-attrs
+ -
+ name: max-pacing-offload-horizon
+ type: uint
+ doc: EDT offload horizon supported by the device (in nsec).
+ -
+ name: netns-immutable
+ type: u8
+ -
+ name: af-spec-attrs
+ attributes:
+ -
+ name: "inet"
+ type: nest
+ value: 2
+ nested-attributes: ifla-attrs
+ -
+ name: "inet6"
+ type: nest
+ value: 10
+ nested-attributes: ifla6-attrs
+ -
+ name: "mctp"
+ type: nest
+ value: 45
+ nested-attributes: mctp-attrs
+ -
+ name: vfinfo-list-attrs
+ attributes:
+ -
+ name: info
+ type: nest
+ nested-attributes: vfinfo-attrs
+ multi-attr: true
+ -
+ name: vfinfo-attrs
+ attributes:
+ -
+ name: mac
+ type: binary
+ struct: ifla-vf-mac
+ -
+ name: vlan
+ type: binary
+ struct: ifla-vf-vlan
+ -
+ name: tx-rate
+ type: binary
+ struct: ifla-vf-tx-rate
+ -
+ name: spoofchk
+ type: binary
+ struct: ifla-vf-spoofchk
+ -
+ name: link-state
+ type: binary
+ struct: ifla-vf-link-state
+ -
+ name: rate
+ type: binary
+ struct: ifla-vf-rate
+ -
+ name: rss-query-en
+ type: binary
+ struct: ifla-vf-rss-query-en
+ -
+ name: stats
+ type: nest
+ nested-attributes: vf-stats-attrs
+ -
+ name: trust
+ type: binary
+ struct: ifla-vf-trust
+ -
+ name: ib-node-guid
+ type: binary
+ struct: ifla-vf-guid
+ -
+ name: ib-port-guid
+ type: binary
+ struct: ifla-vf-guid
+ -
+ name: vlan-list
+ type: nest
+ nested-attributes: vf-vlan-attrs
+ -
+ name: broadcast
+ type: binary
+ -
+ name: vf-stats-attrs
+ attributes:
+ -
+ name: rx-packets
+ type: u64
+ value: 0
+ -
+ name: tx-packets
+ type: u64
+ -
+ name: rx-bytes
+ type: u64
+ -
+ name: tx-bytes
+ type: u64
+ -
+ name: broadcast
+ type: u64
+ -
+ name: multicast
+ type: u64
+ -
+ name: pad
+ type: pad
+ -
+ name: rx-dropped
+ type: u64
+ -
+ name: tx-dropped
+ type: u64
+ -
+ name: vf-vlan-attrs
+ attributes:
+ -
+ name: info
+ type: binary
+ struct: ifla-vf-vlan-info
+ multi-attr: true
+ -
+ name: vf-ports-attrs
+ attributes: []
+ -
+ name: port-self-attrs
+ attributes: []
+ -
+ name: linkinfo-attrs
+ attributes:
+ -
+ name: kind
+ type: string
+ -
+ name: data
+ type: sub-message
+ sub-message: linkinfo-data-msg
+ selector: kind
+ -
+ name: xstats
+ type: binary
+ -
+ name: slave-kind
+ type: string
+ -
+ name: slave-data
+ type: sub-message
+ sub-message: linkinfo-member-data-msg
+ selector: slave-kind
+ -
+ name: linkinfo-bond-attrs
+ name-prefix: ifla-bond-
+ attributes:
+ -
+ name: mode
+ type: u8
+ -
+ name: active-slave
+ type: u32
+ -
+ name: miimon
+ type: u32
+ -
+ name: updelay
+ type: u32
+ -
+ name: downdelay
+ type: u32
+ -
+ name: use-carrier
+ type: u8
+ -
+ name: arp-interval
+ type: u32
+ -
+ name: arp-ip-target
+ type: indexed-array
+ sub-type: u32
+ byte-order: big-endian
+ display-hint: ipv4
+ -
+ name: arp-validate
+ type: u32
+ -
+ name: arp-all-targets
+ type: u32
+ -
+ name: primary
+ type: u32
+ -
+ name: primary-reselect
+ type: u8
+ -
+ name: fail-over-mac
+ type: u8
+ -
+ name: xmit-hash-policy
+ type: u8
+ -
+ name: resend-igmp
+ type: u32
+ -
+ name: num-peer-notif
+ type: u8
+ -
+ name: all-slaves-active
+ type: u8
+ -
+ name: min-links
+ type: u32
+ -
+ name: lp-interval
+ type: u32
+ -
+ name: packets-per-slave
+ type: u32
+ -
+ name: ad-lacp-rate
+ type: u8
+ -
+ name: ad-select
+ type: u8
+ -
+ name: ad-info
+ type: nest
+ nested-attributes: bond-ad-info-attrs
+ -
+ name: ad-actor-sys-prio
+ type: u16
+ -
+ name: ad-user-port-key
+ type: u16
+ -
+ name: ad-actor-system
+ type: binary
+ display-hint: mac
+ -
+ name: tlb-dynamic-lb
+ type: u8
+ -
+ name: peer-notif-delay
+ type: u32
+ -
+ name: ad-lacp-active
+ type: u8
+ -
+ name: missed-max
+ type: u8
+ -
+ name: ns-ip6-target
+ type: indexed-array
+ sub-type: binary
+ display-hint: ipv6
+ -
+ name: coupled-control
+ type: u8
+ -
+ name: bond-ad-info-attrs
+ name-prefix: ifla-bond-ad-info-
+ attributes:
+ -
+ name: aggregator
+ type: u16
+ -
+ name: num-ports
+ type: u16
+ -
+ name: actor-key
+ type: u16
+ -
+ name: partner-key
+ type: u16
+ -
+ name: partner-mac
+ type: binary
+ display-hint: mac
+ -
+ name: bond-slave-attrs
+ name-prefix: ifla-bond-slave-
+ attributes:
+ -
+ name: state
+ type: u8
+ -
+ name: mii-status
+ type: u8
+ -
+ name: link-failure-count
+ type: u32
+ -
+ name: perm-hwaddr
+ type: binary
+ display-hint: mac
+ -
+ name: queue-id
+ type: u16
+ -
+ name: ad-aggregator-id
+ type: u16
+ -
+ name: ad-actor-oper-port-state
+ type: u8
+ -
+ name: ad-partner-oper-port-state
+ type: u16
+ -
+ name: prio
+ type: u32
+ -
+ name: linkinfo-bridge-attrs
+ name-prefix: ifla-br-
+ attributes:
+ -
+ name: forward-delay
+ type: u32
+ -
+ name: hello-time
+ type: u32
+ -
+ name: max-age
+ type: u32
+ -
+ name: ageing-time
+ type: u32
+ -
+ name: stp-state
+ type: u32
+ -
+ name: priority
+ type: u16
+ -
+ name: vlan-filtering
+ type: u8
+ -
+ name: vlan-protocol
+ type: u16
+ -
+ name: group-fwd-mask
+ type: u16
+ -
+ name: root-id
+ type: binary
+ struct: ifla-bridge-id
+ -
+ name: bridge-id
+ type: binary
+ struct: ifla-bridge-id
+ -
+ name: root-port
+ type: u16
+ -
+ name: root-path-cost
+ type: u32
+ -
+ name: topology-change
+ type: u8
+ -
+ name: topology-change-detected
+ type: u8
+ -
+ name: hello-timer
+ type: u64
+ -
+ name: tcn-timer
+ type: u64
+ -
+ name: topology-change-timer
+ type: u64
+ -
+ name: gc-timer
+ type: u64
+ -
+ name: group-addr
+ type: binary
+ display-hint: mac
+ -
+ name: fdb-flush
+ type: binary
+ -
+ name: mcast-router
+ type: u8
+ -
+ name: mcast-snooping
+ type: u8
+ -
+ name: mcast-query-use-ifaddr
+ type: u8
+ -
+ name: mcast-querier
+ type: u8
+ -
+ name: mcast-hash-elasticity
+ type: u32
+ -
+ name: mcast-hash-max
+ type: u32
+ -
+ name: mcast-last-member-cnt
+ type: u32
+ -
+ name: mcast-startup-query-cnt
+ type: u32
+ -
+ name: mcast-last-member-intvl
+ type: u64
+ -
+ name: mcast-membership-intvl
+ type: u64
+ -
+ name: mcast-querier-intvl
+ type: u64
+ -
+ name: mcast-query-intvl
+ type: u64
+ -
+ name: mcast-query-response-intvl
+ type: u64
+ -
+ name: mcast-startup-query-intvl
+ type: u64
+ -
+ name: nf-call-iptables
+ type: u8
+ -
+ name: nf-call-ip6-tables
+ type: u8
+ -
+ name: nf-call-arptables
+ type: u8
+ -
+ name: vlan-default-pvid
+ type: u16
+ -
+ name: pad
+ type: pad
+ -
+ name: vlan-stats-enabled
+ type: u8
+ -
+ name: mcast-stats-enabled
+ type: u8
+ -
+ name: mcast-igmp-version
+ type: u8
+ -
+ name: mcast-mld-version
+ type: u8
+ -
+ name: vlan-stats-per-port
+ type: u8
+ -
+ name: multi-boolopt
+ type: binary
+ struct: br-boolopt-multi
+ -
+ name: mcast-querier-state
+ type: binary
+ -
+ name: fdb-n-learned
+ type: u32
+ -
+ name: fdb-max-learned
+ type: u32
+ -
+ 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-vti-attrs
+ name-prefix: ifla-vti-
+ attributes:
+ -
+ name: link
+ type: u32
+ -
+ name: ikey
+ type: u32
+ -
+ name: okey
+ type: u32
+ -
+ name: local
+ type: binary
+ display-hint: ipv4
+ -
+ name: remote
+ type: binary
+ display-hint: ipv4
+ -
+ name: fwmark
+ type: u32
+ -
+ name: linkinfo-vti6-attrs
+ subset-of: linkinfo-vti-attrs
+ attributes:
+ -
+ name: link
+ -
+ name: ikey
+ -
+ name: okey
+ -
+ name: local
+ display-hint: ipv6
+ -
+ name: remote
+ display-hint: ipv6
+ -
+ name: fwmark
+ -
+ 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: port-range
+ type: binary
+ struct: ifla-geneve-port-range
+ -
+ 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-ip6tnl-attrs
+ subset-of: linkinfo-iptun-attrs
+ attributes:
+ -
+ name: link
+ -
+ name: local
+ display-hint: ipv6
+ -
+ name: remote
+ display-hint: ipv6
+ -
+ name: ttl
+ -
+ name: encap-limit
+ -
+ name: flowinfo
+ -
+ name: flags
+ # ip6tnl unlike ipip and sit has 32b flags
+ type: u32
+ -
+ name: proto
+ -
+ name: encap-type
+ -
+ name: encap-flags
+ -
+ name: encap-sport
+ -
+ name: encap-dport
+ -
+ name: collect-metadata
+ -
+ name: fwmark
+ -
+ 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-vlan-attrs
+ name-prefix: ifla-vlan-
+ attributes:
+ -
+ name: id
+ type: u16
+ -
+ name: flag
+ type: binary
+ struct: ifla-vlan-flags
+ -
+ name: egress-qos
+ type: nest
+ nested-attributes: ifla-vlan-qos
+ -
+ name: ingress-qos
+ type: nest
+ nested-attributes: ifla-vlan-qos
+ -
+ name: protocol
+ type: u16
+ enum: vlan-protocols
+ byte-order: big-endian
+ -
+ name: ifla-vlan-qos
+ name-prefix: ifla-vlan-qos
+ attributes:
+ -
+ name: mapping
+ type: binary
+ multi-attr: true
+ struct: ifla-vlan-qos-mapping
+ -
+ name: linkinfo-vrf-attrs
+ name-prefix: ifla-vrf-
+ attributes:
+ -
+ name: table
+ type: u32
+ -
+ name: xdp-attrs
+ attributes:
+ -
+ name: fd
+ type: s32
+ -
+ name: attached
+ type: u8
+ -
+ name: flags
+ type: u32
+ -
+ name: prog-id
+ type: u32
+ -
+ name: drv-prog-id
+ type: u32
+ -
+ name: skb-prog-id
+ type: u32
+ -
+ name: hw-prog-id
+ type: u32
+ -
+ name: expected-fd
+ type: s32
+ -
+ name: ifla-attrs
+ attributes:
+ -
+ name: conf
+ type: binary
+ struct: ipv4-devconf
+ -
+ name: ifla6-attrs
+ attributes:
+ -
+ name: flags
+ type: u32
+ -
+ name: conf
+ type: binary
+ struct: ipv6-devconf
+ -
+ name: stats
+ type: binary
+ struct: ifla-inet6-stats
+ -
+ name: mcast
+ type: binary
+ -
+ name: cacheinfo
+ type: binary
+ struct: ifla-cacheinfo
+ -
+ name: icmp6-stats
+ type: binary
+ struct: ifla-icmp6-stats
+ -
+ name: token
+ type: binary
+ -
+ name: addr-gen-mode
+ type: u8
+ -
+ name: ra-mtu
+ type: u32
+ -
+ name: mctp-attrs
+ attributes:
+ -
+ name: mctp-net
+ type: u32
+ -
+ name: phys-binding
+ type: u8
+ -
+ name: stats-attrs
+ name-prefix: ifla-stats-
+ attributes:
+ -
+ name: link-64
+ type: binary
+ struct: rtnl-link-stats64
+ -
+ name: link-xstats
+ type: binary
+ -
+ name: link-xstats-slave
+ type: binary
+ -
+ name: link-offload-xstats
+ type: nest
+ nested-attributes: link-offload-xstats
+ -
+ name: af-spec
+ type: binary
+ -
+ name: link-offload-xstats
+ attributes:
+ -
+ name: cpu-hit
+ type: binary
+ -
+ name: hw-s-info
+ type: indexed-array
+ sub-type: nest
+ nested-attributes: hw-s-info-one
+ -
+ name: l3-stats
+ type: binary
+ -
+ name: hw-s-info-one
+ attributes:
+ -
+ name: request
+ type: u8
+ -
+ name: used
+ type: u8
+ -
+ name: link-dpll-pin-attrs
+ attributes:
+ -
+ name: id
+ type: u32
+ -
+ name: linkinfo-netkit-attrs
+ name-prefix: ifla-netkit-
+ attributes:
+ -
+ name: peer-info
+ type: binary
+ -
+ name: primary
+ type: u8
+ -
+ name: policy
+ type: u32
+ enum: netkit-policy
+ -
+ name: peer-policy
+ type: u32
+ enum: netkit-policy
+ -
+ name: mode
+ type: u32
+ enum: netkit-mode
+ -
+ name: scrub
+ type: u32
+ enum: netkit-scrub
+ -
+ name: peer-scrub
+ type: u32
+ enum: netkit-scrub
+ -
+ name: headroom
+ type: u16
+ -
+ name: tailroom
+ type: u16
+
+sub-messages:
+ -
+ name: linkinfo-data-msg
+ formats:
+ -
+ value: bond
+ attribute-set: linkinfo-bond-attrs
+ -
+ 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: ip6tnl
+ attribute-set: linkinfo-ip6tnl-attrs
+ -
+ value: sit
+ attribute-set: linkinfo-iptun-attrs
+ -
+ value: tun
+ attribute-set: linkinfo-tun-attrs
+ -
+ value: vlan
+ attribute-set: linkinfo-vlan-attrs
+ -
+ value: vrf
+ attribute-set: linkinfo-vrf-attrs
+ -
+ value: vti
+ attribute-set: linkinfo-vti-attrs
+ -
+ value: vti6
+ attribute-set: linkinfo-vti6-attrs
+ -
+ value: netkit
+ attribute-set: linkinfo-netkit-attrs
+ -
+ name: linkinfo-member-data-msg
+ formats:
+ -
+ value: bridge
+ attribute-set: linkinfo-brport-attrs
+ -
+ value: bond
+ attribute-set: bond-slave-attrs
+
+operations:
+ enum-model: directional
+ list:
+ -
+ name: newlink
+ doc: Create a new link.
+ attribute-set: link-attrs
+ fixed-header: ifinfomsg
+ do:
+ request:
+ value: 16
+ attributes: &link-new-attrs
+ - ifi-index
+ - ifname
+ - net-ns-pid
+ - net-ns-fd
+ - target-netnsid
+ - link-netnsid
+ - linkinfo
+ - group
+ - num-tx-queues
+ - num-rx-queues
+ - address
+ - broadcast
+ - mtu
+ - txqlen
+ - operstate
+ - linkmode
+ - group
+ - gso-max-size
+ - gso-max-segs
+ - gro-max-size
+ - gso-ipv4-max-size
+ - gro-ipv4-max-size
+ - af-spec
+ -
+ name: dellink
+ doc: Delete an existing link.
+ attribute-set: link-attrs
+ fixed-header: ifinfomsg
+ do:
+ request:
+ value: 17
+ attributes:
+ - ifi-index
+ - ifname
+ -
+ name: getlink
+ doc: Get / dump information about a link.
+ attribute-set: link-attrs
+ fixed-header: ifinfomsg
+ do:
+ request:
+ value: 18
+ attributes:
+ - ifi-index
+ - ifname
+ - alt-ifname
+ - ext-mask
+ - target-netnsid
+ reply:
+ value: 16
+ attributes: &link-all-attrs
+ - ifi-family
+ - ifi-type
+ - ifi-index
+ - ifi-flags
+ - ifi-change
+ - address
+ - broadcast
+ - ifname
+ - mtu
+ - link
+ - qdisc
+ - stats
+ - cost
+ - priority
+ - master
+ - wireless
+ - protinfo
+ - txqlen
+ - map
+ - weight
+ - operstate
+ - linkmode
+ - linkinfo
+ - net-ns-pid
+ - ifalias
+ - num-vf
+ - vfinfo-list
+ - stats64
+ - vf-ports
+ - port-self
+ - af-spec
+ - group
+ - net-ns-fd
+ - ext-mask
+ - promiscuity
+ - num-tx-queues
+ - num-rx-queues
+ - carrier
+ - phys-port-id
+ - carrier-changes
+ - phys-switch-id
+ - link-netnsid
+ - phys-port-name
+ - proto-down
+ - gso-max-segs
+ - gso-max-size
+ - pad
+ - xdp
+ - event
+ - new-netnsid
+ - if-netnsid
+ - target-netnsid
+ - carrier-up-count
+ - carrier-down-count
+ - new-ifindex
+ - min-mtu
+ - max-mtu
+ - prop-list
+ - alt-ifname
+ - perm-address
+ - proto-down-reason
+ - parent-dev-name
+ - parent-dev-bus-name
+ - gro-max-size
+ - tso-max-size
+ - tso-max-segs
+ - allmulti
+ - devlink-port
+ - gso-ipv4-max-size
+ - gro-ipv4-max-size
+ dump:
+ request:
+ value: 18
+ attributes:
+ - target-netnsid
+ - ext-mask
+ - master
+ - linkinfo
+ reply:
+ value: 16
+ attributes: *link-all-attrs
+ -
+ name: setlink
+ doc: Set information about a link.
+ attribute-set: link-attrs
+ fixed-header: ifinfomsg
+ do:
+ request:
+ value: 19
+ attributes: *link-all-attrs
+ -
+ name: getstats
+ doc: Get / dump link stats.
+ attribute-set: stats-attrs
+ fixed-header: if_stats_msg
+ do:
+ request:
+ value: 94
+ attributes:
+ - ifindex
+ reply:
+ value: 92
+ attributes: &link-stats-attrs
+ - family
+ - ifindex
+ - filter-mask
+ - link-64
+ - link-xstats
+ - link-xstats-slave
+ - link-offload-xstats
+ - af-spec
+ dump:
+ request:
+ value: 94
+ reply:
+ value: 92
+ attributes: *link-stats-attrs
+
+mcast-groups:
+ list:
+ -
+ name: rtnlgrp-link
+ value: 1
+ -
+ name: rtnlgrp-stats
+ value: 36
--- /dev/null
+# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
+
+name: rt-neigh
+protocol: netlink-raw
+protonum: 0
+
+doc:
+ IP neighbour management over rtnetlink.
+
+definitions:
+ -
+ name: ndmsg
+ type: struct
+ members:
+ -
+ name: family
+ type: u8
+ -
+ name: pad
+ type: pad
+ len: 3
+ -
+ name: ifindex
+ type: s32
+ -
+ name: state
+ type: u16
+ enum: nud-state
+ -
+ name: flags
+ type: u8
+ enum: ntf-flags
+ -
+ name: type
+ type: u8
+ enum: rtm-type
+ -
+ name: ndtmsg
+ type: struct
+ members:
+ -
+ name: family
+ type: u8
+ -
+ name: pad
+ type: pad
+ len: 3
+ -
+ name: nud-state
+ type: flags
+ entries:
+ - incomplete
+ - reachable
+ - stale
+ - delay
+ - probe
+ - failed
+ - noarp
+ - permanent
+ -
+ name: ntf-flags
+ type: flags
+ entries:
+ - use
+ - self
+ - master
+ - proxy
+ - ext-learned
+ - offloaded
+ - sticky
+ - router
+ -
+ name: ntf-ext-flags
+ type: flags
+ entries:
+ - managed
+ - locked
+ -
+ name: rtm-type
+ type: enum
+ entries:
+ - unspec
+ - unicast
+ - local
+ - broadcast
+ - anycast
+ - multicast
+ - blackhole
+ - unreachable
+ - prohibit
+ - throw
+ - nat
+ - xresolve
+ -
+ name: nda-cacheinfo
+ type: struct
+ members:
+ -
+ name: confirmed
+ type: u32
+ -
+ name: used
+ type: u32
+ -
+ name: updated
+ type: u32
+ -
+ name: refcnt
+ type: u32
+ -
+ name: ndt-config
+ type: struct
+ members:
+ -
+ name: key-len
+ type: u16
+ -
+ name: entry-size
+ type: u16
+ -
+ name: entries
+ type: u32
+ -
+ name: last-flush
+ type: u32
+ -
+ name: last-rand
+ type: u32
+ -
+ name: hash-rnd
+ type: u32
+ -
+ name: hash-mask
+ type: u32
+ -
+ name: hash-chain-gc
+ type: u32
+ -
+ name: proxy-qlen
+ type: u32
+ -
+ name: ndt-stats
+ type: struct
+ members:
+ -
+ name: allocs
+ type: u64
+ -
+ name: destroys
+ type: u64
+ -
+ name: hash-grows
+ type: u64
+ -
+ name: res-failed
+ type: u64
+ -
+ name: lookups
+ type: u64
+ -
+ name: hits
+ type: u64
+ -
+ name: rcv-probes-mcast
+ type: u64
+ -
+ name: rcv-probes-ucast
+ type: u64
+ -
+ name: periodic-gc-runs
+ type: u64
+ -
+ name: forced-gc-runs
+ type: u64
+ -
+ name: table-fulls
+ type: u64
+
+attribute-sets:
+ -
+ name: neighbour-attrs
+ attributes:
+ -
+ name: unspec
+ type: binary
+ value: 0
+ -
+ name: dst
+ type: binary
+ display-hint: ipv4
+ -
+ name: lladr
+ type: binary
+ display-hint: mac
+ -
+ name: cacheinfo
+ type: binary
+ struct: nda-cacheinfo
+ -
+ name: probes
+ type: u32
+ -
+ name: vlan
+ type: u16
+ -
+ name: port
+ type: u16
+ -
+ name: vni
+ type: u32
+ -
+ name: ifindex
+ type: u32
+ -
+ name: master
+ type: u32
+ -
+ name: link-netnsid
+ type: s32
+ -
+ name: src-vni
+ type: u32
+ -
+ name: protocol
+ type: u8
+ -
+ name: nh-id
+ type: u32
+ -
+ name: fdb-ext-attrs
+ type: binary
+ -
+ name: flags-ext
+ type: u32
+ enum: ntf-ext-flags
+ -
+ name: ndm-state-mask
+ type: u16
+ -
+ name: ndm-flags-mask
+ type: u8
+ -
+ name: ndt-attrs
+ attributes:
+ -
+ name: name
+ type: string
+ -
+ name: thresh1
+ type: u32
+ -
+ name: thresh2
+ type: u32
+ -
+ name: thresh3
+ type: u32
+ -
+ name: config
+ type: binary
+ struct: ndt-config
+ -
+ name: parms
+ type: nest
+ nested-attributes: ndtpa-attrs
+ -
+ name: stats
+ type: binary
+ struct: ndt-stats
+ -
+ name: gc-interval
+ type: u64
+ -
+ name: pad
+ type: pad
+ -
+ name: ndtpa-attrs
+ attributes:
+ -
+ name: ifindex
+ type: u32
+ -
+ name: refcnt
+ type: u32
+ -
+ name: reachable-time
+ type: u64
+ -
+ name: base-reachable-time
+ type: u64
+ -
+ name: retrans-time
+ type: u64
+ -
+ name: gc-staletime
+ type: u64
+ -
+ name: delay-probe-time
+ type: u64
+ -
+ name: queue-len
+ type: u32
+ -
+ name: app-probes
+ type: u32
+ -
+ name: ucast-probes
+ type: u32
+ -
+ name: mcast-probes
+ type: u32
+ -
+ name: anycast-delay
+ type: u64
+ -
+ name: proxy-delay
+ type: u64
+ -
+ name: proxy-qlen
+ type: u32
+ -
+ name: locktime
+ type: u64
+ -
+ name: queue-lenbytes
+ type: u32
+ -
+ name: mcast-reprobes
+ type: u32
+ -
+ name: pad
+ type: pad
+ -
+ name: interval-probe-time-ms
+ type: u64
+
+operations:
+ enum-model: directional
+ list:
+ -
+ name: newneigh
+ doc: Add new neighbour entry
+ fixed-header: ndmsg
+ attribute-set: neighbour-attrs
+ do:
+ request:
+ value: 28
+ attributes: &neighbour-all
+ - dst
+ - lladdr
+ - probes
+ - vlan
+ - port
+ - vni
+ - ifindex
+ - master
+ - protocol
+ - nh-id
+ - flags-ext
+ - fdb-ext-attrs
+ -
+ name: delneigh
+ doc: Remove an existing neighbour entry
+ fixed-header: ndmsg
+ attribute-set: neighbour-attrs
+ do:
+ request:
+ value: 29
+ attributes:
+ - dst
+ - ifindex
+ -
+ name: delneigh-ntf
+ doc: Notify a neighbour deletion
+ value: 29
+ notify: delneigh
+ fixed-header: ndmsg
+ -
+ name: getneigh
+ doc: Get or dump neighbour entries
+ fixed-header: ndmsg
+ attribute-set: neighbour-attrs
+ do:
+ request:
+ value: 30
+ attributes:
+ - dst
+ reply:
+ value: 28
+ attributes: *neighbour-all
+ dump:
+ request:
+ attributes:
+ - ifindex
+ - master
+ reply:
+ attributes: *neighbour-all
+ -
+ name: newneigh-ntf
+ doc: Notify a neighbour creation
+ value: 28
+ notify: getneigh
+ fixed-header: ndmsg
+ -
+ name: getneightbl
+ doc: Get or dump neighbour tables
+ fixed-header: ndtmsg
+ attribute-set: ndt-attrs
+ dump:
+ request:
+ value: 66
+ reply:
+ value: 64
+ attributes:
+ - name
+ - thresh1
+ - thresh2
+ - thresh3
+ - config
+ - parms
+ - stats
+ - gc-interval
+ -
+ name: setneightbl
+ doc: Set neighbour tables
+ fixed-header: ndtmsg
+ attribute-set: ndt-attrs
+ do:
+ request:
+ value: 67
+ attributes:
+ - name
+ - thresh1
+ - thresh2
+ - thresh3
+ - parms
+ - gc-interval
+
+mcast-groups:
+ list:
+ -
+ name: rtnlgrp-neigh
+ value: 3
--- /dev/null
+# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
+
+name: rt-route
+protocol: netlink-raw
+protonum: 0
+
+doc:
+ Route configuration over rtnetlink.
+
+definitions:
+ -
+ name: rtm-type
+ name-prefix: rtn-
+ type: enum
+ entries:
+ - unspec
+ - unicast
+ - local
+ - broadcast
+ - anycast
+ - multicast
+ - blackhole
+ - unreachable
+ - prohibit
+ - throw
+ - nat
+ - xresolve
+ -
+ name: rtmsg
+ type: struct
+ members:
+ -
+ name: rtm-family
+ type: u8
+ -
+ name: rtm-dst-len
+ type: u8
+ -
+ name: rtm-src-len
+ type: u8
+ -
+ name: rtm-tos
+ type: u8
+ -
+ name: rtm-table
+ type: u8
+ -
+ name: rtm-protocol
+ type: u8
+ -
+ name: rtm-scope
+ type: u8
+ -
+ name: rtm-type
+ type: u8
+ enum: rtm-type
+ -
+ name: rtm-flags
+ type: u32
+ -
+ name: rta-cacheinfo
+ type: struct
+ members:
+ -
+ name: rta-clntref
+ type: u32
+ -
+ name: rta-lastuse
+ type: u32
+ -
+ name: rta-expires
+ type: u32
+ -
+ name: rta-error
+ type: u32
+ -
+ name: rta-used
+ type: u32
+
+attribute-sets:
+ -
+ name: route-attrs
+ name-prefix: rta-
+ attributes:
+ -
+ name: dst
+ type: binary
+ display-hint: ipv4
+ -
+ name: src
+ type: binary
+ display-hint: ipv4
+ -
+ name: iif
+ type: u32
+ -
+ name: oif
+ type: u32
+ -
+ name: gateway
+ type: binary
+ display-hint: ipv4
+ -
+ name: priority
+ type: u32
+ -
+ name: prefsrc
+ type: binary
+ display-hint: ipv4
+ -
+ name: metrics
+ type: nest
+ nested-attributes: metrics
+ -
+ name: multipath
+ type: binary
+ -
+ name: protoinfo # not used
+ type: binary
+ -
+ name: flow
+ type: u32
+ -
+ name: cacheinfo
+ type: binary
+ struct: rta-cacheinfo
+ -
+ name: session # not used
+ type: binary
+ -
+ name: mp-algo # not used
+ type: binary
+ -
+ name: table
+ type: u32
+ -
+ name: mark
+ type: u32
+ -
+ name: mfc-stats
+ type: binary
+ -
+ name: via
+ type: binary
+ -
+ name: newdst
+ type: binary
+ -
+ name: pref
+ type: u8
+ -
+ name: encap-type
+ type: u16
+ -
+ name: encap
+ type: binary # tunnel specific nest
+ -
+ name: expires
+ type: u32
+ -
+ name: pad
+ type: binary
+ -
+ name: uid
+ type: u32
+ -
+ name: ttl-propagate
+ type: u8
+ -
+ name: ip-proto
+ type: u8
+ -
+ name: sport
+ type: u16
+ -
+ name: dport
+ type: u16
+ -
+ name: nh-id
+ type: u32
+ -
+ name: flowlabel
+ type: u32
+ byte-order: big-endian
+ display-hint: hex
+ -
+ name: metrics
+ name-prefix: rtax-
+ attributes:
+ -
+ name: unspec
+ type: unused
+ value: 0
+ -
+ name: lock
+ type: u32
+ -
+ name: mtu
+ type: u32
+ -
+ name: window
+ type: u32
+ -
+ name: rtt
+ type: u32
+ -
+ name: rttvar
+ type: u32
+ -
+ name: ssthresh
+ type: u32
+ -
+ name: cwnd
+ type: u32
+ -
+ name: advmss
+ type: u32
+ -
+ name: reordering
+ type: u32
+ -
+ name: hoplimit
+ type: u32
+ -
+ name: initcwnd
+ type: u32
+ -
+ name: features
+ type: u32
+ -
+ name: rto-min
+ type: u32
+ -
+ name: initrwnd
+ type: u32
+ -
+ name: quickack
+ type: u32
+ -
+ name: cc-algo
+ type: string
+ -
+ name: fastopen-no-cookie
+ type: u32
+
+operations:
+ enum-model: directional
+ list:
+ -
+ name: getroute
+ doc: Dump route information.
+ attribute-set: route-attrs
+ fixed-header: rtmsg
+ do:
+ request:
+ value: 26
+ attributes:
+ - rtm-family
+ - src
+ - rtm-src-len
+ - dst
+ - rtm-dst-len
+ - iif
+ - oif
+ - ip-proto
+ - sport
+ - dport
+ - mark
+ - uid
+ - flowlabel
+ reply:
+ value: 24
+ attributes: &all-route-attrs
+ - rtm-family
+ - rtm-dst-len
+ - rtm-src-len
+ - rtm-tos
+ - rtm-table
+ - rtm-protocol
+ - rtm-scope
+ - rtm-type
+ - rtm-flags
+ - dst
+ - src
+ - iif
+ - oif
+ - gateway
+ - priority
+ - prefsrc
+ - metrics
+ - multipath
+ - flow
+ - cacheinfo
+ - table
+ - mark
+ - mfc-stats
+ - via
+ - newdst
+ - pref
+ - encap-type
+ - encap
+ - expires
+ - pad
+ - uid
+ - ttl-propagate
+ - ip-proto
+ - sport
+ - dport
+ - nh-id
+ - flowlabel
+ dump:
+ request:
+ value: 26
+ attributes:
+ - rtm-family
+ reply:
+ value: 24
+ attributes: *all-route-attrs
+ -
+ name: newroute
+ doc: Create a new route
+ attribute-set: route-attrs
+ fixed-header: rtmsg
+ do:
+ request:
+ value: 24
+ attributes: *all-route-attrs
+ -
+ name: delroute
+ doc: Delete an existing route
+ attribute-set: route-attrs
+ fixed-header: rtmsg
+ do:
+ request:
+ value: 25
+ attributes: *all-route-attrs
--- /dev/null
+# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
+
+name: rt-rule
+protocol: netlink-raw
+protonum: 0
+
+doc:
+ FIB rule management over rtnetlink.
+
+definitions:
+ -
+ name: rtgenmsg
+ type: struct
+ members:
+ -
+ name: family
+ type: u8
+ -
+ name: pad
+ type: pad
+ len: 3
+ -
+ name: fib-rule-hdr
+ type: struct
+ members:
+ -
+ name: family
+ type: u8
+ -
+ name: dst-len
+ type: u8
+ -
+ name: src-len
+ type: u8
+ -
+ name: tos
+ type: u8
+ -
+ name: table
+ type: u8
+ -
+ name: res1
+ type: pad
+ len: 1
+ -
+ name: res2
+ type: pad
+ len: 1
+ -
+ name: action
+ type: u8
+ enum: fr-act
+ -
+ name: flags
+ type: u32
+ -
+ name: fr-act
+ type: enum
+ entries:
+ - unspec
+ - to-tbl
+ - goto
+ - nop
+ - res3
+ - res4
+ - blackhole
+ - unreachable
+ - prohibit
+ -
+ name: fib-rule-port-range
+ type: struct
+ members:
+ -
+ name: start
+ type: u16
+ -
+ name: end
+ type: u16
+ -
+ name: fib-rule-uid-range
+ type: struct
+ members:
+ -
+ name: start
+ type: u32
+ -
+ name: end
+ type: u32
+
+attribute-sets:
+ -
+ name: fib-rule-attrs
+ attributes:
+ -
+ name: dst
+ type: u32
+ -
+ name: src
+ type: u32
+ -
+ name: iifname
+ type: string
+ -
+ name: goto
+ type: u32
+ -
+ name: unused2
+ type: pad
+ -
+ name: priority
+ type: u32
+ -
+ name: unused3
+ type: pad
+ -
+ name: unused4
+ type: pad
+ -
+ name: unused5
+ type: pad
+ -
+ name: fwmark
+ type: u32
+ display-hint: hex
+ -
+ name: flow
+ type: u32
+ -
+ name: tun-id
+ type: u64
+ -
+ name: suppress-ifgroup
+ type: u32
+ -
+ name: suppress-prefixlen
+ type: u32
+ display-hint: hex
+ -
+ name: table
+ type: u32
+ -
+ name: fwmask
+ type: u32
+ display-hint: hex
+ -
+ name: oifname
+ type: string
+ -
+ name: pad
+ type: pad
+ -
+ name: l3mdev
+ type: u8
+ -
+ name: uid-range
+ type: binary
+ struct: fib-rule-uid-range
+ -
+ name: protocol
+ type: u8
+ -
+ name: ip-proto
+ type: u8
+ -
+ name: sport-range
+ type: binary
+ struct: fib-rule-port-range
+ -
+ name: dport-range
+ type: binary
+ struct: fib-rule-port-range
+ -
+ name: dscp
+ type: u8
+ -
+ name: flowlabel
+ type: u32
+ byte-order: big-endian
+ display-hint: hex
+ -
+ name: flowlabel-mask
+ type: u32
+ byte-order: big-endian
+ display-hint: hex
+ -
+ name: sport-mask
+ type: u16
+ display-hint: hex
+ -
+ name: dport-mask
+ type: u16
+ display-hint: hex
+ -
+ name: dscp-mask
+ type: u8
+ display-hint: hex
+
+operations:
+ enum-model: directional
+ fixed-header: fib-rule-hdr
+ list:
+ -
+ name: newrule
+ doc: Add new FIB rule
+ attribute-set: fib-rule-attrs
+ do:
+ request:
+ value: 32
+ attributes: &fib-rule-all
+ - iifname
+ - oifname
+ - priority
+ - fwmark
+ - flow
+ - tun-id
+ - fwmask
+ - table
+ - suppress-prefixlen
+ - suppress-ifgroup
+ - goto
+ - l3mdev
+ - uid-range
+ - protocol
+ - ip-proto
+ - sport-range
+ - dport-range
+ - dscp
+ - flowlabel
+ - flowlabel-mask
+ - sport-mask
+ - dport-mask
+ - dscp-mask
+ -
+ name: newrule-ntf
+ doc: Notify a rule creation
+ value: 32
+ notify: newrule
+ -
+ name: delrule
+ doc: Remove an existing FIB rule
+ attribute-set: fib-rule-attrs
+ do:
+ request:
+ value: 33
+ attributes: *fib-rule-all
+ -
+ name: delrule-ntf
+ doc: Notify a rule deletion
+ value: 33
+ notify: delrule
+ -
+ name: getrule
+ doc: Dump all FIB rules
+ attribute-set: fib-rule-attrs
+ dump:
+ request:
+ value: 34
+ reply:
+ value: 32
+ attributes: *fib-rule-all
+
+mcast-groups:
+ list:
+ -
+ name: rtnlgrp-ipv4-rule
+ value: 8
+ -
+ name: rtnlgrp-ipv6-rule
+ value: 19
+++ /dev/null
-# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
-
-name: rt-addr
-protocol: netlink-raw
-protonum: 0
-
-doc:
- Address configuration over rtnetlink.
-
-definitions:
- -
- name: ifaddrmsg
- type: struct
- members:
- -
- name: ifa-family
- type: u8
- -
- name: ifa-prefixlen
- type: u8
- -
- name: ifa-flags
- type: u8
- enum: ifa-flags
- enum-as-flags: true
- -
- name: ifa-scope
- type: u8
- -
- name: ifa-index
- type: u32
- -
- name: ifa-cacheinfo
- type: struct
- members:
- -
- name: ifa-prefered
- type: u32
- -
- name: ifa-valid
- type: u32
- -
- name: cstamp
- type: u32
- -
- name: tstamp
- type: u32
-
- -
- name: ifa-flags
- type: flags
- entries:
- -
- name: secondary
- -
- name: nodad
- -
- name: optimistic
- -
- name: dadfailed
- -
- name: homeaddress
- -
- name: deprecated
- -
- name: tentative
- -
- name: permanent
- -
- name: managetempaddr
- -
- name: noprefixroute
- -
- name: mcautojoin
- -
- name: stable-privacy
-
-attribute-sets:
- -
- name: addr-attrs
- name-prefix: ifa-
- attributes:
- -
- name: address
- type: binary
- display-hint: ipv4
- -
- name: local
- type: binary
- display-hint: ipv4
- -
- name: label
- type: string
- -
- name: broadcast
- type: binary
- display-hint: ipv4
- -
- name: anycast
- type: binary
- -
- name: cacheinfo
- type: binary
- struct: ifa-cacheinfo
- -
- name: multicast
- type: binary
- -
- name: flags
- type: u32
- enum: ifa-flags
- enum-as-flags: true
- -
- name: rt-priority
- type: u32
- -
- name: target-netnsid
- type: binary
- -
- name: proto
- type: u8
-
-
-operations:
- fixed-header: ifaddrmsg
- enum-model: directional
- list:
- -
- name: newaddr
- doc: Add new address
- attribute-set: addr-attrs
- do:
- request:
- value: 20
- attributes: &ifaddr-all
- - ifa-family
- - ifa-flags
- - ifa-prefixlen
- - ifa-scope
- - ifa-index
- - address
- - label
- - local
- - cacheinfo
- -
- name: deladdr
- doc: Remove address
- attribute-set: addr-attrs
- do:
- request:
- value: 21
- attributes:
- - ifa-family
- - ifa-flags
- - ifa-prefixlen
- - ifa-scope
- - ifa-index
- - address
- - local
- -
- name: getaddr
- doc: Dump address information.
- attribute-set: addr-attrs
- dump:
- request:
- value: 22
- attributes:
- - ifa-index
- reply:
- value: 20
- attributes: *ifaddr-all
- -
- name: getmulticast
- doc: Get / dump IPv4/IPv6 multicast addresses.
- attribute-set: addr-attrs
- fixed-header: ifaddrmsg
- do:
- request:
- value: 58
- attributes:
- - ifa-family
- - ifa-index
- reply:
- value: 58
- attributes: &mcaddr-attrs
- - multicast
- - cacheinfo
- dump:
- request:
- value: 58
- attributes:
- - ifa-family
- reply:
- value: 58
- attributes: *mcaddr-attrs
-
-mcast-groups:
- list:
- -
- name: rtnlgrp-ipv4-ifaddr
- value: 5
- -
- name: rtnlgrp-ipv6-ifaddr
- value: 9
+++ /dev/null
-# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
-
-name: rt-link
-protocol: netlink-raw
-protonum: 0
-
-doc:
- Link configuration over rtnetlink.
-
-definitions:
- -
- name: ifinfo-flags
- type: flags
- entries:
- -
- name: up
- -
- name: broadcast
- -
- name: debug
- -
- name: loopback
- -
- name: point-to-point
- -
- name: no-trailers
- -
- name: running
- -
- name: no-arp
- -
- name: promisc
- -
- name: all-multi
- -
- name: master
- -
- name: slave
- -
- name: multicast
- -
- name: portsel
- -
- name: auto-media
- -
- name: dynamic
- -
- name: lower-up
- -
- name: dormant
- -
- name: echo
- -
- name: vlan-protocols
- type: enum
- entries:
- -
- name: 8021q
- value: 33024
- -
- name: 8021ad
- value: 34984
- -
- name: rtgenmsg
- type: struct
- members:
- -
- name: family
- type: u8
- -
- name: ifinfomsg
- type: struct
- members:
- -
- name: ifi-family
- type: u8
- -
- name: pad
- type: pad
- len: 1
- -
- name: ifi-type
- type: u16
- -
- name: ifi-index
- type: s32
- -
- name: ifi-flags
- type: u32
- enum: ifinfo-flags
- enum-as-flags: true
- -
- 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
- members:
- -
- name: max-reasm-len
- type: u32
- -
- name: tstamp
- type: u32
- -
- name: reachable-time
- type: s32
- -
- name: retrans-time
- type: u32
- -
- name: rtnl-link-stats
- type: struct
- members:
- -
- name: rx-packets
- type: u32
- -
- name: tx-packets
- type: u32
- -
- name: rx-bytes
- type: u32
- -
- name: tx-bytes
- type: u32
- -
- name: rx-errors
- type: u32
- -
- name: tx-errors
- type: u32
- -
- name: rx-dropped
- type: u32
- -
- name: tx-dropped
- type: u32
- -
- name: multicast
- type: u32
- -
- name: collisions
- type: u32
- -
- name: rx-length-errors
- type: u32
- -
- name: rx-over-errors
- type: u32
- -
- name: rx-crc-errors
- type: u32
- -
- name: rx-frame-errors
- type: u32
- -
- name: rx-fifo-errors
- type: u32
- -
- name: rx-missed-errors
- type: u32
- -
- name: tx-aborted-errors
- type: u32
- -
- name: tx-carrier-errors
- type: u32
- -
- name: tx-fifo-errors
- type: u32
- -
- name: tx-heartbeat-errors
- type: u32
- -
- name: tx-window-errors
- type: u32
- -
- name: rx-compressed
- type: u32
- -
- name: tx-compressed
- type: u32
- -
- name: rx-nohandler
- type: u32
- -
- name: rtnl-link-stats64
- type: struct
- members:
- -
- name: rx-packets
- type: u64
- -
- name: tx-packets
- type: u64
- -
- name: rx-bytes
- type: u64
- -
- name: tx-bytes
- type: u64
- -
- name: rx-errors
- type: u64
- -
- name: tx-errors
- type: u64
- -
- name: rx-dropped
- type: u64
- -
- name: tx-dropped
- type: u64
- -
- name: multicast
- type: u64
- -
- name: collisions
- type: u64
- -
- name: rx-length-errors
- type: u64
- -
- name: rx-over-errors
- type: u64
- -
- name: rx-crc-errors
- type: u64
- -
- name: rx-frame-errors
- type: u64
- -
- name: rx-fifo-errors
- type: u64
- -
- name: rx-missed-errors
- type: u64
- -
- name: tx-aborted-errors
- type: u64
- -
- name: tx-carrier-errors
- type: u64
- -
- name: tx-fifo-errors
- type: u64
- -
- name: tx-heartbeat-errors
- type: u64
- -
- name: tx-window-errors
- type: u64
- -
- name: rx-compressed
- type: u64
- -
- name: tx-compressed
- type: u64
- -
- name: rx-nohandler
- type: u64
- -
- name: rx-otherhost-dropped
- type: u64
- -
- name: rtnl-link-ifmap
- type: struct
- members:
- -
- name: mem-start
- type: u64
- -
- name: mem-end
- type: u64
- -
- name: base-addr
- type: u64
- -
- name: irq
- type: u16
- -
- name: dma
- type: u8
- -
- name: port
- type: u8
- -
- name: ipv4-devconf
- type: struct
- members:
- -
- name: forwarding
- type: u32
- -
- name: mc-forwarding
- type: u32
- -
- name: proxy-arp
- type: u32
- -
- name: accept-redirects
- type: u32
- -
- name: secure-redirects
- type: u32
- -
- name: send-redirects
- type: u32
- -
- name: shared-media
- type: u32
- -
- name: rp-filter
- type: u32
- -
- name: accept-source-route
- type: u32
- -
- name: bootp-relay
- type: u32
- -
- name: log-martians
- type: u32
- -
- name: tag
- type: u32
- -
- name: arpfilter
- type: u32
- -
- name: medium-id
- type: u32
- -
- name: noxfrm
- type: u32
- -
- name: nopolicy
- type: u32
- -
- name: force-igmp-version
- type: u32
- -
- name: arp-announce
- type: u32
- -
- name: arp-ignore
- type: u32
- -
- name: promote-secondaries
- type: u32
- -
- name: arp-accept
- type: u32
- -
- name: arp-notify
- type: u32
- -
- name: accept-local
- type: u32
- -
- name: src-vmark
- type: u32
- -
- name: proxy-arp-pvlan
- type: u32
- -
- name: route-localnet
- type: u32
- -
- name: igmpv2-unsolicited-report-interval
- type: u32
- -
- name: igmpv3-unsolicited-report-interval
- type: u32
- -
- name: ignore-routes-with-linkdown
- type: u32
- -
- name: drop-unicast-in-l2-multicast
- type: u32
- -
- name: drop-gratuitous-arp
- type: u32
- -
- name: bc-forwarding
- type: u32
- -
- name: arp-evict-nocarrier
- type: u32
- -
- name: ipv6-devconf
- type: struct
- members:
- -
- name: forwarding
- type: u32
- -
- name: hoplimit
- type: u32
- -
- name: mtu6
- type: u32
- -
- name: accept-ra
- type: u32
- -
- name: accept-redirects
- type: u32
- -
- name: autoconf
- type: u32
- -
- name: dad-transmits
- type: u32
- -
- name: rtr-solicits
- type: u32
- -
- name: rtr-solicit-interval
- type: u32
- -
- name: rtr-solicit-delay
- type: u32
- -
- name: use-tempaddr
- type: u32
- -
- name: temp-valid-lft
- type: u32
- -
- name: temp-prefered-lft
- type: u32
- -
- name: regen-max-retry
- type: u32
- -
- name: max-desync-factor
- type: u32
- -
- name: max-addresses
- type: u32
- -
- name: force-mld-version
- type: u32
- -
- name: accept-ra-defrtr
- type: u32
- -
- name: accept-ra-pinfo
- type: u32
- -
- name: accept-ra-rtr-pref
- type: u32
- -
- name: rtr-probe-interval
- type: u32
- -
- name: accept-ra-rt-info-max-plen
- type: u32
- -
- name: proxy-ndp
- type: u32
- -
- name: optimistic-dad
- type: u32
- -
- name: accept-source-route
- type: u32
- -
- name: mc-forwarding
- type: u32
- -
- name: disable-ipv6
- type: u32
- -
- name: accept-dad
- type: u32
- -
- name: force-tllao
- type: u32
- -
- name: ndisc-notify
- type: u32
- -
- name: mldv1-unsolicited-report-interval
- type: u32
- -
- name: mldv2-unsolicited-report-interval
- type: u32
- -
- name: suppress-frag-ndisc
- type: u32
- -
- name: accept-ra-from-local
- type: u32
- -
- name: use-optimistic
- type: u32
- -
- name: accept-ra-mtu
- type: u32
- -
- name: stable-secret
- type: u32
- -
- name: use-oif-addrs-only
- type: u32
- -
- name: accept-ra-min-hop-limit
- type: u32
- -
- name: ignore-routes-with-linkdown
- type: u32
- -
- name: drop-unicast-in-l2-multicast
- type: u32
- -
- name: drop-unsolicited-na
- type: u32
- -
- name: keep-addr-on-down
- type: u32
- -
- name: rtr-solicit-max-interval
- type: u32
- -
- name: seg6-enabled
- type: u32
- -
- name: seg6-require-hmac
- type: u32
- -
- name: enhanced-dad
- type: u32
- -
- name: addr-gen-mode
- type: u8
- -
- name: disable-policy
- type: u32
- -
- name: accept-ra-rt-info-min-plen
- type: u32
- -
- name: ndisc-tclass
- type: u32
- -
- name: rpl-seg-enabled
- type: u32
- -
- name: ra-defrtr-metric
- type: u32
- -
- name: ioam6-enabled
- type: u32
- -
- name: ioam6-id
- type: u32
- -
- name: ioam6-id-wide
- type: u32
- -
- name: ndisc-evict-nocarrier
- type: u32
- -
- name: accept-untracked-na
- type: u32
- -
- name: ifla-icmp6-stats
- type: struct
- members:
- -
- name: inmsgs
- type: u64
- -
- name: inerrors
- type: u64
- -
- name: outmsgs
- type: u64
- -
- name: outerrors
- type: u64
- -
- name: csumerrors
- type: u64
- -
- name: ratelimithost
- type: u64
- -
- name: ifla-inet6-stats
- type: struct
- members:
- -
- name: inpkts
- type: u64
- -
- name: inoctets
- type: u64
- -
- name: indelivers
- type: u64
- -
- name: outforwdatagrams
- type: u64
- -
- name: outpkts
- type: u64
- -
- name: outoctets
- type: u64
- -
- name: inhdrerrors
- type: u64
- -
- name: intoobigerrors
- type: u64
- -
- name: innoroutes
- type: u64
- -
- name: inaddrerrors
- type: u64
- -
- name: inunknownprotos
- type: u64
- -
- name: intruncatedpkts
- type: u64
- -
- name: indiscards
- type: u64
- -
- name: outdiscards
- type: u64
- -
- name: outnoroutes
- type: u64
- -
- name: reasmtimeout
- type: u64
- -
- name: reasmreqds
- type: u64
- -
- name: reasmoks
- type: u64
- -
- name: reasmfails
- type: u64
- -
- name: fragoks
- type: u64
- -
- name: fragfails
- type: u64
- -
- name: fragcreates
- type: u64
- -
- name: inmcastpkts
- type: u64
- -
- name: outmcastpkts
- type: u64
- -
- name: inbcastpkts
- type: u64
- -
- name: outbcastpkts
- type: u64
- -
- name: inmcastoctets
- type: u64
- -
- name: outmcastoctets
- type: u64
- -
- name: inbcastoctets
- type: u64
- -
- name: outbcastoctets
- type: u64
- -
- name: csumerrors
- type: u64
- -
- name: noectpkts
- type: u64
- -
- name: ect1-pkts
- type: u64
- -
- name: ect0-pkts
- type: u64
- -
- name: cepkts
- type: u64
- -
- name: reasm-overlaps
- type: u64
- - name: br-boolopt-multi
- type: struct
- members:
- -
- name: optval
- type: u32
- -
- name: optmask
- type: u32
- -
- name: if_stats_msg
- type: struct
- members:
- -
- name: family
- type: u8
- -
- name: pad
- type: pad
- len: 3
- -
- name: ifindex
- type: u32
- -
- name: filter-mask
- type: u32
- -
- name: ifla-vlan-flags
- type: struct
- members:
- -
- name: flags
- type: u32
- enum: vlan-flags
- enum-as-flags: true
- -
- name: mask
- type: u32
- display-hint: hex
- -
- name: vlan-flags
- type: flags
- entries:
- - reorder-hdr
- - gvrp
- - loose-binding
- - mvrp
- - bridge-binding
- -
- name: ifla-vlan-qos-mapping
- type: struct
- members:
- -
- name: from
- type: u32
- -
- name: to
- type: u32
- -
- name: ifla-geneve-port-range
- type: struct
- members:
- -
- name: low
- type: u16
- byte-order: big-endian
- -
- name: high
- type: u16
- byte-order: big-endian
- -
- name: ifla-vf-mac
- type: struct
- members:
- -
- name: vf
- type: u32
- -
- name: mac
- type: binary
- len: 32
- -
- name: ifla-vf-vlan
- type: struct
- members:
- -
- name: vf
- type: u32
- -
- name: vlan
- type: u32
- -
- name: qos
- type: u32
- -
- name: ifla-vf-tx-rate
- type: struct
- members:
- -
- name: vf
- type: u32
- -
- name: rate
- type: u32
- -
- name: ifla-vf-spoofchk
- type: struct
- members:
- -
- name: vf
- type: u32
- -
- name: setting
- type: u32
- -
- name: ifla-vf-link-state
- type: struct
- members:
- -
- name: vf
- type: u32
- -
- name: link-state
- type: u32
- enum: ifla-vf-link-state-enum
- -
- name: ifla-vf-link-state-enum
- type: enum
- entries:
- - auto
- - enable
- - disable
- -
- name: ifla-vf-rate
- type: struct
- members:
- -
- name: vf
- type: u32
- -
- name: min-tx-rate
- type: u32
- -
- name: max-tx-rate
- type: u32
- -
- name: ifla-vf-rss-query-en
- type: struct
- members:
- -
- name: vf
- type: u32
- -
- name: setting
- type: u32
- -
- name: ifla-vf-trust
- type: struct
- members:
- -
- name: vf
- type: u32
- -
- name: setting
- type: u32
- -
- name: ifla-vf-guid
- type: struct
- members:
- -
- name: vf
- type: u32
- -
- name: guid
- type: u64
- -
- name: ifla-vf-vlan-info
- type: struct
- members:
- -
- name: vf
- type: u32
- -
- name: vlan
- type: u32
- -
- name: qos
- type: u32
- -
- name: vlan-proto
- type: u32
- -
- name: rtext-filter
- type: flags
- entries:
- - vf
- - brvlan
- - brvlan-compressed
- - skip-stats
- - mrp
- - cfm-config
- - cfm-status
- - mst
- -
- name: netkit-policy
- type: enum
- entries:
- -
- name: forward
- value: 0
- -
- name: blackhole
- value: 2
- -
- name: netkit-mode
- type: enum
- entries:
- - name: l2
- - name: l3
-
- -
- name: netkit-scrub
- type: enum
- entries:
- - name: none
- - name: default
-
-attribute-sets:
- -
- name: link-attrs
- name-prefix: ifla-
- attributes:
- -
- name: address
- type: binary
- display-hint: mac
- -
- name: broadcast
- type: binary
- display-hint: mac
- -
- name: ifname
- type: string
- -
- name: mtu
- type: u32
- -
- name: link
- type: u32
- -
- name: qdisc
- type: string
- -
- name: stats
- type: binary
- struct: rtnl-link-stats
- -
- name: cost
- type: string
- -
- name: priority
- type: string
- -
- name: master
- type: u32
- -
- name: wireless
- type: string
- -
- name: protinfo
- type: string
- -
- name: txqlen
- type: u32
- -
- name: map
- type: binary
- struct: rtnl-link-ifmap
- -
- name: weight
- type: u32
- -
- name: operstate
- type: u8
- -
- name: linkmode
- type: u8
- -
- name: linkinfo
- type: nest
- nested-attributes: linkinfo-attrs
- -
- name: net-ns-pid
- type: u32
- -
- name: ifalias
- type: string
- -
- name: num-vf
- type: u32
- -
- name: vfinfo-list
- type: nest
- nested-attributes: vfinfo-list-attrs
- -
- name: stats64
- type: binary
- struct: rtnl-link-stats64
- -
- name: vf-ports
- type: nest
- nested-attributes: vf-ports-attrs
- -
- name: port-self
- type: nest
- nested-attributes: port-self-attrs
- -
- name: af-spec
- type: nest
- nested-attributes: af-spec-attrs
- -
- name: group
- type: u32
- -
- name: net-ns-fd
- type: u32
- -
- name: ext-mask
- type: u32
- enum: rtext-filter
- enum-as-flags: true
- -
- name: promiscuity
- type: u32
- -
- name: num-tx-queues
- type: u32
- -
- name: num-rx-queues
- type: u32
- -
- name: carrier
- type: u8
- -
- name: phys-port-id
- type: binary
- -
- name: carrier-changes
- type: u32
- -
- name: phys-switch-id
- type: binary
- -
- name: link-netnsid
- type: s32
- -
- name: phys-port-name
- type: string
- -
- name: proto-down
- type: u8
- -
- name: gso-max-segs
- type: u32
- -
- name: gso-max-size
- type: u32
- -
- name: pad
- type: pad
- -
- name: xdp
- type: nest
- nested-attributes: xdp-attrs
- -
- name: event
- type: u32
- -
- name: new-netnsid
- type: s32
- -
- name: target-netnsid
- type: s32
- -
- name: carrier-up-count
- type: u32
- -
- name: carrier-down-count
- type: u32
- -
- name: new-ifindex
- type: s32
- -
- name: min-mtu
- type: u32
- -
- name: max-mtu
- type: u32
- -
- name: prop-list
- type: nest
- nested-attributes: link-attrs
- -
- name: alt-ifname
- type: string
- multi-attr: true
- -
- name: perm-address
- type: binary
- display-hint: mac
- -
- name: proto-down-reason
- type: string
- -
- name: parent-dev-name
- type: string
- -
- name: parent-dev-bus-name
- type: string
- -
- name: gro-max-size
- type: u32
- -
- name: tso-max-size
- type: u32
- -
- name: tso-max-segs
- type: u32
- -
- name: allmulti
- type: u32
- -
- name: devlink-port
- type: binary
- -
- name: gso-ipv4-max-size
- type: u32
- -
- name: gro-ipv4-max-size
- type: u32
- -
- name: dpll-pin
- type: nest
- nested-attributes: link-dpll-pin-attrs
- -
- name: max-pacing-offload-horizon
- type: uint
- doc: EDT offload horizon supported by the device (in nsec).
- -
- name: netns-immutable
- type: u8
- -
- name: af-spec-attrs
- attributes:
- -
- name: "inet"
- type: nest
- value: 2
- nested-attributes: ifla-attrs
- -
- name: "inet6"
- type: nest
- value: 10
- nested-attributes: ifla6-attrs
- -
- name: "mctp"
- type: nest
- value: 45
- nested-attributes: mctp-attrs
- -
- name: vfinfo-list-attrs
- attributes:
- -
- name: info
- type: nest
- nested-attributes: vfinfo-attrs
- multi-attr: true
- -
- name: vfinfo-attrs
- attributes:
- -
- name: mac
- type: binary
- struct: ifla-vf-mac
- -
- name: vlan
- type: binary
- struct: ifla-vf-vlan
- -
- name: tx-rate
- type: binary
- struct: ifla-vf-tx-rate
- -
- name: spoofchk
- type: binary
- struct: ifla-vf-spoofchk
- -
- name: link-state
- type: binary
- struct: ifla-vf-link-state
- -
- name: rate
- type: binary
- struct: ifla-vf-rate
- -
- name: rss-query-en
- type: binary
- struct: ifla-vf-rss-query-en
- -
- name: stats
- type: nest
- nested-attributes: vf-stats-attrs
- -
- name: trust
- type: binary
- struct: ifla-vf-trust
- -
- name: ib-node-guid
- type: binary
- struct: ifla-vf-guid
- -
- name: ib-port-guid
- type: binary
- struct: ifla-vf-guid
- -
- name: vlan-list
- type: nest
- nested-attributes: vf-vlan-attrs
- -
- name: broadcast
- type: binary
- -
- name: vf-stats-attrs
- attributes:
- -
- name: rx-packets
- type: u64
- value: 0
- -
- name: tx-packets
- type: u64
- -
- name: rx-bytes
- type: u64
- -
- name: tx-bytes
- type: u64
- -
- name: broadcast
- type: u64
- -
- name: multicast
- type: u64
- -
- name: pad
- type: pad
- -
- name: rx-dropped
- type: u64
- -
- name: tx-dropped
- type: u64
- -
- name: vf-vlan-attrs
- attributes:
- -
- name: info
- type: binary
- struct: ifla-vf-vlan-info
- multi-attr: true
- -
- name: vf-ports-attrs
- attributes: []
- -
- name: port-self-attrs
- attributes: []
- -
- name: linkinfo-attrs
- attributes:
- -
- name: kind
- type: string
- -
- name: data
- type: sub-message
- sub-message: linkinfo-data-msg
- selector: kind
- -
- name: xstats
- type: binary
- -
- name: slave-kind
- type: string
- -
- name: slave-data
- type: sub-message
- sub-message: linkinfo-member-data-msg
- selector: slave-kind
- -
- name: linkinfo-bond-attrs
- name-prefix: ifla-bond-
- attributes:
- -
- name: mode
- type: u8
- -
- name: active-slave
- type: u32
- -
- name: miimon
- type: u32
- -
- name: updelay
- type: u32
- -
- name: downdelay
- type: u32
- -
- name: use-carrier
- type: u8
- -
- name: arp-interval
- type: u32
- -
- name: arp-ip-target
- type: indexed-array
- sub-type: u32
- byte-order: big-endian
- display-hint: ipv4
- -
- name: arp-validate
- type: u32
- -
- name: arp-all-targets
- type: u32
- -
- name: primary
- type: u32
- -
- name: primary-reselect
- type: u8
- -
- name: fail-over-mac
- type: u8
- -
- name: xmit-hash-policy
- type: u8
- -
- name: resend-igmp
- type: u32
- -
- name: num-peer-notif
- type: u8
- -
- name: all-slaves-active
- type: u8
- -
- name: min-links
- type: u32
- -
- name: lp-interval
- type: u32
- -
- name: packets-per-slave
- type: u32
- -
- name: ad-lacp-rate
- type: u8
- -
- name: ad-select
- type: u8
- -
- name: ad-info
- type: nest
- nested-attributes: bond-ad-info-attrs
- -
- name: ad-actor-sys-prio
- type: u16
- -
- name: ad-user-port-key
- type: u16
- -
- name: ad-actor-system
- type: binary
- display-hint: mac
- -
- name: tlb-dynamic-lb
- type: u8
- -
- name: peer-notif-delay
- type: u32
- -
- name: ad-lacp-active
- type: u8
- -
- name: missed-max
- type: u8
- -
- name: ns-ip6-target
- type: indexed-array
- sub-type: binary
- display-hint: ipv6
- -
- name: coupled-control
- type: u8
- -
- name: bond-ad-info-attrs
- name-prefix: ifla-bond-ad-info-
- attributes:
- -
- name: aggregator
- type: u16
- -
- name: num-ports
- type: u16
- -
- name: actor-key
- type: u16
- -
- name: partner-key
- type: u16
- -
- name: partner-mac
- type: binary
- display-hint: mac
- -
- name: bond-slave-attrs
- name-prefix: ifla-bond-slave-
- attributes:
- -
- name: state
- type: u8
- -
- name: mii-status
- type: u8
- -
- name: link-failure-count
- type: u32
- -
- name: perm-hwaddr
- type: binary
- display-hint: mac
- -
- name: queue-id
- type: u16
- -
- name: ad-aggregator-id
- type: u16
- -
- name: ad-actor-oper-port-state
- type: u8
- -
- name: ad-partner-oper-port-state
- type: u16
- -
- name: prio
- type: u32
- -
- name: linkinfo-bridge-attrs
- name-prefix: ifla-br-
- attributes:
- -
- name: forward-delay
- type: u32
- -
- name: hello-time
- type: u32
- -
- name: max-age
- type: u32
- -
- name: ageing-time
- type: u32
- -
- name: stp-state
- type: u32
- -
- name: priority
- type: u16
- -
- name: vlan-filtering
- type: u8
- -
- name: vlan-protocol
- type: u16
- -
- name: group-fwd-mask
- type: u16
- -
- name: root-id
- type: binary
- struct: ifla-bridge-id
- -
- name: bridge-id
- type: binary
- struct: ifla-bridge-id
- -
- name: root-port
- type: u16
- -
- name: root-path-cost
- type: u32
- -
- name: topology-change
- type: u8
- -
- name: topology-change-detected
- type: u8
- -
- name: hello-timer
- type: u64
- -
- name: tcn-timer
- type: u64
- -
- name: topology-change-timer
- type: u64
- -
- name: gc-timer
- type: u64
- -
- name: group-addr
- type: binary
- display-hint: mac
- -
- name: fdb-flush
- type: binary
- -
- name: mcast-router
- type: u8
- -
- name: mcast-snooping
- type: u8
- -
- name: mcast-query-use-ifaddr
- type: u8
- -
- name: mcast-querier
- type: u8
- -
- name: mcast-hash-elasticity
- type: u32
- -
- name: mcast-hash-max
- type: u32
- -
- name: mcast-last-member-cnt
- type: u32
- -
- name: mcast-startup-query-cnt
- type: u32
- -
- name: mcast-last-member-intvl
- type: u64
- -
- name: mcast-membership-intvl
- type: u64
- -
- name: mcast-querier-intvl
- type: u64
- -
- name: mcast-query-intvl
- type: u64
- -
- name: mcast-query-response-intvl
- type: u64
- -
- name: mcast-startup-query-intvl
- type: u64
- -
- name: nf-call-iptables
- type: u8
- -
- name: nf-call-ip6-tables
- type: u8
- -
- name: nf-call-arptables
- type: u8
- -
- name: vlan-default-pvid
- type: u16
- -
- name: pad
- type: pad
- -
- name: vlan-stats-enabled
- type: u8
- -
- name: mcast-stats-enabled
- type: u8
- -
- name: mcast-igmp-version
- type: u8
- -
- name: mcast-mld-version
- type: u8
- -
- name: vlan-stats-per-port
- type: u8
- -
- name: multi-boolopt
- type: binary
- struct: br-boolopt-multi
- -
- name: mcast-querier-state
- type: binary
- -
- name: fdb-n-learned
- type: u32
- -
- name: fdb-max-learned
- type: u32
- -
- 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-vti-attrs
- name-prefix: ifla-vti-
- attributes:
- -
- name: link
- type: u32
- -
- name: ikey
- type: u32
- -
- name: okey
- type: u32
- -
- name: local
- type: binary
- display-hint: ipv4
- -
- name: remote
- type: binary
- display-hint: ipv4
- -
- name: fwmark
- type: u32
- -
- name: linkinfo-vti6-attrs
- subset-of: linkinfo-vti-attrs
- attributes:
- -
- name: link
- -
- name: ikey
- -
- name: okey
- -
- name: local
- display-hint: ipv6
- -
- name: remote
- display-hint: ipv6
- -
- name: fwmark
- -
- 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: port-range
- type: binary
- struct: ifla-geneve-port-range
- -
- 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-ip6tnl-attrs
- subset-of: linkinfo-iptun-attrs
- attributes:
- -
- name: link
- -
- name: local
- display-hint: ipv6
- -
- name: remote
- display-hint: ipv6
- -
- name: ttl
- -
- name: encap-limit
- -
- name: flowinfo
- -
- name: flags
- # ip6tnl unlike ipip and sit has 32b flags
- type: u32
- -
- name: proto
- -
- name: encap-type
- -
- name: encap-flags
- -
- name: encap-sport
- -
- name: encap-dport
- -
- name: collect-metadata
- -
- name: fwmark
- -
- 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-vlan-attrs
- name-prefix: ifla-vlan-
- attributes:
- -
- name: id
- type: u16
- -
- name: flag
- type: binary
- struct: ifla-vlan-flags
- -
- name: egress-qos
- type: nest
- nested-attributes: ifla-vlan-qos
- -
- name: ingress-qos
- type: nest
- nested-attributes: ifla-vlan-qos
- -
- name: protocol
- type: u16
- enum: vlan-protocols
- byte-order: big-endian
- -
- name: ifla-vlan-qos
- name-prefix: ifla-vlan-qos
- attributes:
- -
- name: mapping
- type: binary
- multi-attr: true
- struct: ifla-vlan-qos-mapping
- -
- name: linkinfo-vrf-attrs
- name-prefix: ifla-vrf-
- attributes:
- -
- name: table
- type: u32
- -
- name: xdp-attrs
- attributes:
- -
- name: fd
- type: s32
- -
- name: attached
- type: u8
- -
- name: flags
- type: u32
- -
- name: prog-id
- type: u32
- -
- name: drv-prog-id
- type: u32
- -
- name: skb-prog-id
- type: u32
- -
- name: hw-prog-id
- type: u32
- -
- name: expected-fd
- type: s32
- -
- name: ifla-attrs
- attributes:
- -
- name: conf
- type: binary
- struct: ipv4-devconf
- -
- name: ifla6-attrs
- attributes:
- -
- name: flags
- type: u32
- -
- name: conf
- type: binary
- struct: ipv6-devconf
- -
- name: stats
- type: binary
- struct: ifla-inet6-stats
- -
- name: mcast
- type: binary
- -
- name: cacheinfo
- type: binary
- struct: ifla-cacheinfo
- -
- name: icmp6-stats
- type: binary
- struct: ifla-icmp6-stats
- -
- name: token
- type: binary
- -
- name: addr-gen-mode
- type: u8
- -
- name: ra-mtu
- type: u32
- -
- name: mctp-attrs
- attributes:
- -
- name: mctp-net
- type: u32
- -
- name: phys-binding
- type: u8
- -
- name: stats-attrs
- name-prefix: ifla-stats-
- attributes:
- -
- name: link-64
- type: binary
- struct: rtnl-link-stats64
- -
- name: link-xstats
- type: binary
- -
- name: link-xstats-slave
- type: binary
- -
- name: link-offload-xstats
- type: nest
- nested-attributes: link-offload-xstats
- -
- name: af-spec
- type: binary
- -
- name: link-offload-xstats
- attributes:
- -
- name: cpu-hit
- type: binary
- -
- name: hw-s-info
- type: indexed-array
- sub-type: nest
- nested-attributes: hw-s-info-one
- -
- name: l3-stats
- type: binary
- -
- name: hw-s-info-one
- attributes:
- -
- name: request
- type: u8
- -
- name: used
- type: u8
- -
- name: link-dpll-pin-attrs
- attributes:
- -
- name: id
- type: u32
- -
- name: linkinfo-netkit-attrs
- name-prefix: ifla-netkit-
- attributes:
- -
- name: peer-info
- type: binary
- -
- name: primary
- type: u8
- -
- name: policy
- type: u32
- enum: netkit-policy
- -
- name: peer-policy
- type: u32
- enum: netkit-policy
- -
- name: mode
- type: u32
- enum: netkit-mode
- -
- name: scrub
- type: u32
- enum: netkit-scrub
- -
- name: peer-scrub
- type: u32
- enum: netkit-scrub
- -
- name: headroom
- type: u16
- -
- name: tailroom
- type: u16
-
-sub-messages:
- -
- name: linkinfo-data-msg
- formats:
- -
- value: bond
- attribute-set: linkinfo-bond-attrs
- -
- 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: ip6tnl
- attribute-set: linkinfo-ip6tnl-attrs
- -
- value: sit
- attribute-set: linkinfo-iptun-attrs
- -
- value: tun
- attribute-set: linkinfo-tun-attrs
- -
- value: vlan
- attribute-set: linkinfo-vlan-attrs
- -
- value: vrf
- attribute-set: linkinfo-vrf-attrs
- -
- value: vti
- attribute-set: linkinfo-vti-attrs
- -
- value: vti6
- attribute-set: linkinfo-vti6-attrs
- -
- value: netkit
- attribute-set: linkinfo-netkit-attrs
- -
- name: linkinfo-member-data-msg
- formats:
- -
- value: bridge
- attribute-set: linkinfo-brport-attrs
- -
- value: bond
- attribute-set: bond-slave-attrs
-
-operations:
- enum-model: directional
- list:
- -
- name: newlink
- doc: Create a new link.
- attribute-set: link-attrs
- fixed-header: ifinfomsg
- do:
- request:
- value: 16
- attributes: &link-new-attrs
- - ifi-index
- - ifname
- - net-ns-pid
- - net-ns-fd
- - target-netnsid
- - link-netnsid
- - linkinfo
- - group
- - num-tx-queues
- - num-rx-queues
- - address
- - broadcast
- - mtu
- - txqlen
- - operstate
- - linkmode
- - group
- - gso-max-size
- - gso-max-segs
- - gro-max-size
- - gso-ipv4-max-size
- - gro-ipv4-max-size
- - af-spec
- -
- name: dellink
- doc: Delete an existing link.
- attribute-set: link-attrs
- fixed-header: ifinfomsg
- do:
- request:
- value: 17
- attributes:
- - ifi-index
- - ifname
- -
- name: getlink
- doc: Get / dump information about a link.
- attribute-set: link-attrs
- fixed-header: ifinfomsg
- do:
- request:
- value: 18
- attributes:
- - ifi-index
- - ifname
- - alt-ifname
- - ext-mask
- - target-netnsid
- reply:
- value: 16
- attributes: &link-all-attrs
- - ifi-family
- - ifi-type
- - ifi-index
- - ifi-flags
- - ifi-change
- - address
- - broadcast
- - ifname
- - mtu
- - link
- - qdisc
- - stats
- - cost
- - priority
- - master
- - wireless
- - protinfo
- - txqlen
- - map
- - weight
- - operstate
- - linkmode
- - linkinfo
- - net-ns-pid
- - ifalias
- - num-vf
- - vfinfo-list
- - stats64
- - vf-ports
- - port-self
- - af-spec
- - group
- - net-ns-fd
- - ext-mask
- - promiscuity
- - num-tx-queues
- - num-rx-queues
- - carrier
- - phys-port-id
- - carrier-changes
- - phys-switch-id
- - link-netnsid
- - phys-port-name
- - proto-down
- - gso-max-segs
- - gso-max-size
- - pad
- - xdp
- - event
- - new-netnsid
- - if-netnsid
- - target-netnsid
- - carrier-up-count
- - carrier-down-count
- - new-ifindex
- - min-mtu
- - max-mtu
- - prop-list
- - alt-ifname
- - perm-address
- - proto-down-reason
- - parent-dev-name
- - parent-dev-bus-name
- - gro-max-size
- - tso-max-size
- - tso-max-segs
- - allmulti
- - devlink-port
- - gso-ipv4-max-size
- - gro-ipv4-max-size
- dump:
- request:
- value: 18
- attributes:
- - target-netnsid
- - ext-mask
- - master
- - linkinfo
- reply:
- value: 16
- attributes: *link-all-attrs
- -
- name: setlink
- doc: Set information about a link.
- attribute-set: link-attrs
- fixed-header: ifinfomsg
- do:
- request:
- value: 19
- attributes: *link-all-attrs
- -
- name: getstats
- doc: Get / dump link stats.
- attribute-set: stats-attrs
- fixed-header: if_stats_msg
- do:
- request:
- value: 94
- attributes:
- - ifindex
- reply:
- value: 92
- attributes: &link-stats-attrs
- - family
- - ifindex
- - filter-mask
- - link-64
- - link-xstats
- - link-xstats-slave
- - link-offload-xstats
- - af-spec
- dump:
- request:
- value: 94
- reply:
- value: 92
- attributes: *link-stats-attrs
-
-mcast-groups:
- list:
- -
- name: rtnlgrp-link
- value: 1
- -
- name: rtnlgrp-stats
- value: 36
+++ /dev/null
-# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
-
-name: rt-neigh
-protocol: netlink-raw
-protonum: 0
-
-doc:
- IP neighbour management over rtnetlink.
-
-definitions:
- -
- name: ndmsg
- type: struct
- members:
- -
- name: family
- type: u8
- -
- name: pad
- type: pad
- len: 3
- -
- name: ifindex
- type: s32
- -
- name: state
- type: u16
- enum: nud-state
- -
- name: flags
- type: u8
- enum: ntf-flags
- -
- name: type
- type: u8
- enum: rtm-type
- -
- name: ndtmsg
- type: struct
- members:
- -
- name: family
- type: u8
- -
- name: pad
- type: pad
- len: 3
- -
- name: nud-state
- type: flags
- entries:
- - incomplete
- - reachable
- - stale
- - delay
- - probe
- - failed
- - noarp
- - permanent
- -
- name: ntf-flags
- type: flags
- entries:
- - use
- - self
- - master
- - proxy
- - ext-learned
- - offloaded
- - sticky
- - router
- -
- name: ntf-ext-flags
- type: flags
- entries:
- - managed
- - locked
- -
- name: rtm-type
- type: enum
- entries:
- - unspec
- - unicast
- - local
- - broadcast
- - anycast
- - multicast
- - blackhole
- - unreachable
- - prohibit
- - throw
- - nat
- - xresolve
- -
- name: nda-cacheinfo
- type: struct
- members:
- -
- name: confirmed
- type: u32
- -
- name: used
- type: u32
- -
- name: updated
- type: u32
- -
- name: refcnt
- type: u32
- -
- name: ndt-config
- type: struct
- members:
- -
- name: key-len
- type: u16
- -
- name: entry-size
- type: u16
- -
- name: entries
- type: u32
- -
- name: last-flush
- type: u32
- -
- name: last-rand
- type: u32
- -
- name: hash-rnd
- type: u32
- -
- name: hash-mask
- type: u32
- -
- name: hash-chain-gc
- type: u32
- -
- name: proxy-qlen
- type: u32
- -
- name: ndt-stats
- type: struct
- members:
- -
- name: allocs
- type: u64
- -
- name: destroys
- type: u64
- -
- name: hash-grows
- type: u64
- -
- name: res-failed
- type: u64
- -
- name: lookups
- type: u64
- -
- name: hits
- type: u64
- -
- name: rcv-probes-mcast
- type: u64
- -
- name: rcv-probes-ucast
- type: u64
- -
- name: periodic-gc-runs
- type: u64
- -
- name: forced-gc-runs
- type: u64
- -
- name: table-fulls
- type: u64
-
-attribute-sets:
- -
- name: neighbour-attrs
- attributes:
- -
- name: unspec
- type: binary
- value: 0
- -
- name: dst
- type: binary
- display-hint: ipv4
- -
- name: lladr
- type: binary
- display-hint: mac
- -
- name: cacheinfo
- type: binary
- struct: nda-cacheinfo
- -
- name: probes
- type: u32
- -
- name: vlan
- type: u16
- -
- name: port
- type: u16
- -
- name: vni
- type: u32
- -
- name: ifindex
- type: u32
- -
- name: master
- type: u32
- -
- name: link-netnsid
- type: s32
- -
- name: src-vni
- type: u32
- -
- name: protocol
- type: u8
- -
- name: nh-id
- type: u32
- -
- name: fdb-ext-attrs
- type: binary
- -
- name: flags-ext
- type: u32
- enum: ntf-ext-flags
- -
- name: ndm-state-mask
- type: u16
- -
- name: ndm-flags-mask
- type: u8
- -
- name: ndt-attrs
- attributes:
- -
- name: name
- type: string
- -
- name: thresh1
- type: u32
- -
- name: thresh2
- type: u32
- -
- name: thresh3
- type: u32
- -
- name: config
- type: binary
- struct: ndt-config
- -
- name: parms
- type: nest
- nested-attributes: ndtpa-attrs
- -
- name: stats
- type: binary
- struct: ndt-stats
- -
- name: gc-interval
- type: u64
- -
- name: pad
- type: pad
- -
- name: ndtpa-attrs
- attributes:
- -
- name: ifindex
- type: u32
- -
- name: refcnt
- type: u32
- -
- name: reachable-time
- type: u64
- -
- name: base-reachable-time
- type: u64
- -
- name: retrans-time
- type: u64
- -
- name: gc-staletime
- type: u64
- -
- name: delay-probe-time
- type: u64
- -
- name: queue-len
- type: u32
- -
- name: app-probes
- type: u32
- -
- name: ucast-probes
- type: u32
- -
- name: mcast-probes
- type: u32
- -
- name: anycast-delay
- type: u64
- -
- name: proxy-delay
- type: u64
- -
- name: proxy-qlen
- type: u32
- -
- name: locktime
- type: u64
- -
- name: queue-lenbytes
- type: u32
- -
- name: mcast-reprobes
- type: u32
- -
- name: pad
- type: pad
- -
- name: interval-probe-time-ms
- type: u64
-
-operations:
- enum-model: directional
- list:
- -
- name: newneigh
- doc: Add new neighbour entry
- fixed-header: ndmsg
- attribute-set: neighbour-attrs
- do:
- request:
- value: 28
- attributes: &neighbour-all
- - dst
- - lladdr
- - probes
- - vlan
- - port
- - vni
- - ifindex
- - master
- - protocol
- - nh-id
- - flags-ext
- - fdb-ext-attrs
- -
- name: delneigh
- doc: Remove an existing neighbour entry
- fixed-header: ndmsg
- attribute-set: neighbour-attrs
- do:
- request:
- value: 29
- attributes:
- - dst
- - ifindex
- -
- name: delneigh-ntf
- doc: Notify a neighbour deletion
- value: 29
- notify: delneigh
- fixed-header: ndmsg
- -
- name: getneigh
- doc: Get or dump neighbour entries
- fixed-header: ndmsg
- attribute-set: neighbour-attrs
- do:
- request:
- value: 30
- attributes:
- - dst
- reply:
- value: 28
- attributes: *neighbour-all
- dump:
- request:
- attributes:
- - ifindex
- - master
- reply:
- attributes: *neighbour-all
- -
- name: newneigh-ntf
- doc: Notify a neighbour creation
- value: 28
- notify: getneigh
- fixed-header: ndmsg
- -
- name: getneightbl
- doc: Get or dump neighbour tables
- fixed-header: ndtmsg
- attribute-set: ndt-attrs
- dump:
- request:
- value: 66
- reply:
- value: 64
- attributes:
- - name
- - thresh1
- - thresh2
- - thresh3
- - config
- - parms
- - stats
- - gc-interval
- -
- name: setneightbl
- doc: Set neighbour tables
- fixed-header: ndtmsg
- attribute-set: ndt-attrs
- do:
- request:
- value: 67
- attributes:
- - name
- - thresh1
- - thresh2
- - thresh3
- - parms
- - gc-interval
-
-mcast-groups:
- list:
- -
- name: rtnlgrp-neigh
- value: 3
+++ /dev/null
-# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
-
-name: rt-route
-protocol: netlink-raw
-protonum: 0
-
-doc:
- Route configuration over rtnetlink.
-
-definitions:
- -
- name: rtm-type
- name-prefix: rtn-
- type: enum
- entries:
- - unspec
- - unicast
- - local
- - broadcast
- - anycast
- - multicast
- - blackhole
- - unreachable
- - prohibit
- - throw
- - nat
- - xresolve
- -
- name: rtmsg
- type: struct
- members:
- -
- name: rtm-family
- type: u8
- -
- name: rtm-dst-len
- type: u8
- -
- name: rtm-src-len
- type: u8
- -
- name: rtm-tos
- type: u8
- -
- name: rtm-table
- type: u8
- -
- name: rtm-protocol
- type: u8
- -
- name: rtm-scope
- type: u8
- -
- name: rtm-type
- type: u8
- enum: rtm-type
- -
- name: rtm-flags
- type: u32
- -
- name: rta-cacheinfo
- type: struct
- members:
- -
- name: rta-clntref
- type: u32
- -
- name: rta-lastuse
- type: u32
- -
- name: rta-expires
- type: u32
- -
- name: rta-error
- type: u32
- -
- name: rta-used
- type: u32
-
-attribute-sets:
- -
- name: route-attrs
- name-prefix: rta-
- attributes:
- -
- name: dst
- type: binary
- display-hint: ipv4
- -
- name: src
- type: binary
- display-hint: ipv4
- -
- name: iif
- type: u32
- -
- name: oif
- type: u32
- -
- name: gateway
- type: binary
- display-hint: ipv4
- -
- name: priority
- type: u32
- -
- name: prefsrc
- type: binary
- display-hint: ipv4
- -
- name: metrics
- type: nest
- nested-attributes: metrics
- -
- name: multipath
- type: binary
- -
- name: protoinfo # not used
- type: binary
- -
- name: flow
- type: u32
- -
- name: cacheinfo
- type: binary
- struct: rta-cacheinfo
- -
- name: session # not used
- type: binary
- -
- name: mp-algo # not used
- type: binary
- -
- name: table
- type: u32
- -
- name: mark
- type: u32
- -
- name: mfc-stats
- type: binary
- -
- name: via
- type: binary
- -
- name: newdst
- type: binary
- -
- name: pref
- type: u8
- -
- name: encap-type
- type: u16
- -
- name: encap
- type: binary # tunnel specific nest
- -
- name: expires
- type: u32
- -
- name: pad
- type: binary
- -
- name: uid
- type: u32
- -
- name: ttl-propagate
- type: u8
- -
- name: ip-proto
- type: u8
- -
- name: sport
- type: u16
- -
- name: dport
- type: u16
- -
- name: nh-id
- type: u32
- -
- name: flowlabel
- type: u32
- byte-order: big-endian
- display-hint: hex
- -
- name: metrics
- name-prefix: rtax-
- attributes:
- -
- name: unspec
- type: unused
- value: 0
- -
- name: lock
- type: u32
- -
- name: mtu
- type: u32
- -
- name: window
- type: u32
- -
- name: rtt
- type: u32
- -
- name: rttvar
- type: u32
- -
- name: ssthresh
- type: u32
- -
- name: cwnd
- type: u32
- -
- name: advmss
- type: u32
- -
- name: reordering
- type: u32
- -
- name: hoplimit
- type: u32
- -
- name: initcwnd
- type: u32
- -
- name: features
- type: u32
- -
- name: rto-min
- type: u32
- -
- name: initrwnd
- type: u32
- -
- name: quickack
- type: u32
- -
- name: cc-algo
- type: string
- -
- name: fastopen-no-cookie
- type: u32
-
-operations:
- enum-model: directional
- list:
- -
- name: getroute
- doc: Dump route information.
- attribute-set: route-attrs
- fixed-header: rtmsg
- do:
- request:
- value: 26
- attributes:
- - rtm-family
- - src
- - rtm-src-len
- - dst
- - rtm-dst-len
- - iif
- - oif
- - ip-proto
- - sport
- - dport
- - mark
- - uid
- - flowlabel
- reply:
- value: 24
- attributes: &all-route-attrs
- - rtm-family
- - rtm-dst-len
- - rtm-src-len
- - rtm-tos
- - rtm-table
- - rtm-protocol
- - rtm-scope
- - rtm-type
- - rtm-flags
- - dst
- - src
- - iif
- - oif
- - gateway
- - priority
- - prefsrc
- - metrics
- - multipath
- - flow
- - cacheinfo
- - table
- - mark
- - mfc-stats
- - via
- - newdst
- - pref
- - encap-type
- - encap
- - expires
- - pad
- - uid
- - ttl-propagate
- - ip-proto
- - sport
- - dport
- - nh-id
- - flowlabel
- dump:
- request:
- value: 26
- attributes:
- - rtm-family
- reply:
- value: 24
- attributes: *all-route-attrs
- -
- name: newroute
- doc: Create a new route
- attribute-set: route-attrs
- fixed-header: rtmsg
- do:
- request:
- value: 24
- attributes: *all-route-attrs
- -
- name: delroute
- doc: Delete an existing route
- attribute-set: route-attrs
- fixed-header: rtmsg
- do:
- request:
- value: 25
- attributes: *all-route-attrs
+++ /dev/null
-# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
-
-name: rt-rule
-protocol: netlink-raw
-protonum: 0
-
-doc:
- FIB rule management over rtnetlink.
-
-definitions:
- -
- name: rtgenmsg
- type: struct
- members:
- -
- name: family
- type: u8
- -
- name: pad
- type: pad
- len: 3
- -
- name: fib-rule-hdr
- type: struct
- members:
- -
- name: family
- type: u8
- -
- name: dst-len
- type: u8
- -
- name: src-len
- type: u8
- -
- name: tos
- type: u8
- -
- name: table
- type: u8
- -
- name: res1
- type: pad
- len: 1
- -
- name: res2
- type: pad
- len: 1
- -
- name: action
- type: u8
- enum: fr-act
- -
- name: flags
- type: u32
- -
- name: fr-act
- type: enum
- entries:
- - unspec
- - to-tbl
- - goto
- - nop
- - res3
- - res4
- - blackhole
- - unreachable
- - prohibit
- -
- name: fib-rule-port-range
- type: struct
- members:
- -
- name: start
- type: u16
- -
- name: end
- type: u16
- -
- name: fib-rule-uid-range
- type: struct
- members:
- -
- name: start
- type: u32
- -
- name: end
- type: u32
-
-attribute-sets:
- -
- name: fib-rule-attrs
- attributes:
- -
- name: dst
- type: u32
- -
- name: src
- type: u32
- -
- name: iifname
- type: string
- -
- name: goto
- type: u32
- -
- name: unused2
- type: pad
- -
- name: priority
- type: u32
- -
- name: unused3
- type: pad
- -
- name: unused4
- type: pad
- -
- name: unused5
- type: pad
- -
- name: fwmark
- type: u32
- display-hint: hex
- -
- name: flow
- type: u32
- -
- name: tun-id
- type: u64
- -
- name: suppress-ifgroup
- type: u32
- -
- name: suppress-prefixlen
- type: u32
- display-hint: hex
- -
- name: table
- type: u32
- -
- name: fwmask
- type: u32
- display-hint: hex
- -
- name: oifname
- type: string
- -
- name: pad
- type: pad
- -
- name: l3mdev
- type: u8
- -
- name: uid-range
- type: binary
- struct: fib-rule-uid-range
- -
- name: protocol
- type: u8
- -
- name: ip-proto
- type: u8
- -
- name: sport-range
- type: binary
- struct: fib-rule-port-range
- -
- name: dport-range
- type: binary
- struct: fib-rule-port-range
- -
- name: dscp
- type: u8
- -
- name: flowlabel
- type: u32
- byte-order: big-endian
- display-hint: hex
- -
- name: flowlabel-mask
- type: u32
- byte-order: big-endian
- display-hint: hex
- -
- name: sport-mask
- type: u16
- display-hint: hex
- -
- name: dport-mask
- type: u16
- display-hint: hex
- -
- name: dscp-mask
- type: u8
- display-hint: hex
-
-operations:
- enum-model: directional
- fixed-header: fib-rule-hdr
- list:
- -
- name: newrule
- doc: Add new FIB rule
- attribute-set: fib-rule-attrs
- do:
- request:
- value: 32
- attributes: &fib-rule-all
- - iifname
- - oifname
- - priority
- - fwmark
- - flow
- - tun-id
- - fwmask
- - table
- - suppress-prefixlen
- - suppress-ifgroup
- - goto
- - l3mdev
- - uid-range
- - protocol
- - ip-proto
- - sport-range
- - dport-range
- - dscp
- - flowlabel
- - flowlabel-mask
- - sport-mask
- - dport-mask
- - dscp-mask
- -
- name: newrule-ntf
- doc: Notify a rule creation
- value: 32
- notify: newrule
- -
- name: delrule
- doc: Remove an existing FIB rule
- attribute-set: fib-rule-attrs
- do:
- request:
- value: 33
- attributes: *fib-rule-all
- -
- name: delrule-ntf
- doc: Notify a rule deletion
- value: 33
- notify: delrule
- -
- name: getrule
- doc: Dump all FIB rules
- attribute-set: fib-rule-attrs
- dump:
- request:
- value: 34
- reply:
- value: 32
- attributes: *fib-rule-all
-
-mcast-groups:
- list:
- -
- name: rtnlgrp-ipv4-rule
- value: 8
- -
- name: rtnlgrp-ipv6-rule
- value: 19
------------
Several raw netlink families such as
-:doc:`rt_link<../../networking/netlink_spec/rt_link>` and
+:doc:`rt-link<../../networking/netlink_spec/rt-link>` and
:doc:`tc<../../networking/netlink_spec/tc>` use attribute nesting as an
abstraction to carry module specific information.
class RtnlFamily(YnlFamily):
def __init__(self, recv_size=0):
- super().__init__((SPEC_PATH / Path('rt_link.yaml')).as_posix(),
+ super().__init__((SPEC_PATH / Path('rt-link.yaml')).as_posix(),
schema='', recv_size=recv_size)
class RtnlAddrFamily(YnlFamily):
def __init__(self, recv_size=0):
- super().__init__((SPEC_PATH / Path('rt_addr.yaml')).as_posix(),
+ super().__init__((SPEC_PATH / Path('rt-addr.yaml')).as_posix(),
schema='', recv_size=recv_size)
class NetdevFamily(YnlFamily):