summaryrefslogtreecommitdiffstats
path: root/bgpd/bgp_zebra.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@nvidia.com>2023-08-03 03:08:43 +0200
committerDonald Sharp <sharpd@nvidia.com>2023-08-03 14:25:20 +0200
commit052debc3eedceed9b3a3183fe70120dcd58a535f (patch)
tree0d3205a25db0fffae161af3ea19ed96badbe592c /bgpd/bgp_zebra.c
parentlib, zebra: Send up whether or not v6_with_v4_nexthops are supported (diff)
downloadfrr-052debc3eedceed9b3a3183fe70120dcd58a535f.tar.xz
frr-052debc3eedceed9b3a3183fe70120dcd58a535f.zip
bgpd: Have bgp notice the zebra ability to use v6_with_v4_nexthops
Store the data. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Diffstat (limited to 'bgpd/bgp_zebra.c')
-rw-r--r--bgpd/bgp_zebra.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/bgpd/bgp_zebra.c b/bgpd/bgp_zebra.c
index becd99167..8ff6b63e0 100644
--- a/bgpd/bgp_zebra.c
+++ b/bgpd/bgp_zebra.c
@@ -3455,6 +3455,11 @@ static bool bgp_zebra_label_manager_connect(void)
return true;
}
+static void bgp_zebra_capabilities(struct zclient_capabilities *cap)
+{
+ bm->v6_with_v4_nexthops = cap->v6_with_v4_nexthop;
+}
+
void bgp_zebra_init(struct event_loop *master, unsigned short instance)
{
struct zclient_options options = zclient_options_default;
@@ -3470,6 +3475,7 @@ void bgp_zebra_init(struct event_loop *master, unsigned short instance)
array_size(bgp_handlers));
zclient_init(zclient, ZEBRA_ROUTE_BGP, 0, &bgpd_privs);
zclient->zebra_connected = bgp_zebra_connected;
+ zclient->zebra_capabilities = bgp_zebra_capabilities;
zclient->instance = instance;
/* Initialize special zclient for synchronous message exchanges. */