summaryrefslogtreecommitdiffstats
path: root/ospfd/ospf_ase.c
diff options
context:
space:
mode:
authorJoakim Tjernlund <Joakim.Tjernlund@transmode.se>2009-07-27 12:42:34 +0200
committerPaul Jakma <paul@quagga.net>2009-08-03 17:52:30 +0200
commita8ba847ff96b41e06770d4987b15707890ed5807 (patch)
tree07864eb958853e5ad7b2616c9b7bc5259a8ae503 /ospfd/ospf_ase.c
parentospfd: Discriminate better when selecting links between vertices in SPF (diff)
downloadfrr-a8ba847ff96b41e06770d4987b15707890ed5807.tar.xz
frr-a8ba847ff96b41e06770d4987b15707890ed5807.zip
ospfd: Change struct ospf_path *oi to ifindex.
* global: In struct ospf_path, change struct ospf_interface *oi to int ifindex. It is unsafe to reference *oi as an ospf interface can be deleted under your feet. Use a weak reference instead.
Diffstat (limited to 'ospfd/ospf_ase.c')
-rw-r--r--ospfd/ospf_ase.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/ospfd/ospf_ase.c b/ospfd/ospf_ase.c
index 044f97c66..7bddf3f4d 100644
--- a/ospfd/ospf_ase.c
+++ b/ospfd/ospf_ase.c
@@ -135,6 +135,7 @@ ospf_ase_complete_direct_routes (struct ospf_route *ro, struct in_addr nexthop)
{
struct listnode *node;
struct ospf_path *op;
+ struct interface *ifp;
for (ALL_LIST_ELEMENTS_RO (ro->paths, node, op))
if (op->nexthop.s_addr == 0)
@@ -593,7 +594,7 @@ ospf_ase_route_match_same (struct route_table *rt, struct prefix *prefix,
if (! IPV4_ADDR_SAME (&op->nexthop, &newop->nexthop))
return 0;
- if (op->oi->ifp->ifindex != newop->oi->ifp->ifindex)
+ if (op->ifindex != newop->ifindex)
return 0;
}
return 1;