mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-03 18:42:48 +00:00
ospfd: fix summary-address deletion
When the summary-address is deleted, `ospf_aggr_handle_external_info` is called for each aggregated route for the cleanup. It needs to find the corresponding OSPF instance and it does it using the `ei->instance` which is totally wrong, because it's the instance from which the route is redistributed, not the local OSPF instance. A pointer to the correct OSPF instance is already stored in the external_info structure. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
This commit is contained in:
parent
6e5532187f
commit
fa42b7d80f
@ -420,7 +420,7 @@ static void ospf_aggr_handle_external_info(void *data)
|
||||
{
|
||||
struct external_info *ei = (struct external_info *)data;
|
||||
struct ospf_external_aggr_rt *aggr = NULL;
|
||||
struct ospf *ospf = NULL;
|
||||
struct ospf *ospf = ei->ospf;
|
||||
struct ospf_lsa *lsa = NULL;
|
||||
|
||||
ei->aggr_route = NULL;
|
||||
@ -431,8 +431,6 @@ static void ospf_aggr_handle_external_info(void *data)
|
||||
zlog_debug("%s: Handle extrenal route(%pI4/%d)", __func__,
|
||||
&ei->p.prefix, ei->p.prefixlen);
|
||||
|
||||
ospf = ospf_lookup_instance(ei->instance);
|
||||
|
||||
assert(ospf);
|
||||
|
||||
if (!ospf_redistribute_check(ospf, ei, NULL))
|
||||
|
Loading…
Reference in New Issue
Block a user