summaryrefslogtreecommitdiffstats
path: root/ospfd
diff options
context:
space:
mode:
authorIgor Ryzhov <iryzhov@nfware.com>2021-06-17 18:31:03 +0200
committerIgor Ryzhov <iryzhov@nfware.com>2021-06-17 18:31:03 +0200
commit0fddd864b758f424eab484ea35f74479eda33fd2 (patch)
tree5576dda8bcb25169fa71e78f3b66d30f82d46ab3 /ospfd
parentMerge pull request #8856 from LabNConsulting/chopps/topo-valgrind (diff)
downloadfrr-0fddd864b758f424eab484ea35f74479eda33fd2.tar.xz
frr-0fddd864b758f424eab484ea35f74479eda33fd2.zip
ospfd: fix routemap update
Currently, if the routemap already exists, we delete the pointer to it when it is updated. We should delete the pointer only if the route-map is actually deleted. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Diffstat (limited to 'ospfd')
-rw-r--r--ospfd/ospf_routemap.c21
1 files changed, 8 insertions, 13 deletions
diff --git a/ospfd/ospf_routemap.c b/ospfd/ospf_routemap.c
index d3b114840..2525c1cf3 100644
--- a/ospfd/ospf_routemap.c
+++ b/ospfd/ospf_routemap.c
@@ -71,19 +71,14 @@ static void ospf_route_map_update(const char *name)
/* Keep old route-map. */
struct route_map *old = ROUTEMAP(red);
- if (!old) {
- /* Route-map creation */
- /* Update route-map. */
- ROUTEMAP(red) =
- route_map_lookup_by_name(
- ROUTEMAP_NAME(red));
-
- route_map_counter_increment(
- ROUTEMAP(red));
- } else {
- /* Route-map deletion */
- ROUTEMAP(red) = NULL;
- }
+ ROUTEMAP(red) =
+ route_map_lookup_by_name(
+ ROUTEMAP_NAME(red));
+
+ if (!old)
+ route_map_counter_increment(
+ ROUTEMAP(red));
+
/* No update for this distribute type.
*/
if (old == NULL