summaryrefslogtreecommitdiffstats
path: root/zebra/zebra_rib.c
diff options
context:
space:
mode:
Diffstat (limited to 'zebra/zebra_rib.c')
-rw-r--r--zebra/zebra_rib.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/zebra/zebra_rib.c b/zebra/zebra_rib.c
index d4395db1..5ea93112 100644
--- a/zebra/zebra_rib.c
+++ b/zebra/zebra_rib.c
@@ -2013,6 +2013,13 @@ rib_delete_ipv4 (int type, int flags, struct prefix_ipv4 *p,
inet_ntoa (*gate),
ifindex);
+ if (IS_ZEBRA_DEBUG_KERNEL && !gate)
+ zlog_debug ("rib_delete_ipv4(): route delete %s/%d directly, %s ifindex %d",
+ inet_ntop (AF_INET, &p->prefix, buf1, BUFSIZ),
+ p->prefixlen,
+ ifindex2ifname(ifindex),
+ ifindex);
+
/* Lookup route node. */
rn = route_node_lookup (table, (struct prefix *) p);
if (! rn)
@@ -2059,7 +2066,7 @@ rib_delete_ipv4 (int type, int flags, struct prefix_ipv4 *p,
break;
}
/* Make sure that the route found has the same gateway. */
- else if (gate == NULL ||
+ else if (gate != NULL &&
((nexthop = rib->nexthop) &&
(IPV4_ADDR_SAME (&nexthop->gate.ipv4, gate) ||
IPV4_ADDR_SAME (&nexthop->rgate.ipv4, gate))))