summaryrefslogtreecommitdiffstats
path: root/bgpd/bgp_nexthop.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_nexthop.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_nexthop.h')
-rw-r--r--bgpd/bgp_nexthop.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/bgpd/bgp_nexthop.h b/bgpd/bgp_nexthop.h
index ed772868e..519f09276 100644
--- a/bgpd/bgp_nexthop.h
+++ b/bgpd/bgp_nexthop.h
@@ -52,6 +52,7 @@ struct bgp_nexthop_cache {
#define BGP_NEXTHOP_PEER_NOTIFIED (1 << 3)
#define BGP_STATIC_ROUTE (1 << 4)
#define BGP_STATIC_ROUTE_EXACT_MATCH (1 << 5)
+#define BGP_NEXTHOP_LABELED_VALID (1 << 6)
uint16_t change_flags;