summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--proto/ospf/config.Y8
-rw-r--r--proto/ospf/ospf.c10
-rw-r--r--proto/ospf/ospf.h5
3 files changed, 12 insertions, 11 deletions
diff --git a/proto/ospf/config.Y b/proto/ospf/config.Y
index e4ed500b..177c926f 100644
--- a/proto/ospf/config.Y
+++ b/proto/ospf/config.Y
@@ -112,8 +112,8 @@ pref_el: prefix ';'
{
this_pref = cfg_allocz(sizeof(struct area_net));
add_tail(&this_area->net_list, NODE this_pref);
- this_pref->net = $1.addr;
- this_pref->mlen = $1.len;
+ this_pref->px.addr = $1.addr;
+ this_pref->px.len = $1.len;
}
;
@@ -121,8 +121,8 @@ pref_hid: prefix HIDDEN ';'
{
this_pref = cfg_allocz(sizeof(struct area_net));
add_tail(&this_area->net_list, NODE this_pref);
- this_pref->net = $1.addr;
- this_pref->mlen = $1.len;
+ this_pref->px.addr = $1.addr;
+ this_pref->px.len = $1.len;
this_pref->hidden = 1;
}
;
diff --git a/proto/ospf/ospf.c b/proto/ospf/ospf.c
index 79564ed8..73460820 100644
--- a/proto/ospf/ospf.c
+++ b/proto/ospf/ospf.c
@@ -116,8 +116,8 @@ ospf_start(struct proto *p)
WALK_LIST(anet,ac->net_list)
{
antmp=mb_allocz(po->proto.pool, sizeof(struct area_net));
- antmp->net=anet->net;
- antmp->mlen=anet->mlen;
+ antmp->px.addr=anet->px.addr;
+ antmp->px.len=anet->px.len;
antmp->hidden=anet->hidden;
add_tail(&oa->net_list, NODE antmp);
}
@@ -542,8 +542,8 @@ ospf_reconfigure(struct proto *p, struct proto_config *c)
WALK_LIST(anet, ac2->net_list)
{
antmp=mb_alloc(p->pool, sizeof(struct area_net));
- antmp->net=anet->net;
- antmp->mlen=anet->mlen;
+ antmp->px.addr=anet->px.addr;
+ antmp->px.len=anet->px.len;
antmp->hidden=anet->hidden;
add_tail(&oa->net_list, NODE antmp);
}
@@ -836,7 +836,7 @@ ospf_sh(struct proto *p)
cli_msg(-1014,"\t\tArea networks:");
WALK_LIST(anet, oa->net_list)
{
- cli_msg(-1014,"\t\t\t%1I/%u\t%s", anet->net, anet->mlen,
+ cli_msg(-1014,"\t\t\t%1I/%u\t%s", anet->px.addr, anet->px.len,
anet->hidden ? "Hidden" : "Advertise");
}
}
diff --git a/proto/ospf/ospf.h b/proto/ospf/ospf.h
index 4b573f8b..b0ac1e9f 100644
--- a/proto/ospf/ospf.h
+++ b/proto/ospf/ospf.h
@@ -67,9 +67,10 @@ struct nbma_node {
struct area_net {
node n;
- ip_addr net;
- int mlen;
+ struct prefix px;
int hidden;
+ int active;
+ int oldactive;
};
struct ospf_area_config {