This is already addressed and included in round 8 branch.
--Jafar
On 6/14/2016 1:06 PM, Christian Franke wrote:
From: Christian Franke <[email protected]>
zsend_ipv4_nexthop_lookup_mrib is called with rib == NULL if the
lookup does not yield any result. Therefore, rib->vrf_id cannot be
used to construct the response and vrf has to be passed explicitly.
Signed-off-by: Christian Franke <[email protected]>
---
zebra/zserv.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/zebra/zserv.c b/zebra/zserv.c
index e624ef2..ecca253 100644
--- a/zebra/zserv.c
+++ b/zebra/zserv.c
@@ -614,7 +614,7 @@ zsend_ipv4_nexthop_lookup (struct zserv *client, struct
in_addr addr,
*/
static int
zsend_ipv4_nexthop_lookup_mrib (struct zserv *client, struct in_addr addr,
- struct rib *rib)
+ struct rib *rib, vrf_id_t vrf_id)
{
struct stream *s;
unsigned long nump;
@@ -626,7 +626,7 @@ zsend_ipv4_nexthop_lookup_mrib (struct zserv *client,
struct in_addr addr,
stream_reset (s);
/* Fill in result. */
- zserv_create_header (s, ZEBRA_IPV4_NEXTHOP_LOOKUP_MRIB, rib->vrf_id);
+ zserv_create_header (s, ZEBRA_IPV4_NEXTHOP_LOOKUP_MRIB, vrf_id);
stream_put_in_addr (s, &addr);
if (rib)
@@ -1016,7 +1016,7 @@ zread_ipv4_nexthop_lookup_mrib (struct zserv *client,
u_short length,
addr.s_addr = stream_get_ipv4 (client->ibuf);
rib = rib_match_ipv4_multicast (addr, NULL, vrf_id);
- return zsend_ipv4_nexthop_lookup_mrib (client, addr, rib);
+ return zsend_ipv4_nexthop_lookup_mrib (client, addr, rib, vrf_id);
}
/* Nexthop lookup for IPv4. */
_______________________________________________
Quagga-dev mailing list
[email protected]
https://lists.quagga.net/mailman/listinfo/quagga-dev