diff options
author | Olivier Dugeon <olivier.dugeon@orange.com> | 2020-05-15 19:18:36 +0200 |
---|---|---|
committer | Olivier Dugeon <olivier.dugeon@orange.com> | 2020-05-26 11:57:04 +0200 |
commit | 731271b0bdef62f96d84c77da53e519d02f6c5e5 (patch) | |
tree | 4b03bc30192f08ee5cd3b14ca6e6726a4fe1a209 /ospfd/ospf_ext.h | |
parent | Merge pull request #6400 from mjstapp/fix_sa_zebra_nb_state (diff) | |
download | frr-731271b0bdef62f96d84c77da53e519d02f6c5e5.tar.xz frr-731271b0bdef62f96d84c77da53e519d02f6c5e5.zip |
ospfd: Solve crash after removing and adding conf.
Issue number #6291 describes how OSPFd crashes after being deleted and then
added again with configuration when segment routing is used.
The problem occurs in ospf_ri.c because the OspfRI structures retains
the reference to the old area pointer which is mofified when ospfd is
reactivated by configuration. When segment routing is activated, the LSA Router
Information is sent with reference to the old area pointer, instead the new one,
which causes the crash. The same problem is also present in ospf_ext.c with
OspfEXT structure and Extended Link/Prefix structure.
This commit introduces Extended Link/Prefix and Router Information LSAs flusing
when OSPFd is stopped when configuration is removed and adds the correct
initialization to the area pointer in OspfRI and Extended Link/Prefix structure
when OSPFd is re-enabled with the configuration. Area pointer has been removed
from the OspfEXT structure as it is never used with this commit.
Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
Diffstat (limited to 'ospfd/ospf_ext.h')
-rw-r--r-- | ospfd/ospf_ext.h | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/ospfd/ospf_ext.h b/ospfd/ospf_ext.h index c3f9ae94d..0071584e2 100644 --- a/ospfd/ospf_ext.h +++ b/ospfd/ospf_ext.h @@ -151,10 +151,6 @@ struct ospf_ext_lp { */ uint8_t scope; - /* area pointer if flooding is Type 10 Null if flooding is AS scope */ - struct ospf_area *area; - struct in_addr area_id; - /* List of interface with Segment Routing enable */ struct list *iflist; }; |