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:
Ondrej Filip 2000-09-04 21:21:34 +00:00
parent b02e40111e
commit 52fa3e3869
4 changed files with 6 additions and 2 deletions

View file

@ -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);
}
}

View file

@ -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;

View file

@ -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 */
{

View file

@ -400,7 +400,7 @@ ospf_ext_spfa(struct proto_ospf *po) /* FIXME looking into inter-area */
if((nn=neigh_find(p,&lt->fwaddr,0))!=NULL)
{
nnh=IPA_NONE;
nnh=lt->fwaddr;
nnhi=nn->iface;
}
else