]> git.puffer.fish Git - matthieu/frr.git/commit
ospfd: Fix OSPF link-local opaque LSA crash and opaque memory corruption
authorAcee <aceelindem@gmail.com>
Mon, 27 Nov 2023 13:13:03 +0000 (08:13 -0500)
committerAcee <aceelindem@gmail.com>
Tue, 28 Nov 2023 21:18:55 +0000 (16:18 -0500)
commit5993c4aef923700bd606c4d105da39a3c66523c3
tree2124b0b5cbcc8ea60ee3539d7a048d26881fb5ed
parentd1e11d48d4510f53650f6e511525178d27a9d5cc
ospfd: Fix OSPF link-local opaque LSA crash and opaque memory corruption

  1. When an OSPF interface is deleted, remove the references in link-local
     LSA. Delete the LSA from the LSDB so that the callback has accessibily
     to the interface prior to deletion.
  2. Fix a double free for the opaque function table data structure.
  3. Assure that the opaque per-type information and opaque function table
     structures are removed at the same time since they have back pointers
     to one another.
  4. Add a topotest variation for the link-local opaque LSA crash.

Signed-off-by: Acee <aceelindem@gmail.com>
ospfd/ospf_interface.c
ospfd/ospf_interface.h
ospfd/ospf_nsm.c
ospfd/ospf_opaque.c
ospfd/ospf_opaque.h
tests/topotests/ospfapi/test_ospf_clientapi.py