summaryrefslogtreecommitdiff
path: root/lib/nexthop.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/nexthop.h')
-rw-r--r--lib/nexthop.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/lib/nexthop.h b/lib/nexthop.h
index 1d95a3eee9..bed6447d49 100644
--- a/lib/nexthop.h
+++ b/lib/nexthop.h
@@ -125,6 +125,12 @@ struct nexthop {
vni_t vni;
} nh_encap;
+ /* EVPN router's MAC.
+ * Don't support multiple RMAC from the same VTEP yet, so it's not
+ * included in hash key.
+ */
+ struct ethaddr rmac;
+
/* SR-TE color used for matching SR-TE policies */
uint32_t srte_color;
@@ -151,8 +157,8 @@ void nexthop_del_labels(struct nexthop *);
void nexthop_add_srv6_seg6local(struct nexthop *nexthop, uint32_t action,
const struct seg6local_context *ctx);
void nexthop_del_srv6_seg6local(struct nexthop *nexthop);
-void nexthop_add_srv6_seg6(struct nexthop *nexthop,
- const struct in6_addr *segs);
+void nexthop_add_srv6_seg6(struct nexthop *nexthop, const struct in6_addr *seg,
+ int num_segs);
void nexthop_del_srv6_seg6(struct nexthop *nexthop);
/*
@@ -234,6 +240,9 @@ extern struct nexthop *nexthop_dup(const struct nexthop *nexthop,
extern struct nexthop *nexthop_dup_no_recurse(const struct nexthop *nexthop,
struct nexthop *rparent);
+/* Check nexthop of IFINDEX type */
+extern bool nexthop_is_ifindex_type(const struct nexthop *nh);
+
/*
* Parse one or more backup index values, as comma-separated numbers,
* into caller's array of uint8_ts. The array must be NEXTHOP_MAX_BACKUPS