From cc9573dfa25585a415f6c12950758ce32f337294 Mon Sep 17 00:00:00 2001 From: Pablo Neira Ayuso Date: Sun, 21 Jul 2013 15:26:02 +0200 Subject: src: remove default case from nft_*_attr_unset This patch removes the default case in nft_*_attr_unset, thus, the compiler will spot a warning if we add a new attribute in the future and you forget to handle it. Signed-off-by: Pablo Neira Ayuso --- src/rule.c | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) (limited to 'src/rule.c') diff --git a/src/rule.c b/src/rule.c index b1bf64b..e48497f 100644 --- a/src/rule.c +++ b/src/rule.c @@ -81,20 +81,21 @@ EXPORT_SYMBOL(nft_rule_attr_is_set); void nft_rule_attr_unset(struct nft_rule *r, uint16_t attr) { + if (!(r->flags & (1 << attr))) + return; + switch (attr) { case NFT_RULE_ATTR_TABLE: - if (r->flags & (1 << NFT_RULE_ATTR_TABLE)) - if (r->table) { - free(r->table); - r->table = NULL; - } + if (r->table) { + free(r->table); + r->table = NULL; + } break; case NFT_RULE_ATTR_CHAIN: - if (r->flags & (1 << NFT_RULE_ATTR_CHAIN)) - if (r->chain) { - free(r->chain); - r->chain = NULL; - } + if (r->chain) { + free(r->chain); + r->chain = NULL; + } break; case NFT_RULE_ATTR_HANDLE: case NFT_RULE_ATTR_FLAGS: @@ -103,8 +104,6 @@ void nft_rule_attr_unset(struct nft_rule *r, uint16_t attr) case NFT_RULE_ATTR_POSITION: case NFT_RULE_ATTR_FAMILY: break; - default: - return; } r->flags &= ~(1 << attr); -- cgit v1.2.3