]> git.puffer.fish Git - mirror/frr.git/commit
ospf6d: route-map config changed, not getting applied on all types of routes 9118/head
authorMobashshera Rasool <mrasool@vmware.com>
Wed, 30 Jun 2021 06:13:19 +0000 (06:13 +0000)
committermergify-bot <noreply@mergify.io>
Thu, 22 Jul 2021 17:08:36 +0000 (17:08 +0000)
commiteb2f3ee7efaa897e9729f1cf179cc9107823cb62
treeb6d5722f2a7b5582b2c32f2aea71e6dcb463861f
parent9931db75f7730381ad4fba16efd39cbb67749470
ospf6d: route-map config changed, not getting applied on all types of routes

Problem Statement:
==================
when route-map config is changed from permit to deny, it is not getting
applied to both connected and static and vice versa

RCA:
==================
When route-map changes from permit to deny or vice versa, a notification is
sent to ospf6 daemon via ospf6_asbr_routemap_update. In this function, a thread
is scheduled after 5 seconds to apply the route-map changes. In this thread
(ospf6_asbr_routemap_update_timer), only the first type is passed as argument
and only the first type i.e "connected" is passed and hence in callback only
on this type of route route-map gets applied.

Fix:
====
Need to loop through all the route-types in the call back and process
the route-map changes. Added a flag to mark which all route-types needs
to be processed.

Test Executed:
===============
1. Change route-map from permit to deny.
2. Change route-map from deny to permit.
3. Add new route and checked.
4. Verified summarised routes.

Risk:
============
Low

Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
(cherry picked from commit 2f43e34de15b61b8e9a8398c18172d9e485e2f2c)
ospf6d/ospf6_asbr.c
ospf6d/ospf6_asbr.h
ospf6d/ospf6_top.h