summaryrefslogtreecommitdiff
path: root/bgpd/bgp_nexthop.c
diff options
context:
space:
mode:
authorChristian Franke <chris@opensourcerouting.org>2013-04-11 08:24:30 +0000
committerDavid Lamparter <equinox@opensourcerouting.org>2013-07-31 18:49:50 +0200
commita0f6ce5b41dcfa059074d72c8fc61896d3e996a9 (patch)
treecfaa7586f2d5f434a851088dc7f29a546c74d26c /bgpd/bgp_nexthop.c
parent4ff3bcad8e81b643f3247317a3949d7867b36f75 (diff)
bgpd: honor PEER_FLAG_DISABLE_CONNECTED_CHECK on bgp_scan
When neighbor disable-connected-check was used, bgpd would accept routes with unconnected nexthop as indended, however those routes would be invalidated on the next bgp_scan run as that function did not know about disable-connected-check. Signed-off-by: Christian Franke <chris@opensourcerouting.org> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Diffstat (limited to 'bgpd/bgp_nexthop.c')
-rw-r--r--bgpd/bgp_nexthop.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/bgpd/bgp_nexthop.c b/bgpd/bgp_nexthop.c
index 4076fe41..17586bc8 100644
--- a/bgpd/bgp_nexthop.c
+++ b/bgpd/bgp_nexthop.c
@@ -453,7 +453,8 @@ bgp_scan (afi_t afi, safi_t safi)
changed = 0;
metricchanged = 0;
- if (bi->peer->sort == BGP_PEER_EBGP && bi->peer->ttl == 1)
+ if (bi->peer->sort == BGP_PEER_EBGP && bi->peer->ttl == 1
+ && !CHECK_FLAG(bi->peer->flags, PEER_FLAG_DISABLE_CONNECTED_CHECK))
valid = bgp_nexthop_onlink (afi, bi->attr);
else
valid = bgp_nexthop_lookup (afi, bi->peer, bi,