summaryrefslogtreecommitdiffstats
path: root/bgpd/bgp_route.h
diff options
context:
space:
mode:
authorG. Paul Ziemba <paulz@labn.net>2018-03-24 00:57:03 +0100
committerG. Paul Ziemba <paulz@labn.net>2018-04-04 19:00:23 +0200
commit960035b2d9e8300c91276922158b806b043e2e9b (patch)
treeb365c75fdeb3bc2ac4ed3ff95f22dd6a56726634 /bgpd/bgp_route.h
parentbgpd: simplify bgp instance name printing (diff)
downloadfrr-960035b2d9e8300c91276922158b806b043e2e9b.tar.xz
frr-960035b2d9e8300c91276922158b806b043e2e9b.zip
bgpd: nexthop tracking with labels for vrf-vpn leaking
Routes that have labels must be sent via a nexthop that also has labels. This change notes whether any path in a nexthop update from zebra contains labels. If so, then the nexthop is valid for routes that have labels. If a nexthop update has no labeled paths, then any labeled routes referencing the nexthop are marked not valid. Add a route flag BGP_INFO_ANNC_NH_SELF that means "advertise myself as nexthop when announcing" so that we can track our notion of the nexthop without revealing it to peers. Signed-off-by: G. Paul Ziemba <paulz@labn.net>
Diffstat (limited to 'bgpd/bgp_route.h')
-rw-r--r--bgpd/bgp_route.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/bgpd/bgp_route.h b/bgpd/bgp_route.h
index debd6d1ff..1e788b00f 100644
--- a/bgpd/bgp_route.h
+++ b/bgpd/bgp_route.h
@@ -190,6 +190,7 @@ struct bgp_info {
#define BGP_INFO_MULTIPATH (1 << 11)
#define BGP_INFO_MULTIPATH_CHG (1 << 12)
#define BGP_INFO_RIB_ATTR_CHG (1 << 13)
+#define BGP_INFO_ANNC_NH_SELF (1 << 14)
/* BGP route type. This can be static, RIP, OSPF, BGP etc. */
uint8_t type;