fib: Fix crash when removing a covering prefix 51/35751/3
authorNeale Ranns <neale@graphiant.com>
Wed, 23 Mar 2022 14:51:57 +0000 (14:51 +0000)
committerDamjan Marion <dmarion@me.com>
Thu, 24 Mar 2022 11:29:27 +0000 (11:29 +0000)
commit60bb4534270c4c931ac441e9ec7de9bf09e47401
treeeaa2b4ae8554f6fd02fbee341b28358a6ab8c0b1
parent03b22e62e108fc2ed7a0186e372dc752b0afa46c
fib: Fix crash when removing a covering prefix

Type: fix

When a covering entry is removed from the table, the covered entries first see it 'updated' and then 'removed'.
the crash occurs because the covered prefixes share (simple pointer copy) the covereds hash table of path extensions. During the cervers deletion this hash table has been removed and the update of the covered crashes when recaluationg forwarding becuase it uses the free'd hash.
Fix is to refetch the shared hash table (which is NULL) when the covered is updated.

Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: Icefca9d7b21da975111d0e974d75f663fc0cc00c
src/vnet/mfib/mfib_entry.c
src/vnet/mfib/mfib_entry_src.h
src/vnet/mfib/mfib_entry_src_rr.c