Since commit 1885d0a5274cd78e46ad6c22171a5240a2f27f64, struct nexthop_vrfid*
is passed to route_map_apply function, instead of *struct nexthop*.

Referring as struct nexthop* leads zebra process to crash; Actually,
route_set_src function crashed saved rip of nexthop_active_check frame.

Signed-off-by: Shota Fukumori <[email protected]>
---
 zebra/zebra_routemap.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/zebra/zebra_routemap.c b/zebra/zebra_routemap.c
index da9cb13..7884d7f 100644
--- a/zebra/zebra_routemap.c
+++ b/zebra/zebra_routemap.c
@@ -632,10 +632,9 @@ route_set_src (void *rule, struct prefix *prefix,
 {
   if (type == RMAP_ZEBRA)
     {
-      struct nexthop *nexthop;
-
-      nexthop = object;
-      nexthop->src = *(union g_addr *)rule;
+      struct nexthop_vrfid *nh_vrf;
+      nh_vrf = object;
+      nh_vrf->nexthop->src = *(union g_addr *)rule;
     }
   return RMAP_OKAY;
 }
-- 
2.7.3


_______________________________________________
Quagga-dev mailing list
[email protected]
https://lists.quagga.net/mailman/listinfo/quagga-dev

Reply via email to