mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-13 16:26:10 +00:00
Revert "ripngd: Cleanup memory allocations on shutdown"
This reverts commit b1d29673ca
.
This commit introduced a crash. When the VRF is deleted, the RIPNG
instance should not be freed, because the NB infrastructure still stores
the pointer to it. The instance should be deleted only when it's actually
deleted from the configuration.
To reproduce the crash:
```
frr# conf t
frr(config)# vrf vrf1
frr(config-vrf)# exit
frr(config)# router ripng vrf vrf1
frr(config-router)# exit
frr(config)# no vrf vrf1
frr(config)# no router ripng vrf vrf1
vtysh: error reading from ripngd: Resource temporarily unavailable (11)Warning: closing connection to ripngd because of an I/O error!
frr(config)#
```
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
This commit is contained in:
parent
054ca9b9ee
commit
9f6dade90e
@ -2624,17 +2624,10 @@ static int ripng_vrf_new(struct vrf *vrf)
|
||||
|
||||
static int ripng_vrf_delete(struct vrf *vrf)
|
||||
{
|
||||
struct ripng *ripng;
|
||||
|
||||
if (IS_RIPNG_DEBUG_EVENT)
|
||||
zlog_debug("%s: VRF deleted: %s(%u)", __func__, vrf->name,
|
||||
vrf->vrf_id);
|
||||
|
||||
ripng = ripng_lookup_by_vrf_name(vrf->name);
|
||||
if (!ripng)
|
||||
return 0;
|
||||
|
||||
ripng_clean(ripng);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user