xref: /linux/Documentation/netlink/specs/rt_link.yaml (revision f858cc9eed5b05cbe38d7ffd2787c21e3718eb7d)
1# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
2
3name: rt-link
4protocol: netlink-raw
5protonum: 0
6
7doc:
8  Link configuration over rtnetlink.
9
10definitions:
11  -
12    name: ifinfo-flags
13    type: flags
14    entries:
15      -
16        name: up
17      -
18        name: broadcast
19      -
20        name: debug
21      -
22        name: loopback
23      -
24        name: point-to-point
25      -
26        name: no-trailers
27      -
28        name: running
29      -
30        name: no-arp
31      -
32        name: promisc
33      -
34        name: all-multi
35      -
36        name: master
37      -
38        name: slave
39      -
40        name: multicast
41      -
42        name: portsel
43      -
44        name: auto-media
45      -
46        name: dynamic
47      -
48        name: lower-up
49      -
50        name: dormant
51      -
52        name: echo
53  -
54    name: vlan-protocols
55    type: enum
56    entries:
57      -
58        name: 8021q
59        value: 33024
60      -
61        name: 8021ad
62        value: 34984
63  -
64    name: rtgenmsg
65    type: struct
66    members:
67      -
68        name: family
69        type: u8
70  -
71    name: ifinfomsg
72    type: struct
73    members:
74      -
75        name: ifi-family
76        type: u8
77      -
78        name: pad
79        type: pad
80        len: 1
81      -
82        name: ifi-type
83        type: u16
84      -
85        name: ifi-index
86        type: s32
87      -
88        name: ifi-flags
89        type: u32
90        enum: ifinfo-flags
91        enum-as-flags: true
92      -
93        name: ifi-change
94        type: u32
95  -
96    name: ifla-bridge-id
97    type: struct
98    members:
99      -
100        name: prio
101        type: u16
102      -
103        name: addr
104        type: binary
105        len: 6
106        display-hint: mac
107  -
108    name: ifla-cacheinfo
109    type: struct
110    members:
111      -
112        name: max-reasm-len
113        type: u32
114      -
115        name: tstamp
116        type: u32
117      -
118        name: reachable-time
119        type: s32
120      -
121        name: retrans-time
122        type: u32
123  -
124    name: rtnl-link-stats
125    type: struct
126    members:
127      -
128        name: rx-packets
129        type: u32
130      -
131        name: tx-packets
132        type: u32
133      -
134        name: rx-bytes
135        type: u32
136      -
137        name: tx-bytes
138        type: u32
139      -
140        name: rx-errors
141        type: u32
142      -
143        name: tx-errors
144        type: u32
145      -
146        name: rx-dropped
147        type: u32
148      -
149        name: tx-dropped
150        type: u32
151      -
152        name: multicast
153        type: u32
154      -
155        name: collisions
156        type: u32
157      -
158        name: rx-length-errors
159        type: u32
160      -
161        name: rx-over-errors
162        type: u32
163      -
164        name: rx-crc-errors
165        type: u32
166      -
167        name: rx-frame-errors
168        type: u32
169      -
170        name: rx-fifo-errors
171        type: u32
172      -
173        name: rx-missed-errors
174        type: u32
175      -
176        name: tx-aborted-errors
177        type: u32
178      -
179        name: tx-carrier-errors
180        type: u32
181      -
182        name: tx-fifo-errors
183        type: u32
184      -
185        name: tx-heartbeat-errors
186        type: u32
187      -
188        name: tx-window-errors
189        type: u32
190      -
191        name: rx-compressed
192        type: u32
193      -
194        name: tx-compressed
195        type: u32
196      -
197        name: rx-nohandler
198        type: u32
199  -
200    name: rtnl-link-stats64
201    type: struct
202    members:
203      -
204        name: rx-packets
205        type: u64
206      -
207        name: tx-packets
208        type: u64
209      -
210        name: rx-bytes
211        type: u64
212      -
213        name: tx-bytes
214        type: u64
215      -
216        name: rx-errors
217        type: u64
218      -
219        name: tx-errors
220        type: u64
221      -
222        name: rx-dropped
223        type: u64
224      -
225        name: tx-dropped
226        type: u64
227      -
228        name: multicast
229        type: u64
230      -
231        name: collisions
232        type: u64
233      -
234        name: rx-length-errors
235        type: u64
236      -
237        name: rx-over-errors
238        type: u64
239      -
240        name: rx-crc-errors
241        type: u64
242      -
243        name: rx-frame-errors
244        type: u64
245      -
246        name: rx-fifo-errors
247        type: u64
248      -
249        name: rx-missed-errors
250        type: u64
251      -
252        name: tx-aborted-errors
253        type: u64
254      -
255        name: tx-carrier-errors
256        type: u64
257      -
258        name: tx-fifo-errors
259        type: u64
260      -
261        name: tx-heartbeat-errors
262        type: u64
263      -
264        name: tx-window-errors
265        type: u64
266      -
267        name: rx-compressed
268        type: u64
269      -
270        name: tx-compressed
271        type: u64
272      -
273        name: rx-nohandler
274        type: u64
275      -
276        name: rx-otherhost-dropped
277        type: u64
278  -
279    name: rtnl-link-ifmap
280    type: struct
281    members:
282      -
283        name: mem-start
284        type: u64
285      -
286        name: mem-end
287        type: u64
288      -
289        name: base-addr
290        type: u64
291      -
292        name: irq
293        type: u16
294      -
295        name: dma
296        type: u8
297      -
298        name: port
299        type: u8
300  -
301    name: ipv4-devconf
302    type: struct
303    members:
304      -
305        name: forwarding
306        type: u32
307      -
308        name: mc-forwarding
309        type: u32
310      -
311        name: proxy-arp
312        type: u32
313      -
314        name: accept-redirects
315        type: u32
316      -
317        name: secure-redirects
318        type: u32
319      -
320        name: send-redirects
321        type: u32
322      -
323        name: shared-media
324        type: u32
325      -
326        name: rp-filter
327        type: u32
328      -
329        name: accept-source-route
330        type: u32
331      -
332        name: bootp-relay
333        type: u32
334      -
335        name: log-martians
336        type: u32
337      -
338        name: tag
339        type: u32
340      -
341        name: arpfilter
342        type: u32
343      -
344        name: medium-id
345        type: u32
346      -
347        name: noxfrm
348        type: u32
349      -
350        name: nopolicy
351        type: u32
352      -
353        name: force-igmp-version
354        type: u32
355      -
356        name: arp-announce
357        type: u32
358      -
359        name: arp-ignore
360        type: u32
361      -
362        name: promote-secondaries
363        type: u32
364      -
365        name: arp-accept
366        type: u32
367      -
368        name: arp-notify
369        type: u32
370      -
371        name: accept-local
372        type: u32
373      -
374        name: src-vmark
375        type: u32
376      -
377        name: proxy-arp-pvlan
378        type: u32
379      -
380        name: route-localnet
381        type: u32
382      -
383        name: igmpv2-unsolicited-report-interval
384        type: u32
385      -
386        name: igmpv3-unsolicited-report-interval
387        type: u32
388      -
389        name: ignore-routes-with-linkdown
390        type: u32
391      -
392        name: drop-unicast-in-l2-multicast
393        type: u32
394      -
395        name: drop-gratuitous-arp
396        type: u32
397      -
398        name: bc-forwarding
399        type: u32
400      -
401        name: arp-evict-nocarrier
402        type: u32
403  -
404    name: ipv6-devconf
405    type: struct
406    members:
407      -
408        name: forwarding
409        type: u32
410      -
411        name: hoplimit
412        type: u32
413      -
414        name: mtu6
415        type: u32
416      -
417        name: accept-ra
418        type: u32
419      -
420        name: accept-redirects
421        type: u32
422      -
423        name: autoconf
424        type: u32
425      -
426        name: dad-transmits
427        type: u32
428      -
429        name: rtr-solicits
430        type: u32
431      -
432        name: rtr-solicit-interval
433        type: u32
434      -
435        name: rtr-solicit-delay
436        type: u32
437      -
438        name: use-tempaddr
439        type: u32
440      -
441        name: temp-valid-lft
442        type: u32
443      -
444        name: temp-prefered-lft
445        type: u32
446      -
447        name: regen-max-retry
448        type: u32
449      -
450        name: max-desync-factor
451        type: u32
452      -
453        name: max-addresses
454        type: u32
455      -
456        name: force-mld-version
457        type: u32
458      -
459        name: accept-ra-defrtr
460        type: u32
461      -
462        name: accept-ra-pinfo
463        type: u32
464      -
465        name: accept-ra-rtr-pref
466        type: u32
467      -
468        name: rtr-probe-interval
469        type: u32
470      -
471        name: accept-ra-rt-info-max-plen
472        type: u32
473      -
474        name: proxy-ndp
475        type: u32
476      -
477        name: optimistic-dad
478        type: u32
479      -
480        name: accept-source-route
481        type: u32
482      -
483        name: mc-forwarding
484        type: u32
485      -
486        name: disable-ipv6
487        type: u32
488      -
489        name: accept-dad
490        type: u32
491      -
492        name: force-tllao
493        type: u32
494      -
495        name: ndisc-notify
496        type: u32
497      -
498        name: mldv1-unsolicited-report-interval
499        type: u32
500      -
501        name: mldv2-unsolicited-report-interval
502        type: u32
503      -
504        name: suppress-frag-ndisc
505        type: u32
506      -
507        name: accept-ra-from-local
508        type: u32
509      -
510        name: use-optimistic
511        type: u32
512      -
513        name: accept-ra-mtu
514        type: u32
515      -
516        name: stable-secret
517        type: u32
518      -
519        name: use-oif-addrs-only
520        type: u32
521      -
522        name: accept-ra-min-hop-limit
523        type: u32
524      -
525        name: ignore-routes-with-linkdown
526        type: u32
527      -
528        name: drop-unicast-in-l2-multicast
529        type: u32
530      -
531        name: drop-unsolicited-na
532        type: u32
533      -
534        name: keep-addr-on-down
535        type: u32
536      -
537        name: rtr-solicit-max-interval
538        type: u32
539      -
540        name: seg6-enabled
541        type: u32
542      -
543        name: seg6-require-hmac
544        type: u32
545      -
546        name: enhanced-dad
547        type: u32
548      -
549        name: addr-gen-mode
550        type: u8
551      -
552        name: disable-policy
553        type: u32
554      -
555        name: accept-ra-rt-info-min-plen
556        type: u32
557      -
558        name: ndisc-tclass
559        type: u32
560      -
561        name: rpl-seg-enabled
562        type: u32
563      -
564        name: ra-defrtr-metric
565        type: u32
566      -
567        name: ioam6-enabled
568        type: u32
569      -
570        name: ioam6-id
571        type: u32
572      -
573        name: ioam6-id-wide
574        type: u32
575      -
576        name: ndisc-evict-nocarrier
577        type: u32
578      -
579        name: accept-untracked-na
580        type: u32
581  -
582    name: ifla-icmp6-stats
583    type: struct
584    members:
585      -
586        name: inmsgs
587        type: u64
588      -
589        name: inerrors
590        type: u64
591      -
592        name: outmsgs
593        type: u64
594      -
595        name: outerrors
596        type: u64
597      -
598        name: csumerrors
599        type: u64
600      -
601        name: ratelimithost
602        type: u64
603  -
604    name: ifla-inet6-stats
605    type: struct
606    members:
607      -
608        name: inpkts
609        type: u64
610      -
611        name: inoctets
612        type: u64
613      -
614        name: indelivers
615        type: u64
616      -
617        name: outforwdatagrams
618        type: u64
619      -
620        name: outpkts
621        type: u64
622      -
623        name: outoctets
624        type: u64
625      -
626        name: inhdrerrors
627        type: u64
628      -
629        name: intoobigerrors
630        type: u64
631      -
632        name: innoroutes
633        type: u64
634      -
635        name: inaddrerrors
636        type: u64
637      -
638        name: inunknownprotos
639        type: u64
640      -
641        name: intruncatedpkts
642        type: u64
643      -
644        name: indiscards
645        type: u64
646      -
647        name: outdiscards
648        type: u64
649      -
650        name: outnoroutes
651        type: u64
652      -
653        name: reasmtimeout
654        type: u64
655      -
656        name: reasmreqds
657        type: u64
658      -
659        name: reasmoks
660        type: u64
661      -
662        name: reasmfails
663        type: u64
664      -
665        name: fragoks
666        type: u64
667      -
668        name: fragfails
669        type: u64
670      -
671        name: fragcreates
672        type: u64
673      -
674        name: inmcastpkts
675        type: u64
676      -
677        name: outmcastpkts
678        type: u64
679      -
680        name: inbcastpkts
681        type: u64
682      -
683        name: outbcastpkts
684        type: u64
685      -
686        name: inmcastoctets
687        type: u64
688      -
689        name: outmcastoctets
690        type: u64
691      -
692        name: inbcastoctets
693        type: u64
694      -
695        name: outbcastoctets
696        type: u64
697      -
698        name: csumerrors
699        type: u64
700      -
701        name: noectpkts
702        type: u64
703      -
704        name: ect1-pkts
705        type: u64
706      -
707        name: ect0-pkts
708        type: u64
709      -
710        name: cepkts
711        type: u64
712      -
713        name: reasm-overlaps
714        type: u64
715  - name: br-boolopt-multi
716    type: struct
717    members:
718      -
719        name: optval
720        type: u32
721      -
722        name: optmask
723        type: u32
724  -
725    name: if_stats_msg
726    type: struct
727    members:
728      -
729        name: family
730        type: u8
731      -
732        name: pad
733        type: pad
734        len: 3
735      -
736        name: ifindex
737        type: u32
738      -
739        name: filter-mask
740        type: u32
741  -
742    name: ifla-vlan-flags
743    type: struct
744    members:
745      -
746        name: flags
747        type: u32
748        enum: vlan-flags
749        enum-as-flags: true
750      -
751        name: mask
752        type: u32
753        display-hint: hex
754  -
755    name: vlan-flags
756    type: flags
757    entries:
758      - reorder-hdr
759      - gvrp
760      - loose-binding
761      - mvrp
762      - bridge-binding
763  -
764    name: ifla-vlan-qos-mapping
765    type: struct
766    members:
767      -
768        name: from
769        type: u32
770      -
771        name: to
772        type: u32
773  -
774    name: ifla-vf-mac
775    type: struct
776    members:
777      -
778        name: vf
779        type: u32
780      -
781        name: mac
782        type: binary
783        len: 32
784  -
785    name: ifla-vf-vlan
786    type: struct
787    members:
788      -
789        name: vf
790        type: u32
791      -
792        name: vlan
793        type: u32
794      -
795        name: qos
796        type: u32
797  -
798    name: ifla-vf-tx-rate
799    type: struct
800    members:
801      -
802        name: vf
803        type: u32
804      -
805        name: rate
806        type: u32
807  -
808    name: ifla-vf-spoofchk
809    type: struct
810    members:
811      -
812        name: vf
813        type: u32
814      -
815        name: setting
816        type: u32
817  -
818    name: ifla-vf-link-state
819    type: struct
820    members:
821      -
822        name: vf
823        type: u32
824      -
825        name: link-state
826        type: u32
827        enum: ifla-vf-link-state-enum
828  -
829    name: ifla-vf-link-state-enum
830    type: enum
831    entries:
832      - auto
833      - enable
834      - disable
835  -
836    name: ifla-vf-rate
837    type: struct
838    members:
839      -
840        name: vf
841        type: u32
842      -
843        name: min-tx-rate
844        type: u32
845      -
846        name: max-tx-rate
847        type: u32
848  -
849    name: ifla-vf-rss-query-en
850    type: struct
851    members:
852      -
853        name: vf
854        type: u32
855      -
856        name: setting
857        type: u32
858  -
859    name: ifla-vf-trust
860    type: struct
861    members:
862      -
863        name: vf
864        type: u32
865      -
866        name: setting
867        type: u32
868  -
869    name: ifla-vf-guid
870    type: struct
871    members:
872      -
873        name: vf
874        type: u32
875      -
876        name: guid
877        type: u64
878  -
879    name: ifla-vf-vlan-info
880    type: struct
881    members:
882      -
883        name: vf
884        type: u32
885      -
886        name: vlan
887        type: u32
888      -
889        name: qos
890        type: u32
891      -
892        name: vlan-proto
893        type: u32
894  -
895    name: rtext-filter
896    type: flags
897    entries:
898      - vf
899      - brvlan
900      - brvlan-compressed
901      - skip-stats
902      - mrp
903      - cfm-config
904      - cfm-status
905      - mst
906  -
907    name: netkit-policy
908    type: enum
909    entries:
910      -
911        name: forward
912        value: 0
913      -
914        name: blackhole
915        value: 2
916  -
917    name: netkit-mode
918    type: enum
919    entries:
920      - name: l2
921      - name: l3
922
923attribute-sets:
924  -
925    name: link-attrs
926    name-prefix: ifla-
927    attributes:
928      -
929        name: address
930        type: binary
931        display-hint: mac
932      -
933        name: broadcast
934        type: binary
935        display-hint: mac
936      -
937        name: ifname
938        type: string
939      -
940        name: mtu
941        type: u32
942      -
943        name: link
944        type: u32
945      -
946        name: qdisc
947        type: string
948      -
949        name: stats
950        type: binary
951        struct: rtnl-link-stats
952      -
953        name: cost
954        type: string
955      -
956        name: priority
957        type: string
958      -
959        name: master
960        type: u32
961      -
962        name: wireless
963        type: string
964      -
965        name: protinfo
966        type: string
967      -
968        name: txqlen
969        type: u32
970      -
971        name: map
972        type: binary
973        struct: rtnl-link-ifmap
974      -
975        name: weight
976        type: u32
977      -
978        name: operstate
979        type: u8
980      -
981        name: linkmode
982        type: u8
983      -
984        name: linkinfo
985        type: nest
986        nested-attributes: linkinfo-attrs
987      -
988        name: net-ns-pid
989        type: u32
990      -
991        name: ifalias
992        type: string
993      -
994        name: num-vf
995        type: u32
996      -
997        name: vfinfo-list
998        type: nest
999        nested-attributes: vfinfo-list-attrs
1000      -
1001        name: stats64
1002        type: binary
1003        struct: rtnl-link-stats64
1004      -
1005        name: vf-ports
1006        type: nest
1007        nested-attributes: vf-ports-attrs
1008      -
1009        name: port-self
1010        type: nest
1011        nested-attributes: port-self-attrs
1012      -
1013        name: af-spec
1014        type: nest
1015        nested-attributes: af-spec-attrs
1016      -
1017        name: group
1018        type: u32
1019      -
1020        name: net-ns-fd
1021        type: u32
1022      -
1023        name: ext-mask
1024        type: u32
1025        enum: rtext-filter
1026        enum-as-flags: true
1027      -
1028        name: promiscuity
1029        type: u32
1030      -
1031        name: num-tx-queues
1032        type: u32
1033      -
1034        name: num-rx-queues
1035        type: u32
1036      -
1037        name: carrier
1038        type: u8
1039      -
1040        name: phys-port-id
1041        type: binary
1042      -
1043        name: carrier-changes
1044        type: u32
1045      -
1046        name: phys-switch-id
1047        type: binary
1048      -
1049        name: link-netnsid
1050        type: s32
1051      -
1052        name: phys-port-name
1053        type: string
1054      -
1055        name: proto-down
1056        type: u8
1057      -
1058        name: gso-max-segs
1059        type: u32
1060      -
1061        name: gso-max-size
1062        type: u32
1063      -
1064        name: pad
1065        type: pad
1066      -
1067        name: xdp
1068        type: nest
1069        nested-attributes: xdp-attrs
1070      -
1071        name: event
1072        type: u32
1073      -
1074        name: new-netnsid
1075        type: s32
1076      -
1077        name: target-netnsid
1078        type: s32
1079      -
1080        name: carrier-up-count
1081        type: u32
1082      -
1083        name: carrier-down-count
1084        type: u32
1085      -
1086        name: new-ifindex
1087        type: s32
1088      -
1089        name: min-mtu
1090        type: u32
1091      -
1092        name: max-mtu
1093        type: u32
1094      -
1095        name: prop-list
1096        type: nest
1097        nested-attributes: link-attrs
1098      -
1099        name: alt-ifname
1100        type: string
1101        multi-attr: true
1102      -
1103        name: perm-address
1104        type: binary
1105        display-hint: mac
1106      -
1107        name: proto-down-reason
1108        type: string
1109      -
1110        name: parent-dev-name
1111        type: string
1112      -
1113        name: parent-dev-bus-name
1114        type: string
1115      -
1116        name: gro-max-size
1117        type: u32
1118      -
1119        name: tso-max-size
1120        type: u32
1121      -
1122        name: tso-max-segs
1123        type: u32
1124      -
1125        name: allmulti
1126        type: u32
1127      -
1128        name: devlink-port
1129        type: binary
1130      -
1131        name: gso-ipv4-max-size
1132        type: u32
1133      -
1134        name: gro-ipv4-max-size
1135        type: u32
1136      -
1137        name: dpll-pin
1138        type: nest
1139        nested-attributes: link-dpll-pin-attrs
1140      -
1141        name: max-pacing-offload-horizon
1142        type: uint
1143        doc: EDT offload horizon supported by the device (in nsec).
1144  -
1145    name: af-spec-attrs
1146    attributes:
1147      -
1148        name: "inet"
1149        type: nest
1150        value: 2
1151        nested-attributes: ifla-attrs
1152      -
1153        name: "inet6"
1154        type: nest
1155        value: 10
1156        nested-attributes: ifla6-attrs
1157      -
1158        name: "mctp"
1159        type: nest
1160        value: 45
1161        nested-attributes: mctp-attrs
1162  -
1163    name: vfinfo-list-attrs
1164    attributes:
1165      -
1166        name: info
1167        type: nest
1168        nested-attributes: vfinfo-attrs
1169        multi-attr: true
1170  -
1171    name: vfinfo-attrs
1172    attributes:
1173      -
1174        name: mac
1175        type: binary
1176        struct: ifla-vf-mac
1177      -
1178        name: vlan
1179        type: binary
1180        struct: ifla-vf-vlan
1181      -
1182        name: tx-rate
1183        type: binary
1184        struct: ifla-vf-tx-rate
1185      -
1186        name: spoofchk
1187        type: binary
1188        struct: ifla-vf-spoofchk
1189      -
1190        name: link-state
1191        type: binary
1192        struct: ifla-vf-link-state
1193      -
1194        name: rate
1195        type: binary
1196        struct: ifla-vf-rate
1197      -
1198        name: rss-query-en
1199        type: binary
1200        struct: ifla-vf-rss-query-en
1201      -
1202        name: stats
1203        type: nest
1204        nested-attributes: vf-stats-attrs
1205      -
1206        name: trust
1207        type: binary
1208        struct: ifla-vf-trust
1209      -
1210        name: ib-node-guid
1211        type: binary
1212        struct: ifla-vf-guid
1213      -
1214        name: ib-port-guid
1215        type: binary
1216        struct: ifla-vf-guid
1217      -
1218        name: vlan-list
1219        type: nest
1220        nested-attributes: vf-vlan-attrs
1221      -
1222        name: broadcast
1223        type: binary
1224  -
1225    name: vf-stats-attrs
1226    attributes:
1227      -
1228        name: rx-packets
1229        type: u64
1230        value: 0
1231      -
1232        name: tx-packets
1233        type: u64
1234      -
1235        name: rx-bytes
1236        type: u64
1237      -
1238        name: tx-bytes
1239        type: u64
1240      -
1241        name: broadcast
1242        type: u64
1243      -
1244        name: multicast
1245        type: u64
1246      -
1247        name: pad
1248        type: pad
1249      -
1250        name: rx-dropped
1251        type: u64
1252      -
1253        name: tx-dropped
1254        type: u64
1255  -
1256    name: vf-vlan-attrs
1257    attributes:
1258      -
1259        name: info
1260        type: binary
1261        struct: ifla-vf-vlan-info
1262        multi-attr: true
1263  -
1264    name: vf-ports-attrs
1265    attributes: []
1266  -
1267    name: port-self-attrs
1268    attributes: []
1269  -
1270    name: linkinfo-attrs
1271    attributes:
1272      -
1273        name: kind
1274        type: string
1275      -
1276        name: data
1277        type: sub-message
1278        sub-message: linkinfo-data-msg
1279        selector: kind
1280      -
1281        name: xstats
1282        type: binary
1283      -
1284        name: slave-kind
1285        type: string
1286      -
1287        name: slave-data
1288        type: sub-message
1289        sub-message: linkinfo-member-data-msg
1290        selector: slave-kind
1291  -
1292    name: linkinfo-bond-attrs
1293    name-prefix: ifla-bond-
1294    attributes:
1295      -
1296        name: mode
1297        type: u8
1298      -
1299        name: active-slave
1300        type: u32
1301      -
1302        name: miimon
1303        type: u32
1304      -
1305        name: updelay
1306        type: u32
1307      -
1308        name: downdelay
1309        type: u32
1310      -
1311        name: use-carrier
1312        type: u8
1313      -
1314        name: arp-interval
1315        type: u32
1316      -
1317        name: arp-ip-target
1318        type: indexed-array
1319        sub-type: u32
1320        byte-order: big-endian
1321        display-hint: ipv4
1322      -
1323        name: arp-validate
1324        type: u32
1325      -
1326        name: arp-all-targets
1327        type: u32
1328      -
1329        name: primary
1330        type: u32
1331      -
1332        name: primary-reselect
1333        type: u8
1334      -
1335        name: fail-over-mac
1336        type: u8
1337      -
1338        name: xmit-hash-policy
1339        type: u8
1340      -
1341        name: resend-igmp
1342        type: u32
1343      -
1344        name: num-peer-notif
1345        type: u8
1346      -
1347        name: all-slaves-active
1348        type: u8
1349      -
1350        name: min-links
1351        type: u32
1352      -
1353        name: lp-interval
1354        type: u32
1355      -
1356        name: packets-per-slave
1357        type: u32
1358      -
1359        name: ad-lacp-rate
1360        type: u8
1361      -
1362        name: ad-select
1363        type: u8
1364      -
1365        name: ad-info
1366        type: nest
1367        nested-attributes: bond-ad-info-attrs
1368      -
1369        name: ad-actor-sys-prio
1370        type: u16
1371      -
1372        name: ad-user-port-key
1373        type: u16
1374      -
1375        name: ad-actor-system
1376        type: binary
1377        display-hint: mac
1378      -
1379        name: tlb-dynamic-lb
1380        type: u8
1381      -
1382        name: peer-notif-delay
1383        type: u32
1384      -
1385        name: ad-lacp-active
1386        type: u8
1387      -
1388        name: missed-max
1389        type: u8
1390      -
1391        name: ns-ip6-target
1392        type: indexed-array
1393        sub-type: binary
1394        display-hint: ipv6
1395      -
1396        name: coupled-control
1397        type: u8
1398  -
1399    name: bond-ad-info-attrs
1400    name-prefix: ifla-bond-ad-info-
1401    attributes:
1402      -
1403        name: aggregator
1404        type: u16
1405      -
1406        name: num-ports
1407        type: u16
1408      -
1409        name: actor-key
1410        type: u16
1411      -
1412        name: partner-key
1413        type: u16
1414      -
1415        name: partner-mac
1416        type: binary
1417        display-hint: mac
1418  -
1419    name: bond-slave-attrs
1420    name-prefix: ifla-bond-slave-
1421    attributes:
1422      -
1423        name: state
1424        type: u8
1425      -
1426        name: mii-status
1427        type: u8
1428      -
1429        name: link-failure-count
1430        type: u32
1431      -
1432        name: perm-hwaddr
1433        type: binary
1434        display-hint: mac
1435      -
1436        name: queue-id
1437        type: u16
1438      -
1439        name: ad-aggregator-id
1440        type: u16
1441      -
1442        name: ad-actor-oper-port-state
1443        type: u8
1444      -
1445        name: ad-partner-oper-port-state
1446        type: u16
1447      -
1448        name: prio
1449        type: u32
1450  -
1451    name: linkinfo-bridge-attrs
1452    name-prefix: ifla-br-
1453    attributes:
1454      -
1455        name: forward-delay
1456        type: u32
1457      -
1458        name: hello-time
1459        type: u32
1460      -
1461        name: max-age
1462        type: u32
1463      -
1464        name: ageing-time
1465        type: u32
1466      -
1467        name: stp-state
1468        type: u32
1469      -
1470        name: priority
1471        type: u16
1472      -
1473        name: vlan-filtering
1474        type: u8
1475      -
1476        name: vlan-protocol
1477        type: u16
1478      -
1479        name: group-fwd-mask
1480        type: u16
1481      -
1482        name: root-id
1483        type: binary
1484        struct: ifla-bridge-id
1485      -
1486        name: bridge-id
1487        type: binary
1488        struct: ifla-bridge-id
1489      -
1490        name: root-port
1491        type: u16
1492      -
1493        name: root-path-cost
1494        type: u32
1495      -
1496        name: topology-change
1497        type: u8
1498      -
1499        name: topology-change-detected
1500        type: u8
1501      -
1502        name: hello-timer
1503        type: u64
1504      -
1505        name: tcn-timer
1506        type: u64
1507      -
1508        name: topology-change-timer
1509        type: u64
1510      -
1511        name: gc-timer
1512        type: u64
1513      -
1514        name: group-addr
1515        type: binary
1516        display-hint: mac
1517      -
1518        name: fdb-flush
1519        type: binary
1520      -
1521        name: mcast-router
1522        type: u8
1523      -
1524        name: mcast-snooping
1525        type: u8
1526      -
1527        name: mcast-query-use-ifaddr
1528        type: u8
1529      -
1530        name: mcast-querier
1531        type: u8
1532      -
1533        name: mcast-hash-elasticity
1534        type: u32
1535      -
1536        name: mcast-hash-max
1537        type: u32
1538      -
1539        name: mcast-last-member-cnt
1540        type: u32
1541      -
1542        name: mcast-startup-query-cnt
1543        type: u32
1544      -
1545        name: mcast-last-member-intvl
1546        type: u64
1547      -
1548        name: mcast-membership-intvl
1549        type: u64
1550      -
1551        name: mcast-querier-intvl
1552        type: u64
1553      -
1554        name: mcast-query-intvl
1555        type: u64
1556      -
1557        name: mcast-query-response-intvl
1558        type: u64
1559      -
1560        name: mcast-startup-query-intvl
1561        type: u64
1562      -
1563        name: nf-call-iptables
1564        type: u8
1565      -
1566        name: nf-call-ip6-tables
1567        type: u8
1568      -
1569        name: nf-call-arptables
1570        type: u8
1571      -
1572        name: vlan-default-pvid
1573        type: u16
1574      -
1575        name: pad
1576        type: pad
1577      -
1578        name: vlan-stats-enabled
1579        type: u8
1580      -
1581        name: mcast-stats-enabled
1582        type: u8
1583      -
1584        name: mcast-igmp-version
1585        type: u8
1586      -
1587        name: mcast-mld-version
1588        type: u8
1589      -
1590        name: vlan-stats-per-port
1591        type: u8
1592      -
1593        name: multi-boolopt
1594        type: binary
1595        struct: br-boolopt-multi
1596      -
1597        name: mcast-querier-state
1598        type: binary
1599      -
1600        name: fdb-n-learned
1601        type: u32
1602      -
1603        name: fdb-max-learned
1604        type: u32
1605  -
1606    name: linkinfo-brport-attrs
1607    name-prefix: ifla-brport-
1608    attributes:
1609      -
1610        name: state
1611        type: u8
1612      -
1613        name: priority
1614        type: u16
1615      -
1616        name: cost
1617        type: u32
1618      -
1619        name: mode
1620        type: flag
1621      -
1622        name: guard
1623        type: flag
1624      -
1625        name: protect
1626        type: flag
1627      -
1628        name: fast-leave
1629        type: flag
1630      -
1631        name: learning
1632        type: flag
1633      -
1634        name: unicast-flood
1635        type: flag
1636      -
1637        name: proxyarp
1638        type: flag
1639      -
1640        name: learning-sync
1641        type: flag
1642      -
1643        name: proxyarp-wifi
1644        type: flag
1645      -
1646        name: root-id
1647        type: binary
1648        struct: ifla-bridge-id
1649      -
1650        name: bridge-id
1651        type: binary
1652        struct: ifla-bridge-id
1653      -
1654        name: designated-port
1655        type: u16
1656      -
1657        name: designated-cost
1658        type: u16
1659      -
1660        name: id
1661        type: u16
1662      -
1663        name: "no"
1664        type: u16
1665      -
1666        name: topology-change-ack
1667        type: u8
1668      -
1669        name: config-pending
1670        type: u8
1671      -
1672        name: message-age-timer
1673        type: u64
1674      -
1675        name: forward-delay-timer
1676        type: u64
1677      -
1678        name: hold-timer
1679        type: u64
1680      -
1681        name: flush
1682        type: flag
1683      -
1684        name: multicast-router
1685        type: u8
1686      -
1687        name: pad
1688        type: pad
1689      -
1690        name: mcast-flood
1691        type: flag
1692      -
1693        name: mcast-to-ucast
1694        type: flag
1695      -
1696        name: vlan-tunnel
1697        type: flag
1698      -
1699        name: bcast-flood
1700        type: flag
1701      -
1702        name: group-fwd-mask
1703        type: u16
1704      -
1705        name: neigh-suppress
1706        type: flag
1707      -
1708        name: isolated
1709        type: flag
1710      -
1711        name: backup-port
1712        type: u32
1713      -
1714        name: mrp-ring-open
1715        type: flag
1716      -
1717        name: mrp-in-open
1718        type: flag
1719      -
1720        name: mcast-eht-hosts-limit
1721        type: u32
1722      -
1723        name: mcast-eht-hosts-cnt
1724        type: u32
1725      -
1726        name: locked
1727        type: flag
1728      -
1729        name: mab
1730        type: flag
1731      -
1732        name: mcast-n-groups
1733        type: u32
1734      -
1735        name: mcast-max-groups
1736        type: u32
1737      -
1738        name: neigh-vlan-suppress
1739        type: flag
1740      -
1741        name: backup-nhid
1742        type: u32
1743  -
1744    name: linkinfo-gre-attrs
1745    name-prefix: ifla-gre-
1746    attributes:
1747      -
1748        name: link
1749        type: u32
1750      -
1751        name: iflags
1752        type: u16
1753      -
1754        name: oflags
1755        type: u16
1756      -
1757        name: ikey
1758        type: u32
1759      -
1760        name: okey
1761        type: u32
1762      -
1763        name: local
1764        type: binary
1765        display-hint: ipv4
1766      -
1767        name: remote
1768        type: binary
1769        display-hint: ipv4
1770      -
1771        name: ttl
1772        type: u8
1773      -
1774        name: tos
1775        type: u8
1776      -
1777        name: pmtudisc
1778        type: u8
1779      -
1780        name: encap-limit
1781        type: u32
1782      -
1783        name: flowinfo
1784        type: u32
1785      -
1786        name: flags
1787        type: u32
1788      -
1789        name: encap-type
1790        type: u16
1791      -
1792        name: encap-flags
1793        type: u16
1794      -
1795        name: encap-sport
1796        type: u16
1797      -
1798        name: encap-dport
1799        type: u16
1800      -
1801        name: collect-metadata
1802        type: flag
1803      -
1804        name: ignore-df
1805        type: u8
1806      -
1807        name: fwmark
1808        type: u32
1809      -
1810        name: erspan-index
1811        type: u32
1812      -
1813        name: erspan-ver
1814        type: u8
1815      -
1816        name: erspan-dir
1817        type: u8
1818      -
1819        name: erspan-hwid
1820        type: u16
1821  -
1822    name: linkinfo-geneve-attrs
1823    name-prefix: ifla-geneve-
1824    attributes:
1825      -
1826        name: id
1827        type: u32
1828      -
1829        name: remote
1830        type: binary
1831        display-hint: ipv4
1832      -
1833        name: ttl
1834        type: u8
1835      -
1836        name: tos
1837        type: u8
1838      -
1839        name: port
1840        type: u16
1841      -
1842        name: collect-metadata
1843        type: flag
1844      -
1845        name: remote6
1846        type: binary
1847        display-hint: ipv6
1848      -
1849        name: udp-csum
1850        type: u8
1851      -
1852        name: udp-zero-csum6-tx
1853        type: u8
1854      -
1855        name: udp-zero-csum6-rx
1856        type: u8
1857      -
1858        name: label
1859        type: u32
1860      -
1861        name: ttl-inherit
1862        type: u8
1863      -
1864        name: df
1865        type: u8
1866      -
1867        name: inner-proto-inherit
1868        type: flag
1869  -
1870    name: linkinfo-iptun-attrs
1871    name-prefix: ifla-iptun-
1872    attributes:
1873      -
1874        name: link
1875        type: u32
1876      -
1877        name: local
1878        type: binary
1879        display-hint: ipv4
1880      -
1881        name: remote
1882        type: binary
1883        display-hint: ipv4
1884      -
1885        name: ttl
1886        type: u8
1887      -
1888        name: tos
1889        type: u8
1890      -
1891        name: encap-limit
1892        type: u8
1893      -
1894        name: flowinfo
1895        type: u32
1896      -
1897        name: flags
1898        type: u16
1899      -
1900        name: proto
1901        type: u8
1902      -
1903        name: pmtudisc
1904        type: u8
1905      -
1906        name: 6rd-prefix
1907        type: binary
1908        display-hint: ipv6
1909      -
1910        name: 6rd-relay-prefix
1911        type: binary
1912        display-hint: ipv4
1913      -
1914        name: 6rd-prefixlen
1915        type: u16
1916      -
1917        name: 6rd-relay-prefixlen
1918        type: u16
1919      -
1920        name: encap-type
1921        type: u16
1922      -
1923        name: encap-flags
1924        type: u16
1925      -
1926        name: encap-sport
1927        type: u16
1928      -
1929        name: encap-dport
1930        type: u16
1931      -
1932        name: collect-metadata
1933        type: flag
1934      -
1935        name: fwmark
1936        type: u32
1937  -
1938    name: linkinfo-tun-attrs
1939    name-prefix: ifla-tun-
1940    attributes:
1941      -
1942        name: owner
1943        type: u32
1944      -
1945        name: group
1946        type: u32
1947      -
1948        name: type
1949        type: u8
1950      -
1951        name: pi
1952        type: u8
1953      -
1954        name: vnet-hdr
1955        type: u8
1956      -
1957        name: persist
1958        type: u8
1959      -
1960        name: multi-queue
1961        type: u8
1962      -
1963        name: num-queues
1964        type: u32
1965      -
1966        name: num-disabled-queues
1967        type: u32
1968  -
1969    name: linkinfo-vlan-attrs
1970    name-prefix: ifla-vlan-
1971    attributes:
1972      -
1973        name: id
1974        type: u16
1975      -
1976        name: flag
1977        type: binary
1978        struct: ifla-vlan-flags
1979      -
1980        name: egress-qos
1981        type: nest
1982        nested-attributes: ifla-vlan-qos
1983      -
1984        name: ingress-qos
1985        type: nest
1986        nested-attributes: ifla-vlan-qos
1987      -
1988        name: protocol
1989        type: u16
1990        enum: vlan-protocols
1991        byte-order: big-endian
1992  -
1993    name: ifla-vlan-qos
1994    name-prefix: ifla-vlan-qos
1995    attributes:
1996      -
1997        name: mapping
1998        type: binary
1999        multi-attr: true
2000        struct: ifla-vlan-qos-mapping
2001  -
2002    name: linkinfo-vrf-attrs
2003    name-prefix: ifla-vrf-
2004    attributes:
2005      -
2006        name: table
2007        type: u32
2008  -
2009    name: xdp-attrs
2010    attributes:
2011      -
2012        name: fd
2013        type: s32
2014      -
2015        name: attached
2016        type: u8
2017      -
2018        name: flags
2019        type: u32
2020      -
2021        name: prog-id
2022        type: u32
2023      -
2024        name: drv-prog-id
2025        type: u32
2026      -
2027        name: skb-prog-id
2028        type: u32
2029      -
2030        name: hw-prog-id
2031        type: u32
2032      -
2033        name: expected-fd
2034        type: s32
2035  -
2036    name: ifla-attrs
2037    attributes:
2038      -
2039        name: conf
2040        type: binary
2041        struct: ipv4-devconf
2042  -
2043    name: ifla6-attrs
2044    attributes:
2045      -
2046        name: flags
2047        type: u32
2048      -
2049        name: conf
2050        type: binary
2051        struct: ipv6-devconf
2052      -
2053        name: stats
2054        type: binary
2055        struct: ifla-inet6-stats
2056      -
2057        name: mcast
2058        type: binary
2059      -
2060        name: cacheinfo
2061        type: binary
2062        struct: ifla-cacheinfo
2063      -
2064        name: icmp6-stats
2065        type: binary
2066        struct: ifla-icmp6-stats
2067      -
2068        name: token
2069        type: binary
2070      -
2071        name: addr-gen-mode
2072        type: u8
2073      -
2074        name: ra-mtu
2075        type: u32
2076  -
2077    name: mctp-attrs
2078    attributes:
2079      -
2080        name: mctp-net
2081        type: u32
2082  -
2083    name: stats-attrs
2084    name-prefix: ifla-stats-
2085    attributes:
2086      -
2087        name: link-64
2088        type: binary
2089        struct: rtnl-link-stats64
2090      -
2091        name: link-xstats
2092        type: binary
2093      -
2094        name: link-xstats-slave
2095        type: binary
2096      -
2097        name: link-offload-xstats
2098        type: nest
2099        nested-attributes: link-offload-xstats
2100      -
2101        name: af-spec
2102        type: binary
2103  -
2104    name: link-offload-xstats
2105    attributes:
2106      -
2107        name: cpu-hit
2108        type: binary
2109      -
2110        name: hw-s-info
2111        type: indexed-array
2112        sub-type: nest
2113        nested-attributes: hw-s-info-one
2114      -
2115        name: l3-stats
2116        type: binary
2117  -
2118    name: hw-s-info-one
2119    attributes:
2120      -
2121        name: request
2122        type: u8
2123      -
2124        name: used
2125        type: u8
2126  -
2127    name: link-dpll-pin-attrs
2128    attributes:
2129      -
2130        name: id
2131        type: u32
2132  -
2133    name: linkinfo-netkit-attrs
2134    name-prefix: ifla-netkit-
2135    attributes:
2136      -
2137        name: peer-info
2138        type: binary
2139      -
2140        name: primary
2141        type: u8
2142      -
2143        name: policy
2144        type: u32
2145        enum: netkit-policy
2146      -
2147        name: peer-policy
2148        type: u32
2149        enum: netkit-policy
2150      -
2151        name: mode
2152        type: u32
2153        enum: netkit-mode
2154
2155sub-messages:
2156  -
2157    name: linkinfo-data-msg
2158    formats:
2159      -
2160        value: bond
2161        attribute-set: linkinfo-bond-attrs
2162      -
2163        value: bridge
2164        attribute-set: linkinfo-bridge-attrs
2165      -
2166        value: erspan
2167        attribute-set: linkinfo-gre-attrs
2168      -
2169        value: gre
2170        attribute-set: linkinfo-gre-attrs
2171      -
2172        value: gretap
2173        attribute-set: linkinfo-gre-attrs
2174      -
2175        value: geneve
2176        attribute-set: linkinfo-geneve-attrs
2177      -
2178        value: ipip
2179        attribute-set: linkinfo-iptun-attrs
2180      -
2181        value: sit
2182        attribute-set: linkinfo-iptun-attrs
2183      -
2184        value: tun
2185        attribute-set: linkinfo-tun-attrs
2186      -
2187        value: vlan
2188        attribute-set: linkinfo-vlan-attrs
2189      -
2190        value: vrf
2191        attribute-set: linkinfo-vrf-attrs
2192      -
2193        value: netkit
2194        attribute-set: linkinfo-netkit-attrs
2195  -
2196    name: linkinfo-member-data-msg
2197    formats:
2198      -
2199        value: bridge
2200        attribute-set: linkinfo-brport-attrs
2201      -
2202        value: bond
2203        attribute-set: bond-slave-attrs
2204
2205operations:
2206  enum-model: directional
2207  list:
2208    -
2209      name: newlink
2210      doc: Create a new link.
2211      attribute-set: link-attrs
2212      fixed-header: ifinfomsg
2213      do:
2214        request:
2215          value: 16
2216          attributes: &link-new-attrs
2217            - ifi-index
2218            - ifname
2219            - net-ns-pid
2220            - net-ns-fd
2221            - target-netnsid
2222            - link-netnsid
2223            - linkinfo
2224            - group
2225            - num-tx-queues
2226            - num-rx-queues
2227            - address
2228            - broadcast
2229            - mtu
2230            - txqlen
2231            - operstate
2232            - linkmode
2233            - group
2234            - gso-max-size
2235            - gso-max-segs
2236            - gro-max-size
2237            - gso-ipv4-max-size
2238            - gro-ipv4-max-size
2239            - af-spec
2240    -
2241      name: dellink
2242      doc: Delete an existing link.
2243      attribute-set: link-attrs
2244      fixed-header: ifinfomsg
2245      do:
2246        request:
2247          value: 17
2248          attributes:
2249            - ifi-index
2250            - ifname
2251    -
2252      name: getlink
2253      doc: Get / dump information about a link.
2254      attribute-set: link-attrs
2255      fixed-header: ifinfomsg
2256      do:
2257        request:
2258          value: 18
2259          attributes:
2260            - ifi-index
2261            - ifname
2262            - alt-ifname
2263            - ext-mask
2264            - target-netnsid
2265        reply:
2266          value: 16
2267          attributes: &link-all-attrs
2268            - ifi-family
2269            - ifi-type
2270            - ifi-index
2271            - ifi-flags
2272            - ifi-change
2273            - address
2274            - broadcast
2275            - ifname
2276            - mtu
2277            - link
2278            - qdisc
2279            - stats
2280            - cost
2281            - priority
2282            - master
2283            - wireless
2284            - protinfo
2285            - txqlen
2286            - map
2287            - weight
2288            - operstate
2289            - linkmode
2290            - linkinfo
2291            - net-ns-pid
2292            - ifalias
2293            - num-vf
2294            - vfinfo-list
2295            - stats64
2296            - vf-ports
2297            - port-self
2298            - af-spec
2299            - group
2300            - net-ns-fd
2301            - ext-mask
2302            - promiscuity
2303            - num-tx-queues
2304            - num-rx-queues
2305            - carrier
2306            - phys-port-id
2307            - carrier-changes
2308            - phys-switch-id
2309            - link-netnsid
2310            - phys-port-name
2311            - proto-down
2312            - gso-max-segs
2313            - gso-max-size
2314            - pad
2315            - xdp
2316            - event
2317            - new-netnsid
2318            - if-netnsid
2319            - target-netnsid
2320            - carrier-up-count
2321            - carrier-down-count
2322            - new-ifindex
2323            - min-mtu
2324            - max-mtu
2325            - prop-list
2326            - alt-ifname
2327            - perm-address
2328            - proto-down-reason
2329            - parent-dev-name
2330            - parent-dev-bus-name
2331            - gro-max-size
2332            - tso-max-size
2333            - tso-max-segs
2334            - allmulti
2335            - devlink-port
2336            - gso-ipv4-max-size
2337            - gro-ipv4-max-size
2338      dump:
2339        request:
2340          value: 18
2341          attributes:
2342            - target-netnsid
2343            - ext-mask
2344            - master
2345            - linkinfo
2346        reply:
2347          value: 16
2348          attributes: *link-all-attrs
2349    -
2350      name: setlink
2351      doc: Set information about a link.
2352      attribute-set: link-attrs
2353      fixed-header: ifinfomsg
2354      do:
2355        request:
2356          value: 19
2357          attributes: *link-all-attrs
2358    -
2359      name: getstats
2360      doc: Get / dump link stats.
2361      attribute-set: stats-attrs
2362      fixed-header: if_stats_msg
2363      do:
2364        request:
2365          value: 94
2366          attributes:
2367            - ifindex
2368        reply:
2369          value: 92
2370          attributes: &link-stats-attrs
2371            - family
2372            - ifindex
2373            - filter-mask
2374            - link-64
2375            - link-xstats
2376            - link-xstats-slave
2377            - link-offload-xstats
2378            - af-spec
2379      dump:
2380        request:
2381          value: 94
2382        reply:
2383          value: 92
2384          attributes: *link-stats-attrs
2385
2386mcast-groups:
2387  list:
2388    -
2389      name: rtnlgrp-link
2390      value: 1
2391    -
2392      name: rtnlgrp-stats
2393      value: 36
2394