summaryrefslogtreecommitdiffstats
path: root/zebra/zebra_rnh.c
diff options
context:
space:
mode:
authorDaniel Walton <dwalton@cumulusnetworks.com>2016-08-31 14:31:47 +0200
committerDaniel Walton <dwalton@cumulusnetworks.com>2016-08-31 14:31:47 +0200
commit337299a936d9db8951825dcbf3acc4bd3b89ac32 (patch)
tree9877fdace683b7682609c97e24d93375cd13278d /zebra/zebra_rnh.c
parentjson support for "show ip route" for "show ipv6 route" (diff)
downloadfrr-337299a936d9db8951825dcbf3acc4bd3b89ac32.tar.xz
frr-337299a936d9db8951825dcbf3acc4bd3b89ac32.zip
Quagga won't advertise 0.0.0.0/0 with network statement
Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com> Ticket: CM-12561
Diffstat (limited to 'zebra/zebra_rnh.c')
-rw-r--r--zebra/zebra_rnh.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/zebra/zebra_rnh.c b/zebra/zebra_rnh.c
index 55c428067..7b4840164 100644
--- a/zebra/zebra_rnh.c
+++ b/zebra/zebra_rnh.c
@@ -353,18 +353,17 @@ zebra_rnh_resolve_entry (vrf_id_t vrfid, int family, rnh_type_t type,
if (!rn)
return NULL;
- /* Do not resolve over default route unless allowed &&
- * match route to be exact if so specified
+ /* When resolving nexthops, do not resolve via the default route unless
+ * 'ip nht resolve-via-default' is configured.
*/
if ((type == RNH_NEXTHOP_TYPE) &&
(is_default_prefix (&rn->p) &&
!nh_resolve_via_default(rn->p.family)))
rib = NULL;
- else if ((type == RNH_IMPORT_CHECK_TYPE) &&
- ((is_default_prefix(&rn->p)) ||
- ((CHECK_FLAG(rnh->flags, ZEBRA_NHT_EXACT_MATCH)) &&
- !prefix_same(&nrn->p, &rn->p))))
- rib = NULL;
+ else if ((type == RNH_IMPORT_CHECK_TYPE) &&
+ CHECK_FLAG(rnh->flags, ZEBRA_NHT_EXACT_MATCH) &&
+ !prefix_same(&nrn->p, &rn->p))
+ rib = NULL;
else
{
/* Identify appropriate route entry. */