Now I can change cost of interface without OSPF restart.

This commit is contained in:
Ondrej Filip 2000-06-07 13:46:13 +00:00
parent 6316555eea
commit fa6c2405e2

View file

@ -351,7 +351,7 @@ ospf_get_attr(eattr *a, byte *buf)
static int static int
ospf_patt_compare(struct ospf_iface_patt *a, struct ospf_iface_patt *b) ospf_patt_compare(struct ospf_iface_patt *a, struct ospf_iface_patt *b)
{ {
return ((a->cost==b->cost)&&(a->type==b->type)&&(a->priority==b->priority)); return ((a->type==b->type)&&(a->priority==b->priority));
} }
static int static int
@ -418,6 +418,16 @@ ospf_reconfigure(struct proto *p, struct proto_config *c)
ifa->iface->name,ip1->helloint,ip2->helloint); ifa->iface->name,ip1->helloint,ip2->helloint);
} }
/* COST */
if(ip1->cost!=ip2->cost)
{
ifa->cost=ip2->cost;
OSPF_TRACE(D_EVENTS,
"Changing cost interface %s from %d to %d",
ifa->iface->name,ip1->cost,ip2->cost);
schedule_rt_lsa(ifa->oa);
}
/* AUTHETICATION */ /* AUTHETICATION */
if(ip1->autype!=ip2->autype) if(ip1->autype!=ip2->autype)
{ {