]> git.puffer.fish Git - mirror/frr.git/commitdiff
include: Update rtnetlink.h to be correct with upstream kernels 9411/head
authorDonald Sharp <sharpd@nvidia.com>
Mon, 16 Aug 2021 19:18:55 +0000 (15:18 -0400)
committerDonald Sharp <sharpd@nvidia.com>
Mon, 16 Aug 2021 19:18:55 +0000 (15:18 -0400)
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
include/linux/rtnetlink.h

index 74a0d795aba6898da33e99956c85e29875429e03..5888492a5257b450d6518718a80c82a4d6c17b93 100644 (file)
@@ -178,6 +178,13 @@ enum {
        RTM_GETVLAN,
 #define RTM_GETVLAN    RTM_GETVLAN
 
+       RTM_NEWNEXTHOPBUCKET = 116,
+#define RTM_NEWNEXTHOPBUCKET   RTM_NEWNEXTHOPBUCKET
+       RTM_DELNEXTHOPBUCKET,
+#define RTM_DELNEXTHOPBUCKET   RTM_DELNEXTHOPBUCKET
+       RTM_GETNEXTHOPBUCKET,
+#define RTM_GETNEXTHOPBUCKET   RTM_GETNEXTHOPBUCKET
+
        __RTM_MAX,
 #define RTM_MAX                (((__RTM_MAX + 3) & ~3) - 1)
 };
@@ -283,6 +290,7 @@ enum {
 #define RTPROT_MROUTED         17      /* Multicast daemon */
 #define RTPROT_KEEPALIVED      18      /* Keepalived daemon */
 #define RTPROT_BABEL           42      /* Babel daemon */
+#define RTPROT_OPENR           99      /* Open Routing (Open/R) Routes */
 #define RTPROT_BGP             186     /* BGP Routes */
 #define RTPROT_ISIS            187     /* ISIS Routes */
 #define RTPROT_OSPF            188     /* OSPF Routes */
@@ -319,7 +327,11 @@ enum rt_scope_t {
 #define RTM_F_FIB_MATCH                0x2000  /* return full fib lookup match */
 #define RTM_F_OFFLOAD          0x4000  /* route is offloaded */
 #define RTM_F_TRAP             0x8000  /* route is trapping packets */
-#define RTM_F_OFFLOAD_FAILED    0x10000 /* route offload failed */
+#define RTM_F_OFFLOAD_FAILED   0x20000000 /* route offload failed, this value
+                                           * is chosen to avoid conflicts with
+                                           * other flags defined in
+                                           * include/uapi/linux/ipv6_route.h
+                                           */
 
 /* Reserved table identifiers */
 
@@ -397,11 +409,13 @@ struct rtnexthop {
 #define RTNH_F_DEAD            1       /* Nexthop is dead (used by multipath)  */
 #define RTNH_F_PERVASIVE       2       /* Do recursive gateway lookup  */
 #define RTNH_F_ONLINK          4       /* Gateway is forced on link    */
-#define RTNH_F_OFFLOAD         8       /* offloaded route */
+#define RTNH_F_OFFLOAD         8       /* Nexthop is offloaded */
 #define RTNH_F_LINKDOWN                16      /* carrier-down on nexthop */
 #define RTNH_F_UNRESOLVED      32      /* The entry is unresolved (ipmr) */
+#define RTNH_F_TRAP            64      /* Nexthop is trapping packets */
 
-#define RTNH_COMPARE_MASK      (RTNH_F_DEAD | RTNH_F_LINKDOWN | RTNH_F_OFFLOAD)
+#define RTNH_COMPARE_MASK      (RTNH_F_DEAD | RTNH_F_LINKDOWN | \
+                                RTNH_F_OFFLOAD | RTNH_F_TRAP)
 
 /* Macros to handle hexthops */
 
@@ -767,12 +781,18 @@ enum {
 #define TA_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct tcamsg))
 /* tcamsg flags stored in attribute TCA_ROOT_FLAGS
  *
- * TCA_FLAG_LARGE_DUMP_ON user->kernel to request for larger than TCA_ACT_MAX_PRIO
- * actions in a dump. All dump responses will contain the number of actions
- * being dumped stored in for user app's consumption in TCA_ROOT_COUNT
+ * TCA_ACT_FLAG_LARGE_DUMP_ON user->kernel to request for larger than
+ * TCA_ACT_MAX_PRIO actions in a dump. All dump responses will contain the
+ * number of actions being dumped stored in for user app's consumption in
+ * TCA_ROOT_COUNT
+ *
+ * TCA_ACT_FLAG_TERSE_DUMP user->kernel to request terse (brief) dump that only
+ * includes essential action info (kind, index, etc.)
  *
  */
 #define TCA_FLAG_LARGE_DUMP_ON         (1 << 0)
+#define TCA_ACT_FLAG_LARGE_DUMP_ON     TCA_FLAG_LARGE_DUMP_ON
+#define TCA_ACT_FLAG_TERSE_DUMP                (1 << 1)
 
 /* New extended info filters for IFLA_EXT_MASK */
 #define RTEXT_FILTER_VF                (1 << 0)
@@ -780,6 +800,8 @@ enum {
 #define RTEXT_FILTER_BRVLAN_COMPRESSED (1 << 2)
 #define        RTEXT_FILTER_SKIP_STATS (1 << 3)
 #define RTEXT_FILTER_MRP       (1 << 4)
+#define RTEXT_FILTER_CFM_CONFIG        (1 << 5)
+#define RTEXT_FILTER_CFM_STATUS        (1 << 6)
 
 /* End of information exported to user level */