diff options
author | Joakim Tjernlund <Joakim.Tjernlund@transmode.se> | 2012-07-07 17:06:12 +0200 |
---|---|---|
committer | David Lamparter <equinox@opensourcerouting.org> | 2012-07-25 18:07:37 +0200 |
commit | 57c639f01ec6be70ac858f412d32b638a9756bed (patch) | |
tree | cd415e8d098b827d69dcfdf3d3b22f5df11cc4c9 /ospfd/ospf_route.c | |
parent | c81ee5c94f5b34375f3ef276fdb9bde9098e7ecb (diff) |
ospf_spf_process_stubs: use LSA pos to find OSFP interface
This is better than a prefix lookup as prefixes may not be
unique, that is, the same prefix can exist on several interfaces.
Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Diffstat (limited to 'ospfd/ospf_route.c')
-rw-r--r-- | ospfd/ospf_route.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/ospfd/ospf_route.c b/ospfd/ospf_route.c index d2e5e1e7..a5d6d18c 100644 --- a/ospfd/ospf_route.c +++ b/ospfd/ospf_route.c @@ -429,7 +429,7 @@ ospf_intra_add_transit (struct route_table *rt, struct vertex *v, void ospf_intra_add_stub (struct route_table *rt, struct router_lsa_link *link, struct vertex *v, struct ospf_area *area, - int parent_is_root) + int parent_is_root, int lsa_pos) { u_int32_t cost; struct route_node *rn; @@ -577,7 +577,7 @@ ospf_intra_add_stub (struct route_table *rt, struct router_lsa_link *link, if (IS_DEBUG_OSPF_EVENT) zlog_debug ("ospf_intra_add_stub(): this network is on this router"); - if ((oi = ospf_if_lookup_by_prefix (area->ospf, &p))) + if ((oi = ospf_if_lookup_by_lsa_pos (area, lsa_pos))) { if (IS_DEBUG_OSPF_EVENT) zlog_debug ("ospf_intra_add_stub(): the interface is %s", |