xref: /linux/Documentation/netlink/specs/rt_link.yaml (revision fcc79e1714e8c2b8e216dc3149812edd37884eef)
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
923  -
924    name: netkit-scrub
925    type: enum
926    entries:
927      - name: none
928      - name: default
929
930attribute-sets:
931  -
932    name: link-attrs
933    name-prefix: ifla-
934    attributes:
935      -
936        name: address
937        type: binary
938        display-hint: mac
939      -
940        name: broadcast
941        type: binary
942        display-hint: mac
943      -
944        name: ifname
945        type: string
946      -
947        name: mtu
948        type: u32
949      -
950        name: link
951        type: u32
952      -
953        name: qdisc
954        type: string
955      -
956        name: stats
957        type: binary
958        struct: rtnl-link-stats
959      -
960        name: cost
961        type: string
962      -
963        name: priority
964        type: string
965      -
966        name: master
967        type: u32
968      -
969        name: wireless
970        type: string
971      -
972        name: protinfo
973        type: string
974      -
975        name: txqlen
976        type: u32
977      -
978        name: map
979        type: binary
980        struct: rtnl-link-ifmap
981      -
982        name: weight
983        type: u32
984      -
985        name: operstate
986        type: u8
987      -
988        name: linkmode
989        type: u8
990      -
991        name: linkinfo
992        type: nest
993        nested-attributes: linkinfo-attrs
994      -
995        name: net-ns-pid
996        type: u32
997      -
998        name: ifalias
999        type: string
1000      -
1001        name: num-vf
1002        type: u32
1003      -
1004        name: vfinfo-list
1005        type: nest
1006        nested-attributes: vfinfo-list-attrs
1007      -
1008        name: stats64
1009        type: binary
1010        struct: rtnl-link-stats64
1011      -
1012        name: vf-ports
1013        type: nest
1014        nested-attributes: vf-ports-attrs
1015      -
1016        name: port-self
1017        type: nest
1018        nested-attributes: port-self-attrs
1019      -
1020        name: af-spec
1021        type: nest
1022        nested-attributes: af-spec-attrs
1023      -
1024        name: group
1025        type: u32
1026      -
1027        name: net-ns-fd
1028        type: u32
1029      -
1030        name: ext-mask
1031        type: u32
1032        enum: rtext-filter
1033        enum-as-flags: true
1034      -
1035        name: promiscuity
1036        type: u32
1037      -
1038        name: num-tx-queues
1039        type: u32
1040      -
1041        name: num-rx-queues
1042        type: u32
1043      -
1044        name: carrier
1045        type: u8
1046      -
1047        name: phys-port-id
1048        type: binary
1049      -
1050        name: carrier-changes
1051        type: u32
1052      -
1053        name: phys-switch-id
1054        type: binary
1055      -
1056        name: link-netnsid
1057        type: s32
1058      -
1059        name: phys-port-name
1060        type: string
1061      -
1062        name: proto-down
1063        type: u8
1064      -
1065        name: gso-max-segs
1066        type: u32
1067      -
1068        name: gso-max-size
1069        type: u32
1070      -
1071        name: pad
1072        type: pad
1073      -
1074        name: xdp
1075        type: nest
1076        nested-attributes: xdp-attrs
1077      -
1078        name: event
1079        type: u32
1080      -
1081        name: new-netnsid
1082        type: s32
1083      -
1084        name: target-netnsid
1085        type: s32
1086      -
1087        name: carrier-up-count
1088        type: u32
1089      -
1090        name: carrier-down-count
1091        type: u32
1092      -
1093        name: new-ifindex
1094        type: s32
1095      -
1096        name: min-mtu
1097        type: u32
1098      -
1099        name: max-mtu
1100        type: u32
1101      -
1102        name: prop-list
1103        type: nest
1104        nested-attributes: link-attrs
1105      -
1106        name: alt-ifname
1107        type: string
1108        multi-attr: true
1109      -
1110        name: perm-address
1111        type: binary
1112        display-hint: mac
1113      -
1114        name: proto-down-reason
1115        type: string
1116      -
1117        name: parent-dev-name
1118        type: string
1119      -
1120        name: parent-dev-bus-name
1121        type: string
1122      -
1123        name: gro-max-size
1124        type: u32
1125      -
1126        name: tso-max-size
1127        type: u32
1128      -
1129        name: tso-max-segs
1130        type: u32
1131      -
1132        name: allmulti
1133        type: u32
1134      -
1135        name: devlink-port
1136        type: binary
1137      -
1138        name: gso-ipv4-max-size
1139        type: u32
1140      -
1141        name: gro-ipv4-max-size
1142        type: u32
1143      -
1144        name: dpll-pin
1145        type: nest
1146        nested-attributes: link-dpll-pin-attrs
1147      -
1148        name: max-pacing-offload-horizon
1149        type: uint
1150        doc: EDT offload horizon supported by the device (in nsec).
1151  -
1152    name: af-spec-attrs
1153    attributes:
1154      -
1155        name: "inet"
1156        type: nest
1157        value: 2
1158        nested-attributes: ifla-attrs
1159      -
1160        name: "inet6"
1161        type: nest
1162        value: 10
1163        nested-attributes: ifla6-attrs
1164      -
1165        name: "mctp"
1166        type: nest
1167        value: 45
1168        nested-attributes: mctp-attrs
1169  -
1170    name: vfinfo-list-attrs
1171    attributes:
1172      -
1173        name: info
1174        type: nest
1175        nested-attributes: vfinfo-attrs
1176        multi-attr: true
1177  -
1178    name: vfinfo-attrs
1179    attributes:
1180      -
1181        name: mac
1182        type: binary
1183        struct: ifla-vf-mac
1184      -
1185        name: vlan
1186        type: binary
1187        struct: ifla-vf-vlan
1188      -
1189        name: tx-rate
1190        type: binary
1191        struct: ifla-vf-tx-rate
1192      -
1193        name: spoofchk
1194        type: binary
1195        struct: ifla-vf-spoofchk
1196      -
1197        name: link-state
1198        type: binary
1199        struct: ifla-vf-link-state
1200      -
1201        name: rate
1202        type: binary
1203        struct: ifla-vf-rate
1204      -
1205        name: rss-query-en
1206        type: binary
1207        struct: ifla-vf-rss-query-en
1208      -
1209        name: stats
1210        type: nest
1211        nested-attributes: vf-stats-attrs
1212      -
1213        name: trust
1214        type: binary
1215        struct: ifla-vf-trust
1216      -
1217        name: ib-node-guid
1218        type: binary
1219        struct: ifla-vf-guid
1220      -
1221        name: ib-port-guid
1222        type: binary
1223        struct: ifla-vf-guid
1224      -
1225        name: vlan-list
1226        type: nest
1227        nested-attributes: vf-vlan-attrs
1228      -
1229        name: broadcast
1230        type: binary
1231  -
1232    name: vf-stats-attrs
1233    attributes:
1234      -
1235        name: rx-packets
1236        type: u64
1237        value: 0
1238      -
1239        name: tx-packets
1240        type: u64
1241      -
1242        name: rx-bytes
1243        type: u64
1244      -
1245        name: tx-bytes
1246        type: u64
1247      -
1248        name: broadcast
1249        type: u64
1250      -
1251        name: multicast
1252        type: u64
1253      -
1254        name: pad
1255        type: pad
1256      -
1257        name: rx-dropped
1258        type: u64
1259      -
1260        name: tx-dropped
1261        type: u64
1262  -
1263    name: vf-vlan-attrs
1264    attributes:
1265      -
1266        name: info
1267        type: binary
1268        struct: ifla-vf-vlan-info
1269        multi-attr: true
1270  -
1271    name: vf-ports-attrs
1272    attributes: []
1273  -
1274    name: port-self-attrs
1275    attributes: []
1276  -
1277    name: linkinfo-attrs
1278    attributes:
1279      -
1280        name: kind
1281        type: string
1282      -
1283        name: data
1284        type: sub-message
1285        sub-message: linkinfo-data-msg
1286        selector: kind
1287      -
1288        name: xstats
1289        type: binary
1290      -
1291        name: slave-kind
1292        type: string
1293      -
1294        name: slave-data
1295        type: sub-message
1296        sub-message: linkinfo-member-data-msg
1297        selector: slave-kind
1298  -
1299    name: linkinfo-bond-attrs
1300    name-prefix: ifla-bond-
1301    attributes:
1302      -
1303        name: mode
1304        type: u8
1305      -
1306        name: active-slave
1307        type: u32
1308      -
1309        name: miimon
1310        type: u32
1311      -
1312        name: updelay
1313        type: u32
1314      -
1315        name: downdelay
1316        type: u32
1317      -
1318        name: use-carrier
1319        type: u8
1320      -
1321        name: arp-interval
1322        type: u32
1323      -
1324        name: arp-ip-target
1325        type: indexed-array
1326        sub-type: u32
1327        byte-order: big-endian
1328        display-hint: ipv4
1329      -
1330        name: arp-validate
1331        type: u32
1332      -
1333        name: arp-all-targets
1334        type: u32
1335      -
1336        name: primary
1337        type: u32
1338      -
1339        name: primary-reselect
1340        type: u8
1341      -
1342        name: fail-over-mac
1343        type: u8
1344      -
1345        name: xmit-hash-policy
1346        type: u8
1347      -
1348        name: resend-igmp
1349        type: u32
1350      -
1351        name: num-peer-notif
1352        type: u8
1353      -
1354        name: all-slaves-active
1355        type: u8
1356      -
1357        name: min-links
1358        type: u32
1359      -
1360        name: lp-interval
1361        type: u32
1362      -
1363        name: packets-per-slave
1364        type: u32
1365      -
1366        name: ad-lacp-rate
1367        type: u8
1368      -
1369        name: ad-select
1370        type: u8
1371      -
1372        name: ad-info
1373        type: nest
1374        nested-attributes: bond-ad-info-attrs
1375      -
1376        name: ad-actor-sys-prio
1377        type: u16
1378      -
1379        name: ad-user-port-key
1380        type: u16
1381      -
1382        name: ad-actor-system
1383        type: binary
1384        display-hint: mac
1385      -
1386        name: tlb-dynamic-lb
1387        type: u8
1388      -
1389        name: peer-notif-delay
1390        type: u32
1391      -
1392        name: ad-lacp-active
1393        type: u8
1394      -
1395        name: missed-max
1396        type: u8
1397      -
1398        name: ns-ip6-target
1399        type: indexed-array
1400        sub-type: binary
1401        display-hint: ipv6
1402      -
1403        name: coupled-control
1404        type: u8
1405  -
1406    name: bond-ad-info-attrs
1407    name-prefix: ifla-bond-ad-info-
1408    attributes:
1409      -
1410        name: aggregator
1411        type: u16
1412      -
1413        name: num-ports
1414        type: u16
1415      -
1416        name: actor-key
1417        type: u16
1418      -
1419        name: partner-key
1420        type: u16
1421      -
1422        name: partner-mac
1423        type: binary
1424        display-hint: mac
1425  -
1426    name: bond-slave-attrs
1427    name-prefix: ifla-bond-slave-
1428    attributes:
1429      -
1430        name: state
1431        type: u8
1432      -
1433        name: mii-status
1434        type: u8
1435      -
1436        name: link-failure-count
1437        type: u32
1438      -
1439        name: perm-hwaddr
1440        type: binary
1441        display-hint: mac
1442      -
1443        name: queue-id
1444        type: u16
1445      -
1446        name: ad-aggregator-id
1447        type: u16
1448      -
1449        name: ad-actor-oper-port-state
1450        type: u8
1451      -
1452        name: ad-partner-oper-port-state
1453        type: u16
1454      -
1455        name: prio
1456        type: u32
1457  -
1458    name: linkinfo-bridge-attrs
1459    name-prefix: ifla-br-
1460    attributes:
1461      -
1462        name: forward-delay
1463        type: u32
1464      -
1465        name: hello-time
1466        type: u32
1467      -
1468        name: max-age
1469        type: u32
1470      -
1471        name: ageing-time
1472        type: u32
1473      -
1474        name: stp-state
1475        type: u32
1476      -
1477        name: priority
1478        type: u16
1479      -
1480        name: vlan-filtering
1481        type: u8
1482      -
1483        name: vlan-protocol
1484        type: u16
1485      -
1486        name: group-fwd-mask
1487        type: u16
1488      -
1489        name: root-id
1490        type: binary
1491        struct: ifla-bridge-id
1492      -
1493        name: bridge-id
1494        type: binary
1495        struct: ifla-bridge-id
1496      -
1497        name: root-port
1498        type: u16
1499      -
1500        name: root-path-cost
1501        type: u32
1502      -
1503        name: topology-change
1504        type: u8
1505      -
1506        name: topology-change-detected
1507        type: u8
1508      -
1509        name: hello-timer
1510        type: u64
1511      -
1512        name: tcn-timer
1513        type: u64
1514      -
1515        name: topology-change-timer
1516        type: u64
1517      -
1518        name: gc-timer
1519        type: u64
1520      -
1521        name: group-addr
1522        type: binary
1523        display-hint: mac
1524      -
1525        name: fdb-flush
1526        type: binary
1527      -
1528        name: mcast-router
1529        type: u8
1530      -
1531        name: mcast-snooping
1532        type: u8
1533      -
1534        name: mcast-query-use-ifaddr
1535        type: u8
1536      -
1537        name: mcast-querier
1538        type: u8
1539      -
1540        name: mcast-hash-elasticity
1541        type: u32
1542      -
1543        name: mcast-hash-max
1544        type: u32
1545      -
1546        name: mcast-last-member-cnt
1547        type: u32
1548      -
1549        name: mcast-startup-query-cnt
1550        type: u32
1551      -
1552        name: mcast-last-member-intvl
1553        type: u64
1554      -
1555        name: mcast-membership-intvl
1556        type: u64
1557      -
1558        name: mcast-querier-intvl
1559        type: u64
1560      -
1561        name: mcast-query-intvl
1562        type: u64
1563      -
1564        name: mcast-query-response-intvl
1565        type: u64
1566      -
1567        name: mcast-startup-query-intvl
1568        type: u64
1569      -
1570        name: nf-call-iptables
1571        type: u8
1572      -
1573        name: nf-call-ip6-tables
1574        type: u8
1575      -
1576        name: nf-call-arptables
1577        type: u8
1578      -
1579        name: vlan-default-pvid
1580        type: u16
1581      -
1582        name: pad
1583        type: pad
1584      -
1585        name: vlan-stats-enabled
1586        type: u8
1587      -
1588        name: mcast-stats-enabled
1589        type: u8
1590      -
1591        name: mcast-igmp-version
1592        type: u8
1593      -
1594        name: mcast-mld-version
1595        type: u8
1596      -
1597        name: vlan-stats-per-port
1598        type: u8
1599      -
1600        name: multi-boolopt
1601        type: binary
1602        struct: br-boolopt-multi
1603      -
1604        name: mcast-querier-state
1605        type: binary
1606      -
1607        name: fdb-n-learned
1608        type: u32
1609      -
1610        name: fdb-max-learned
1611        type: u32
1612  -
1613    name: linkinfo-brport-attrs
1614    name-prefix: ifla-brport-
1615    attributes:
1616      -
1617        name: state
1618        type: u8
1619      -
1620        name: priority
1621        type: u16
1622      -
1623        name: cost
1624        type: u32
1625      -
1626        name: mode
1627        type: flag
1628      -
1629        name: guard
1630        type: flag
1631      -
1632        name: protect
1633        type: flag
1634      -
1635        name: fast-leave
1636        type: flag
1637      -
1638        name: learning
1639        type: flag
1640      -
1641        name: unicast-flood
1642        type: flag
1643      -
1644        name: proxyarp
1645        type: flag
1646      -
1647        name: learning-sync
1648        type: flag
1649      -
1650        name: proxyarp-wifi
1651        type: flag
1652      -
1653        name: root-id
1654        type: binary
1655        struct: ifla-bridge-id
1656      -
1657        name: bridge-id
1658        type: binary
1659        struct: ifla-bridge-id
1660      -
1661        name: designated-port
1662        type: u16
1663      -
1664        name: designated-cost
1665        type: u16
1666      -
1667        name: id
1668        type: u16
1669      -
1670        name: "no"
1671        type: u16
1672      -
1673        name: topology-change-ack
1674        type: u8
1675      -
1676        name: config-pending
1677        type: u8
1678      -
1679        name: message-age-timer
1680        type: u64
1681      -
1682        name: forward-delay-timer
1683        type: u64
1684      -
1685        name: hold-timer
1686        type: u64
1687      -
1688        name: flush
1689        type: flag
1690      -
1691        name: multicast-router
1692        type: u8
1693      -
1694        name: pad
1695        type: pad
1696      -
1697        name: mcast-flood
1698        type: flag
1699      -
1700        name: mcast-to-ucast
1701        type: flag
1702      -
1703        name: vlan-tunnel
1704        type: flag
1705      -
1706        name: bcast-flood
1707        type: flag
1708      -
1709        name: group-fwd-mask
1710        type: u16
1711      -
1712        name: neigh-suppress
1713        type: flag
1714      -
1715        name: isolated
1716        type: flag
1717      -
1718        name: backup-port
1719        type: u32
1720      -
1721        name: mrp-ring-open
1722        type: flag
1723      -
1724        name: mrp-in-open
1725        type: flag
1726      -
1727        name: mcast-eht-hosts-limit
1728        type: u32
1729      -
1730        name: mcast-eht-hosts-cnt
1731        type: u32
1732      -
1733        name: locked
1734        type: flag
1735      -
1736        name: mab
1737        type: flag
1738      -
1739        name: mcast-n-groups
1740        type: u32
1741      -
1742        name: mcast-max-groups
1743        type: u32
1744      -
1745        name: neigh-vlan-suppress
1746        type: flag
1747      -
1748        name: backup-nhid
1749        type: u32
1750  -
1751    name: linkinfo-gre-attrs
1752    name-prefix: ifla-gre-
1753    attributes:
1754      -
1755        name: link
1756        type: u32
1757      -
1758        name: iflags
1759        type: u16
1760      -
1761        name: oflags
1762        type: u16
1763      -
1764        name: ikey
1765        type: u32
1766      -
1767        name: okey
1768        type: u32
1769      -
1770        name: local
1771        type: binary
1772        display-hint: ipv4
1773      -
1774        name: remote
1775        type: binary
1776        display-hint: ipv4
1777      -
1778        name: ttl
1779        type: u8
1780      -
1781        name: tos
1782        type: u8
1783      -
1784        name: pmtudisc
1785        type: u8
1786      -
1787        name: encap-limit
1788        type: u32
1789      -
1790        name: flowinfo
1791        type: u32
1792      -
1793        name: flags
1794        type: u32
1795      -
1796        name: encap-type
1797        type: u16
1798      -
1799        name: encap-flags
1800        type: u16
1801      -
1802        name: encap-sport
1803        type: u16
1804      -
1805        name: encap-dport
1806        type: u16
1807      -
1808        name: collect-metadata
1809        type: flag
1810      -
1811        name: ignore-df
1812        type: u8
1813      -
1814        name: fwmark
1815        type: u32
1816      -
1817        name: erspan-index
1818        type: u32
1819      -
1820        name: erspan-ver
1821        type: u8
1822      -
1823        name: erspan-dir
1824        type: u8
1825      -
1826        name: erspan-hwid
1827        type: u16
1828  -
1829    name: linkinfo-geneve-attrs
1830    name-prefix: ifla-geneve-
1831    attributes:
1832      -
1833        name: id
1834        type: u32
1835      -
1836        name: remote
1837        type: binary
1838        display-hint: ipv4
1839      -
1840        name: ttl
1841        type: u8
1842      -
1843        name: tos
1844        type: u8
1845      -
1846        name: port
1847        type: u16
1848      -
1849        name: collect-metadata
1850        type: flag
1851      -
1852        name: remote6
1853        type: binary
1854        display-hint: ipv6
1855      -
1856        name: udp-csum
1857        type: u8
1858      -
1859        name: udp-zero-csum6-tx
1860        type: u8
1861      -
1862        name: udp-zero-csum6-rx
1863        type: u8
1864      -
1865        name: label
1866        type: u32
1867      -
1868        name: ttl-inherit
1869        type: u8
1870      -
1871        name: df
1872        type: u8
1873      -
1874        name: inner-proto-inherit
1875        type: flag
1876  -
1877    name: linkinfo-iptun-attrs
1878    name-prefix: ifla-iptun-
1879    attributes:
1880      -
1881        name: link
1882        type: u32
1883      -
1884        name: local
1885        type: binary
1886        display-hint: ipv4
1887      -
1888        name: remote
1889        type: binary
1890        display-hint: ipv4
1891      -
1892        name: ttl
1893        type: u8
1894      -
1895        name: tos
1896        type: u8
1897      -
1898        name: encap-limit
1899        type: u8
1900      -
1901        name: flowinfo
1902        type: u32
1903      -
1904        name: flags
1905        type: u16
1906      -
1907        name: proto
1908        type: u8
1909      -
1910        name: pmtudisc
1911        type: u8
1912      -
1913        name: 6rd-prefix
1914        type: binary
1915        display-hint: ipv6
1916      -
1917        name: 6rd-relay-prefix
1918        type: binary
1919        display-hint: ipv4
1920      -
1921        name: 6rd-prefixlen
1922        type: u16
1923      -
1924        name: 6rd-relay-prefixlen
1925        type: u16
1926      -
1927        name: encap-type
1928        type: u16
1929      -
1930        name: encap-flags
1931        type: u16
1932      -
1933        name: encap-sport
1934        type: u16
1935      -
1936        name: encap-dport
1937        type: u16
1938      -
1939        name: collect-metadata
1940        type: flag
1941      -
1942        name: fwmark
1943        type: u32
1944  -
1945    name: linkinfo-tun-attrs
1946    name-prefix: ifla-tun-
1947    attributes:
1948      -
1949        name: owner
1950        type: u32
1951      -
1952        name: group
1953        type: u32
1954      -
1955        name: type
1956        type: u8
1957      -
1958        name: pi
1959        type: u8
1960      -
1961        name: vnet-hdr
1962        type: u8
1963      -
1964        name: persist
1965        type: u8
1966      -
1967        name: multi-queue
1968        type: u8
1969      -
1970        name: num-queues
1971        type: u32
1972      -
1973        name: num-disabled-queues
1974        type: u32
1975  -
1976    name: linkinfo-vlan-attrs
1977    name-prefix: ifla-vlan-
1978    attributes:
1979      -
1980        name: id
1981        type: u16
1982      -
1983        name: flag
1984        type: binary
1985        struct: ifla-vlan-flags
1986      -
1987        name: egress-qos
1988        type: nest
1989        nested-attributes: ifla-vlan-qos
1990      -
1991        name: ingress-qos
1992        type: nest
1993        nested-attributes: ifla-vlan-qos
1994      -
1995        name: protocol
1996        type: u16
1997        enum: vlan-protocols
1998        byte-order: big-endian
1999  -
2000    name: ifla-vlan-qos
2001    name-prefix: ifla-vlan-qos
2002    attributes:
2003      -
2004        name: mapping
2005        type: binary
2006        multi-attr: true
2007        struct: ifla-vlan-qos-mapping
2008  -
2009    name: linkinfo-vrf-attrs
2010    name-prefix: ifla-vrf-
2011    attributes:
2012      -
2013        name: table
2014        type: u32
2015  -
2016    name: xdp-attrs
2017    attributes:
2018      -
2019        name: fd
2020        type: s32
2021      -
2022        name: attached
2023        type: u8
2024      -
2025        name: flags
2026        type: u32
2027      -
2028        name: prog-id
2029        type: u32
2030      -
2031        name: drv-prog-id
2032        type: u32
2033      -
2034        name: skb-prog-id
2035        type: u32
2036      -
2037        name: hw-prog-id
2038        type: u32
2039      -
2040        name: expected-fd
2041        type: s32
2042  -
2043    name: ifla-attrs
2044    attributes:
2045      -
2046        name: conf
2047        type: binary
2048        struct: ipv4-devconf
2049  -
2050    name: ifla6-attrs
2051    attributes:
2052      -
2053        name: flags
2054        type: u32
2055      -
2056        name: conf
2057        type: binary
2058        struct: ipv6-devconf
2059      -
2060        name: stats
2061        type: binary
2062        struct: ifla-inet6-stats
2063      -
2064        name: mcast
2065        type: binary
2066      -
2067        name: cacheinfo
2068        type: binary
2069        struct: ifla-cacheinfo
2070      -
2071        name: icmp6-stats
2072        type: binary
2073        struct: ifla-icmp6-stats
2074      -
2075        name: token
2076        type: binary
2077      -
2078        name: addr-gen-mode
2079        type: u8
2080      -
2081        name: ra-mtu
2082        type: u32
2083  -
2084    name: mctp-attrs
2085    attributes:
2086      -
2087        name: mctp-net
2088        type: u32
2089  -
2090    name: stats-attrs
2091    name-prefix: ifla-stats-
2092    attributes:
2093      -
2094        name: link-64
2095        type: binary
2096        struct: rtnl-link-stats64
2097      -
2098        name: link-xstats
2099        type: binary
2100      -
2101        name: link-xstats-slave
2102        type: binary
2103      -
2104        name: link-offload-xstats
2105        type: nest
2106        nested-attributes: link-offload-xstats
2107      -
2108        name: af-spec
2109        type: binary
2110  -
2111    name: link-offload-xstats
2112    attributes:
2113      -
2114        name: cpu-hit
2115        type: binary
2116      -
2117        name: hw-s-info
2118        type: indexed-array
2119        sub-type: nest
2120        nested-attributes: hw-s-info-one
2121      -
2122        name: l3-stats
2123        type: binary
2124  -
2125    name: hw-s-info-one
2126    attributes:
2127      -
2128        name: request
2129        type: u8
2130      -
2131        name: used
2132        type: u8
2133  -
2134    name: link-dpll-pin-attrs
2135    attributes:
2136      -
2137        name: id
2138        type: u32
2139  -
2140    name: linkinfo-netkit-attrs
2141    name-prefix: ifla-netkit-
2142    attributes:
2143      -
2144        name: peer-info
2145        type: binary
2146      -
2147        name: primary
2148        type: u8
2149      -
2150        name: policy
2151        type: u32
2152        enum: netkit-policy
2153      -
2154        name: peer-policy
2155        type: u32
2156        enum: netkit-policy
2157      -
2158        name: mode
2159        type: u32
2160        enum: netkit-mode
2161      -
2162        name: scrub
2163        type: u32
2164        enum: netkit-scrub
2165      -
2166        name: peer-scrub
2167        type: u32
2168        enum: netkit-scrub
2169
2170sub-messages:
2171  -
2172    name: linkinfo-data-msg
2173    formats:
2174      -
2175        value: bond
2176        attribute-set: linkinfo-bond-attrs
2177      -
2178        value: bridge
2179        attribute-set: linkinfo-bridge-attrs
2180      -
2181        value: erspan
2182        attribute-set: linkinfo-gre-attrs
2183      -
2184        value: gre
2185        attribute-set: linkinfo-gre-attrs
2186      -
2187        value: gretap
2188        attribute-set: linkinfo-gre-attrs
2189      -
2190        value: geneve
2191        attribute-set: linkinfo-geneve-attrs
2192      -
2193        value: ipip
2194        attribute-set: linkinfo-iptun-attrs
2195      -
2196        value: sit
2197        attribute-set: linkinfo-iptun-attrs
2198      -
2199        value: tun
2200        attribute-set: linkinfo-tun-attrs
2201      -
2202        value: vlan
2203        attribute-set: linkinfo-vlan-attrs
2204      -
2205        value: vrf
2206        attribute-set: linkinfo-vrf-attrs
2207      -
2208        value: netkit
2209        attribute-set: linkinfo-netkit-attrs
2210  -
2211    name: linkinfo-member-data-msg
2212    formats:
2213      -
2214        value: bridge
2215        attribute-set: linkinfo-brport-attrs
2216      -
2217        value: bond
2218        attribute-set: bond-slave-attrs
2219
2220operations:
2221  enum-model: directional
2222  list:
2223    -
2224      name: newlink
2225      doc: Create a new link.
2226      attribute-set: link-attrs
2227      fixed-header: ifinfomsg
2228      do:
2229        request:
2230          value: 16
2231          attributes: &link-new-attrs
2232            - ifi-index
2233            - ifname
2234            - net-ns-pid
2235            - net-ns-fd
2236            - target-netnsid
2237            - link-netnsid
2238            - linkinfo
2239            - group
2240            - num-tx-queues
2241            - num-rx-queues
2242            - address
2243            - broadcast
2244            - mtu
2245            - txqlen
2246            - operstate
2247            - linkmode
2248            - group
2249            - gso-max-size
2250            - gso-max-segs
2251            - gro-max-size
2252            - gso-ipv4-max-size
2253            - gro-ipv4-max-size
2254            - af-spec
2255    -
2256      name: dellink
2257      doc: Delete an existing link.
2258      attribute-set: link-attrs
2259      fixed-header: ifinfomsg
2260      do:
2261        request:
2262          value: 17
2263          attributes:
2264            - ifi-index
2265            - ifname
2266    -
2267      name: getlink
2268      doc: Get / dump information about a link.
2269      attribute-set: link-attrs
2270      fixed-header: ifinfomsg
2271      do:
2272        request:
2273          value: 18
2274          attributes:
2275            - ifi-index
2276            - ifname
2277            - alt-ifname
2278            - ext-mask
2279            - target-netnsid
2280        reply:
2281          value: 16
2282          attributes: &link-all-attrs
2283            - ifi-family
2284            - ifi-type
2285            - ifi-index
2286            - ifi-flags
2287            - ifi-change
2288            - address
2289            - broadcast
2290            - ifname
2291            - mtu
2292            - link
2293            - qdisc
2294            - stats
2295            - cost
2296            - priority
2297            - master
2298            - wireless
2299            - protinfo
2300            - txqlen
2301            - map
2302            - weight
2303            - operstate
2304            - linkmode
2305            - linkinfo
2306            - net-ns-pid
2307            - ifalias
2308            - num-vf
2309            - vfinfo-list
2310            - stats64
2311            - vf-ports
2312            - port-self
2313            - af-spec
2314            - group
2315            - net-ns-fd
2316            - ext-mask
2317            - promiscuity
2318            - num-tx-queues
2319            - num-rx-queues
2320            - carrier
2321            - phys-port-id
2322            - carrier-changes
2323            - phys-switch-id
2324            - link-netnsid
2325            - phys-port-name
2326            - proto-down
2327            - gso-max-segs
2328            - gso-max-size
2329            - pad
2330            - xdp
2331            - event
2332            - new-netnsid
2333            - if-netnsid
2334            - target-netnsid
2335            - carrier-up-count
2336            - carrier-down-count
2337            - new-ifindex
2338            - min-mtu
2339            - max-mtu
2340            - prop-list
2341            - alt-ifname
2342            - perm-address
2343            - proto-down-reason
2344            - parent-dev-name
2345            - parent-dev-bus-name
2346            - gro-max-size
2347            - tso-max-size
2348            - tso-max-segs
2349            - allmulti
2350            - devlink-port
2351            - gso-ipv4-max-size
2352            - gro-ipv4-max-size
2353      dump:
2354        request:
2355          value: 18
2356          attributes:
2357            - target-netnsid
2358            - ext-mask
2359            - master
2360            - linkinfo
2361        reply:
2362          value: 16
2363          attributes: *link-all-attrs
2364    -
2365      name: setlink
2366      doc: Set information about a link.
2367      attribute-set: link-attrs
2368      fixed-header: ifinfomsg
2369      do:
2370        request:
2371          value: 19
2372          attributes: *link-all-attrs
2373    -
2374      name: getstats
2375      doc: Get / dump link stats.
2376      attribute-set: stats-attrs
2377      fixed-header: if_stats_msg
2378      do:
2379        request:
2380          value: 94
2381          attributes:
2382            - ifindex
2383        reply:
2384          value: 92
2385          attributes: &link-stats-attrs
2386            - family
2387            - ifindex
2388            - filter-mask
2389            - link-64
2390            - link-xstats
2391            - link-xstats-slave
2392            - link-offload-xstats
2393            - af-spec
2394      dump:
2395        request:
2396          value: 94
2397        reply:
2398          value: 92
2399          attributes: *link-stats-attrs
2400
2401mcast-groups:
2402  list:
2403    -
2404      name: rtnlgrp-link
2405      value: 1
2406    -
2407      name: rtnlgrp-stats
2408      value: 36
2409