hc
2024-05-10 61598093bbdd283a7edc367d900f223070ead8d2
kernel/include/uapi/linux/rtnetlink.h
....@@ -157,6 +157,27 @@
157157 RTM_GETCHAIN,
158158 #define RTM_GETCHAIN RTM_GETCHAIN
159159
160
+ RTM_NEWNEXTHOP = 104,
161
+#define RTM_NEWNEXTHOP RTM_NEWNEXTHOP
162
+ RTM_DELNEXTHOP,
163
+#define RTM_DELNEXTHOP RTM_DELNEXTHOP
164
+ RTM_GETNEXTHOP,
165
+#define RTM_GETNEXTHOP RTM_GETNEXTHOP
166
+
167
+ RTM_NEWLINKPROP = 108,
168
+#define RTM_NEWLINKPROP RTM_NEWLINKPROP
169
+ RTM_DELLINKPROP,
170
+#define RTM_DELLINKPROP RTM_DELLINKPROP
171
+ RTM_GETLINKPROP,
172
+#define RTM_GETLINKPROP RTM_GETLINKPROP
173
+
174
+ RTM_NEWVLAN = 112,
175
+#define RTM_NEWNVLAN RTM_NEWVLAN
176
+ RTM_DELVLAN,
177
+#define RTM_DELVLAN RTM_DELVLAN
178
+ RTM_GETVLAN,
179
+#define RTM_GETVLAN RTM_GETVLAN
180
+
160181 __RTM_MAX,
161182 #define RTM_MAX (((__RTM_MAX + 3) & ~3) - 1)
162183 };
....@@ -236,12 +257,12 @@
236257
237258 /* rtm_protocol */
238259
239
-#define RTPROT_UNSPEC 0
240
-#define RTPROT_REDIRECT 1 /* Route installed by ICMP redirects;
241
- not used by current IPv4 */
242
-#define RTPROT_KERNEL 2 /* Route installed by kernel */
243
-#define RTPROT_BOOT 3 /* Route installed during boot */
244
-#define RTPROT_STATIC 4 /* Route installed by administrator */
260
+#define RTPROT_UNSPEC 0
261
+#define RTPROT_REDIRECT 1 /* Route installed by ICMP redirects;
262
+ not used by current IPv4 */
263
+#define RTPROT_KERNEL 2 /* Route installed by kernel */
264
+#define RTPROT_BOOT 3 /* Route installed during boot */
265
+#define RTPROT_STATIC 4 /* Route installed by administrator */
245266
246267 /* Values of protocol >= RTPROT_STATIC are not interpreted by kernel;
247268 they are just passed from user and back as is.
....@@ -250,22 +271,23 @@
250271 avoid conflicts.
251272 */
252273
253
-#define RTPROT_GATED 8 /* Apparently, GateD */
254
-#define RTPROT_RA 9 /* RDISC/ND router advertisements */
255
-#define RTPROT_MRT 10 /* Merit MRT */
256
-#define RTPROT_ZEBRA 11 /* Zebra */
257
-#define RTPROT_BIRD 12 /* BIRD */
258
-#define RTPROT_DNROUTED 13 /* DECnet routing daemon */
259
-#define RTPROT_XORP 14 /* XORP */
260
-#define RTPROT_NTK 15 /* Netsukuku */
261
-#define RTPROT_DHCP 16 /* DHCP client */
262
-#define RTPROT_MROUTED 17 /* Multicast daemon */
263
-#define RTPROT_BABEL 42 /* Babel daemon */
264
-#define RTPROT_BGP 186 /* BGP Routes */
265
-#define RTPROT_ISIS 187 /* ISIS Routes */
266
-#define RTPROT_OSPF 188 /* OSPF Routes */
267
-#define RTPROT_RIP 189 /* RIP Routes */
268
-#define RTPROT_EIGRP 192 /* EIGRP Routes */
274
+#define RTPROT_GATED 8 /* Apparently, GateD */
275
+#define RTPROT_RA 9 /* RDISC/ND router advertisements */
276
+#define RTPROT_MRT 10 /* Merit MRT */
277
+#define RTPROT_ZEBRA 11 /* Zebra */
278
+#define RTPROT_BIRD 12 /* BIRD */
279
+#define RTPROT_DNROUTED 13 /* DECnet routing daemon */
280
+#define RTPROT_XORP 14 /* XORP */
281
+#define RTPROT_NTK 15 /* Netsukuku */
282
+#define RTPROT_DHCP 16 /* DHCP client */
283
+#define RTPROT_MROUTED 17 /* Multicast daemon */
284
+#define RTPROT_KEEPALIVED 18 /* Keepalived daemon */
285
+#define RTPROT_BABEL 42 /* Babel daemon */
286
+#define RTPROT_BGP 186 /* BGP Routes */
287
+#define RTPROT_ISIS 187 /* ISIS Routes */
288
+#define RTPROT_OSPF 188 /* OSPF Routes */
289
+#define RTPROT_RIP 189 /* RIP Routes */
290
+#define RTPROT_EIGRP 192 /* EIGRP Routes */
269291
270292 /* rtm_scope
271293
....@@ -295,6 +317,8 @@
295317 #define RTM_F_PREFIX 0x800 /* Prefix addresses */
296318 #define RTM_F_LOOKUP_TABLE 0x1000 /* set rtm_table to FIB lookup result */
297319 #define RTM_F_FIB_MATCH 0x2000 /* return full fib lookup match */
320
+#define RTM_F_OFFLOAD 0x4000 /* route is offloaded */
321
+#define RTM_F_TRAP 0x8000 /* route is trapping packets */
298322
299323 /* Reserved table identifiers */
300324
....@@ -342,6 +366,7 @@
342366 RTA_IP_PROTO,
343367 RTA_SPORT,
344368 RTA_DPORT,
369
+ RTA_NH_ID,
345370 __RTA_MAX
346371 };
347372
....@@ -585,10 +610,16 @@
585610 TCA_HW_OFFLOAD,
586611 TCA_INGRESS_BLOCK,
587612 TCA_EGRESS_BLOCK,
613
+ TCA_DUMP_FLAGS,
588614 __TCA_MAX
589615 };
590616
591617 #define TCA_MAX (__TCA_MAX - 1)
618
+
619
+#define TCA_DUMP_FLAGS_TERSE (1 << 0) /* Means that in dump user gets only basic
620
+ * data necessary to identify the objects
621
+ * (handle, cookie, etc.) and stats.
622
+ */
592623
593624 #define TCA_RTA(r) ((struct rtattr*)(((char*)(r)) + NLMSG_ALIGN(sizeof(struct tcmsg))))
594625 #define TCA_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct tcmsg))
....@@ -704,6 +735,10 @@
704735 #define RTNLGRP_IPV4_MROUTE_R RTNLGRP_IPV4_MROUTE_R
705736 RTNLGRP_IPV6_MROUTE_R,
706737 #define RTNLGRP_IPV6_MROUTE_R RTNLGRP_IPV6_MROUTE_R
738
+ RTNLGRP_NEXTHOP,
739
+#define RTNLGRP_NEXTHOP RTNLGRP_NEXTHOP
740
+ RTNLGRP_BRVLAN,
741
+#define RTNLGRP_BRVLAN RTNLGRP_BRVLAN
707742 __RTNLGRP_MAX
708743 };
709744 #define RTNLGRP_MAX (__RTNLGRP_MAX - 1)
....@@ -743,6 +778,7 @@
743778 #define RTEXT_FILTER_BRVLAN (1 << 1)
744779 #define RTEXT_FILTER_BRVLAN_COMPRESSED (1 << 2)
745780 #define RTEXT_FILTER_SKIP_STATS (1 << 3)
781
+#define RTEXT_FILTER_MRP (1 << 4)
746782
747783 /* End of information exported to user level */
748784