summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Lamparter <equinox@opensourcerouting.org>2021-10-04 12:21:45 +0200
committerDavid Lamparter <equinox@opensourcerouting.org>2022-03-27 14:57:22 +0200
commiteb3c9d97747bd0346a5ea951960c994dc2871ab3 (patch)
tree37c26069b60ce9c7a3abd0a560d1f97e9eecaeea
parentzebra: `show ip nht mrib` (diff)
downloadfrr-eb3c9d97747bd0346a5ea951960c994dc2871ab3.tar.xz
frr-eb3c9d97747bd0346a5ea951960c994dc2871ab3.zip
*: add SAFI argument to zclient_send_rnh
Just pushing that SAFI_UNICAST up 1 level to the caller. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
-rw-r--r--bgpd/bgp_nht.c5
-rw-r--r--lib/zclient.c8
-rw-r--r--lib/zclient.h3
-rw-r--r--ospf6d/ospf6_zebra.c4
-rw-r--r--pbrd/pbr_zebra.c3
-rw-r--r--pimd/pim_nht.c2
-rw-r--r--sharpd/sharp_zebra.c3
-rw-r--r--staticd/static_zebra.c4
8 files changed, 18 insertions, 14 deletions
diff --git a/bgpd/bgp_nht.c b/bgpd/bgp_nht.c
index d76873354..d3ebc0e6a 100644
--- a/bgpd/bgp_nht.c
+++ b/bgpd/bgp_nht.c
@@ -889,8 +889,9 @@ static void sendmsg_zebra_rnh(struct bgp_nexthop_cache *bnc, int command)
zserv_command_string(command), &bnc->prefix,
bnc->bgp->name_pretty);
- ret = zclient_send_rnh(zclient, command, &bnc->prefix, exact_match,
- resolve_via_default, bnc->bgp->vrf_id);
+ ret = zclient_send_rnh(zclient, command, &bnc->prefix, SAFI_UNICAST,
+ exact_match, resolve_via_default,
+ bnc->bgp->vrf_id);
if (ret == ZCLIENT_SEND_FAILURE) {
flog_warn(EC_BGP_ZEBRA_SEND,
"sendmsg_nexthop: zclient_send_message() failed");
diff --git a/lib/zclient.c b/lib/zclient.c
index f6c5a8af0..0c3421415 100644
--- a/lib/zclient.c
+++ b/lib/zclient.c
@@ -768,9 +768,9 @@ static void zclient_connect(struct thread *t)
}
enum zclient_send_status zclient_send_rnh(struct zclient *zclient, int command,
- const struct prefix *p,
- bool connected,
- bool resolve_via_def, vrf_id_t vrf_id)
+ const struct prefix *p, safi_t safi,
+ bool connected, bool resolve_via_def,
+ vrf_id_t vrf_id)
{
struct stream *s;
@@ -779,7 +779,7 @@ enum zclient_send_status zclient_send_rnh(struct zclient *zclient, int command,
zclient_create_header(s, command, vrf_id);
stream_putc(s, (connected) ? 1 : 0);
stream_putc(s, (resolve_via_def) ? 1 : 0);
- stream_putw(s, SAFI_UNICAST);
+ stream_putw(s, safi);
stream_putw(s, PREFIX_FAMILY(p));
stream_putc(s, p->prefixlen);
switch (PREFIX_FAMILY(p)) {
diff --git a/lib/zclient.h b/lib/zclient.h
index 092754f60..7e1283d83 100644
--- a/lib/zclient.h
+++ b/lib/zclient.h
@@ -1071,7 +1071,8 @@ extern enum zclient_send_status zclient_route_send(uint8_t, struct zclient *,
struct zapi_route *);
extern enum zclient_send_status
zclient_send_rnh(struct zclient *zclient, int command, const struct prefix *p,
- bool connected, bool resolve_via_default, vrf_id_t vrf_id);
+ safi_t safi, bool connected, bool resolve_via_default,
+ vrf_id_t vrf_id);
int zapi_nexthop_encode(struct stream *s, const struct zapi_nexthop *api_nh,
uint32_t api_flags, uint32_t api_message);
extern int zapi_route_encode(uint8_t, struct stream *, struct zapi_route *);
diff --git a/ospf6d/ospf6_zebra.c b/ospf6d/ospf6_zebra.c
index 4b37c5bc2..18b1959b9 100644
--- a/ospf6d/ospf6_zebra.c
+++ b/ospf6d/ospf6_zebra.c
@@ -155,8 +155,8 @@ void ospf6_zebra_import_default_route(struct ospf6 *ospf6, bool unreg)
zserv_command_string(command), &prefix,
ospf6->vrf_id);
- if (zclient_send_rnh(zclient, command, &prefix, false, true,
- ospf6->vrf_id)
+ if (zclient_send_rnh(zclient, command, &prefix, SAFI_UNICAST, false,
+ true, ospf6->vrf_id)
== ZCLIENT_SEND_FAILURE)
flog_err(EC_LIB_ZAPI_SOCKET, "%s: zclient_send_rnh() failed",
__func__);
diff --git a/pbrd/pbr_zebra.c b/pbrd/pbr_zebra.c
index f99258872..da4e3e1bc 100644
--- a/pbrd/pbr_zebra.c
+++ b/pbrd/pbr_zebra.c
@@ -485,7 +485,8 @@ void pbr_send_rnh(struct nexthop *nhop, bool reg)
break;
}
- if (zclient_send_rnh(zclient, command, &p, false, false, nhop->vrf_id)
+ if (zclient_send_rnh(zclient, command, &p, SAFI_UNICAST, false, false,
+ nhop->vrf_id)
== ZCLIENT_SEND_FAILURE) {
zlog_warn("%s: Failure to send nexthop to zebra", __func__);
}
diff --git a/pimd/pim_nht.c b/pimd/pim_nht.c
index 753857005..94dcfb826 100644
--- a/pimd/pim_nht.c
+++ b/pimd/pim_nht.c
@@ -55,7 +55,7 @@ void pim_sendmsg_zebra_rnh(struct pim_instance *pim, struct zclient *zclient,
int ret;
p = &(pnc->rpf.rpf_addr);
- ret = zclient_send_rnh(zclient, command, p, false, false,
+ ret = zclient_send_rnh(zclient, command, p, SAFI_UNICAST, false, false,
pim->vrf->vrf_id);
if (ret == ZCLIENT_SEND_FAILURE)
zlog_warn("sendmsg_nexthop: zclient_send_message() failed");
diff --git a/sharpd/sharp_zebra.c b/sharpd/sharp_zebra.c
index 52364bff4..b40c2c622 100644
--- a/sharpd/sharp_zebra.c
+++ b/sharpd/sharp_zebra.c
@@ -631,7 +631,8 @@ void sharp_zebra_nexthop_watch(struct prefix *p, vrf_id_t vrf_id, bool import,
if (!watch)
command = ZEBRA_NEXTHOP_UNREGISTER;
- if (zclient_send_rnh(zclient, command, p, connected, false, vrf_id)
+ if (zclient_send_rnh(zclient, command, p, SAFI_UNICAST, connected,
+ false, vrf_id)
== ZCLIENT_SEND_FAILURE)
zlog_warn("%s: Failure to send nexthop to zebra", __func__);
}
diff --git a/staticd/static_zebra.c b/staticd/static_zebra.c
index bd293edeb..ea17435b2 100644
--- a/staticd/static_zebra.c
+++ b/staticd/static_zebra.c
@@ -330,8 +330,8 @@ void static_zebra_nht_register(struct static_nexthop *nh, bool reg)
DEBUGD(&static_dbg_route, "%s nexthop(%pFX) for %pRN",
reg ? "Registering" : "Unregistering", &p, rn);
- if (zclient_send_rnh(zclient, cmd, &p, false, false, nh->nh_vrf_id)
- == ZCLIENT_SEND_FAILURE)
+ if (zclient_send_rnh(zclient, cmd, &p, SAFI_UNICAST, false, false,
+ nh->nh_vrf_id) == ZCLIENT_SEND_FAILURE)
zlog_warn("%s: Failure to send nexthop to zebra", __func__);
}
/*