diff options
author | Ondrej Zajicek <santiago@crfreenet.org> | 2011-03-17 15:53:36 +0100 |
---|---|---|
committer | Ondrej Zajicek <santiago@crfreenet.org> | 2011-03-17 15:53:36 +0100 |
commit | 8e48831a970a784a979446813191628790d477f1 (patch) | |
tree | e3c2e1c2a13ab2249d42b87ce26a1dc02d3faaaf /proto/ospf/topology.c | |
parent | 93e868c730dc0b1825b2a685e0b066c051b1cb07 (diff) |
Vastly improved OSPF reconfiguration.
Now it can handle a change in iface pattern structure.
It can add, remove and reconfigure interfaces, vlinks and areas.
Diffstat (limited to 'proto/ospf/topology.c')
-rw-r--r-- | proto/ospf/topology.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/proto/ospf/topology.c b/proto/ospf/topology.c index 9e693e13..1403e72e 100644 --- a/proto/ospf/topology.c +++ b/proto/ospf/topology.c @@ -1176,6 +1176,7 @@ static void * originate_prefix_rt_lsa_body(struct ospf_area *oa, u16 *length) { struct proto_ospf *po = oa->po; + struct ospf_config *cf = (struct ospf_config *) (po->proto.cf); struct ospf_iface *ifa; struct ospf_lsa_prefix *lp; struct ifa *vlink_addr = NULL; @@ -1234,7 +1235,7 @@ originate_prefix_rt_lsa_body(struct ospf_area *oa, u16 *length) /* If there are some configured vlinks, add some global address, which will be used as a vlink endpoint. */ - if (oa->ac && !EMPTY_LIST(oa->ac->vlink_list) && !host_addr && vlink_addr) + if (!EMPTY_LIST(cf->vlink_list) && !host_addr && vlink_addr) { lsa_put_prefix(po, vlink_addr->ip, MAX_PREFIX_LENGTH, 0); i++; |