diff options
author | Ondrej Filip <feela@network.cz> | 2000-09-02 02:15:07 +0200 |
---|---|---|
committer | Ondrej Filip <feela@network.cz> | 2000-09-02 02:15:07 +0200 |
commit | 7cedbf217e8ce8a8669f31b1ee38e5f9ccb4eefd (patch) | |
tree | 412096951cd2cdf2114b8ba43fe58f94b31f0e8a /proto/ospf/ospf.c | |
parent | e7e2878b744f415df9fcef291da67975da4dfc29 (diff) | |
download | bird-7cedbf217e8ce8a8669f31b1ee38e5f9ccb4eefd.tar bird-7cedbf217e8ce8a8669f31b1ee38e5f9ccb4eefd.zip |
Reconfiguration for new options.
Diffstat (limited to 'proto/ospf/ospf.c')
-rw-r--r-- | proto/ospf/ospf.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/proto/ospf/ospf.c b/proto/ospf/ospf.c index 55696bd..3fc3f60 100644 --- a/proto/ospf/ospf.c +++ b/proto/ospf/ospf.c @@ -542,6 +542,22 @@ ospf_reconfigure(struct proto *p, struct proto_config *c) schedule_rt_lsa(ifa->oa); } + /* strict nbma */ + if((ip1->strictnbma==0)&&(ip2->strictnbma!=0)) + { + ifa->strictnbma=ip2->strictnbma; + OSPF_TRACE(D_EVENTS, + "Interface %s is now strict NBMA", + ifa->iface->name); + } + if((ip1->strictnbma!=0)&&(ip2->strictnbma==0)) + { + ifa->strictnbma=ip2->strictnbma; + OSPF_TRACE(D_EVENTS, + "Interface %s is no longer strict NBMA", + ifa->iface->name); + } + /* AUTHETICATION */ if(ip1->autype!=ip2->autype) { @@ -605,6 +621,10 @@ ospf_reconfigure(struct proto *p, struct proto_config *c) if(ipa_compare(nb1->ip,nb2->ip)==0) { found=1; + if(nb1->eligible!=nb2->eligible) + OSPF_TRACE(D_EVENTS, + "Changing neighbor eligibility %I on interface %s", + nb1->ip,ifa->iface->name); break; } @@ -631,6 +651,7 @@ ospf_reconfigure(struct proto *p, struct proto_config *c) { nb1=mb_alloc(p->pool,sizeof(struct nbma_node)); nb1->ip=nb2->ip; + nb1->eligible=nb2->eligible; add_tail(&ifa->nbma_list, NODE nb1); OSPF_TRACE(D_EVENTS, "Adding NBMA neighbor %I on interface %s", |