summaryrefslogtreecommitdiff
path: root/ospfd/ospf_zebra.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2019-02-05 11:13:22 -0500
committerGitHub <noreply@github.com>2019-02-05 11:13:22 -0500
commit9f3a86d3e69da9316204b78d16de2d57a6c1e68a (patch)
treee7dbbefeffccef514a0d73a2dfc8566fbeb726d5 /ospfd/ospf_zebra.c
parent5dd91bc84f85185f834cbd46dcaaa7b7178ab6fc (diff)
parentb4897fa52474fd49ae3d4ad0bb2ecf908d2630c0 (diff)
Merge pull request #3518 from rgirada/routemap_3090
libd: Implemented a cli "show route-map-unused" to track all unused rou…
Diffstat (limited to 'ospfd/ospf_zebra.c')
-rw-r--r--ospfd/ospf_zebra.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/ospfd/ospf_zebra.c b/ospfd/ospf_zebra.c
index a86800f901..ea2c492e18 100644
--- a/ospfd/ospf_zebra.c
+++ b/ospfd/ospf_zebra.c
@@ -983,17 +983,22 @@ int ospf_redistribute_check(struct ospf *ospf, struct external_info *ei,
/* OSPF route-map set for redistribution */
void ospf_routemap_set(struct ospf_redist *red, const char *name)
{
- if (ROUTEMAP_NAME(red))
+ if (ROUTEMAP_NAME(red)) {
+ route_map_counter_decrement(ROUTEMAP(red));
free(ROUTEMAP_NAME(red));
+ }
ROUTEMAP_NAME(red) = strdup(name);
ROUTEMAP(red) = route_map_lookup_by_name(name);
+ route_map_counter_increment(ROUTEMAP(red));
}
void ospf_routemap_unset(struct ospf_redist *red)
{
- if (ROUTEMAP_NAME(red))
+ if (ROUTEMAP_NAME(red)) {
+ route_map_counter_decrement(ROUTEMAP(red));
free(ROUTEMAP_NAME(red));
+ }
ROUTEMAP_NAME(red) = NULL;
ROUTEMAP(red) = NULL;