From: Donald Sharp Date: Thu, 9 May 2019 03:00:52 +0000 (-0400) Subject: lib: in routemap.c if using a switch for an enum get rid of enum X-Git-Tag: frr-7.2~378^2~1 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=ba1707ca54638376f73dd7b9e55a183250af573f;p=mirror_frr.git lib: in routemap.c if using a switch for an enum get rid of enum From looking at a current PR: #4297, we see that routemap.c code was not properly updating dependency information for some route_map_event_t enum types. This has lead to dependancy information not being updated properly. While at this time I do not know whether or not we need to update the switch for the missing types, I do know that if we add something in the future we should make the person adding the code consider this. So let's remove all `default:` switch statement handlers from routemap.c when switching on an enum. Future time will need to be spent to figure out what is needed to be done here. Signed-off-by: Donald Sharp --- diff --git a/lib/routemap.c b/lib/routemap.c index e8bdaa68f..f74baa38b 100644 --- a/lib/routemap.c +++ b/lib/routemap.c @@ -902,7 +902,7 @@ static const char *route_map_type_str(enum route_map_type type) case RMAP_DENY: return "deny"; break; - default: + case RMAP_ANY: return ""; break; } @@ -1795,7 +1795,14 @@ static int route_map_dep_update(struct hash *dephash, const char *dep_name, dep = NULL; } break; - default: + case RMAP_EVENT_SET_ADDED: + case RMAP_EVENT_SET_DELETED: + case RMAP_EVENT_SET_REPLACED: + case RMAP_EVENT_MATCH_ADDED: + case RMAP_EVENT_MATCH_DELETED: + case RMAP_EVENT_MATCH_REPLACED: + case RMAP_EVENT_INDEX_ADDED: + case RMAP_EVENT_INDEX_DELETED: break; } @@ -1846,7 +1853,18 @@ static struct hash *route_map_get_dep_hash(route_map_event_t event) case RMAP_EVENT_FILTER_DELETED: upd8_hash = route_map_dep_hash[ROUTE_MAP_DEP_FILTER]; break; - default: + /* + * Should we actually be ignoring these? + * I am not sure but at this point in time, let + * us get them into this switch and we can peel + * them into the appropriate place in the future + */ + case RMAP_EVENT_SET_ADDED: + case RMAP_EVENT_SET_DELETED: + case RMAP_EVENT_SET_REPLACED: + case RMAP_EVENT_MATCH_REPLACED: + case RMAP_EVENT_INDEX_ADDED: + case RMAP_EVENT_INDEX_DELETED: upd8_hash = NULL; break; }