Fixed many bugs in rt calculation and interface adding. Now it seems to be
OK, I'm going to advertise 1.0.4.
This commit is contained in:
parent
b02e40111e
commit
52fa3e3869
4 changed files with 6 additions and 2 deletions
|
@ -173,7 +173,6 @@ ospf_int_sm(struct ospf_iface *ifa, int event)
|
|||
restart_waittim(ifa);
|
||||
}
|
||||
}
|
||||
addifa_rtlsa(ifa);
|
||||
}
|
||||
schedule_rt_lsa(ifa->oa);
|
||||
break;
|
||||
|
@ -403,6 +402,7 @@ ospf_if_notify(struct proto *p, unsigned flags, struct iface *iface)
|
|||
lock->iface = iface;
|
||||
lock->data = ifa;
|
||||
lock->hook = ospf_ifa_add;
|
||||
addifa_rtlsa(ifa);
|
||||
olock_acquire(lock);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -22,6 +22,8 @@ flood_lsa(struct ospf_neighbor *n, struct ospf_lsa_header *hn,
|
|||
/* pg 148 */
|
||||
WALK_LIST(NODE ifa,po->iface_list)
|
||||
{
|
||||
if(ifa->stub) continue;
|
||||
|
||||
if(hh->type==LSA_T_EXT)
|
||||
{
|
||||
if(ifa->type==OSPF_IT_VLINK) continue;
|
||||
|
|
|
@ -355,8 +355,10 @@ ospf_rt_notify(struct proto *p, net *n, rte *new, rte *old, ea_list *attrs)
|
|||
{
|
||||
struct proto_ospf *po=(struct proto_ospf *)p;
|
||||
|
||||
/* Temporarily down write anythink
|
||||
OSPF_TRACE(D_EVENTS, "Got route %I/%d %s", p->name, n->n.prefix,
|
||||
n->n.pxlen, new ? "up" : "down");
|
||||
*/
|
||||
|
||||
if(new) /* Got some new route */
|
||||
{
|
||||
|
|
|
@ -400,7 +400,7 @@ ospf_ext_spfa(struct proto_ospf *po) /* FIXME looking into inter-area */
|
|||
|
||||
if((nn=neigh_find(p,<->fwaddr,0))!=NULL)
|
||||
{
|
||||
nnh=IPA_NONE;
|
||||
nnh=lt->fwaddr;
|
||||
nnhi=nn->iface;
|
||||
}
|
||||
else
|
||||
|
|
Loading…
Reference in a new issue