summaryrefslogtreecommitdiffstats
path: root/proto/bgp/bgp.c
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2009-11-18 20:32:36 +0100
committerOndrej Zajicek <santiago@crfreenet.org>2009-11-18 20:32:36 +0100
commit3f9b7bfe9ff050430a5886b22a5ab11b5f253048 (patch)
treed2261e130a4704bf2c84136bbdd98bdd238b2778 /proto/bgp/bgp.c
parent62aa96caa28180f76c8aff0c49dd21128e396153 (diff)
downloadbird-3f9b7bfe9ff050430a5886b22a5ab11b5f253048.tar
bird-3f9b7bfe9ff050430a5886b22a5ab11b5f253048.zip
Implements option that controls IPv6 BGP next hops when lladdr is missing.
Diffstat (limited to 'proto/bgp/bgp.c')
-rw-r--r--proto/bgp/bgp.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/proto/bgp/bgp.c b/proto/bgp/bgp.c
index b38c6b1..cde0276 100644
--- a/proto/bgp/bgp.c
+++ b/proto/bgp/bgp.c
@@ -886,6 +886,10 @@ bgp_check(struct bgp_config *c)
if ((c->local_as == c->remote_as) && (c->rs_client))
cf_error("Only external neighbor can be RS client");
+
+ /* Different default based on rs_client */
+ if (c->missing_lladdr == 0)
+ c->missing_lladdr = c->rs_client ? MLL_DROP : MLL_SELF;
}
static char *bgp_state_names[] = { "Idle", "Connect", "Active", "OpenSent", "OpenConfirm", "Established", "Close" };