From patchwork Fri May 5 19:47:17 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 98713 Delivered-To: patch@linaro.org Received: by 10.140.96.100 with SMTP id j91csp293072qge; Fri, 5 May 2017 12:49:15 -0700 (PDT) X-Received: by 10.98.252.129 with SMTP id e123mr17271592pfh.135.1494013755278; Fri, 05 May 2017 12:49:15 -0700 (PDT) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id v1si2687620pge.374.2017.05.05.12.49.15; Fri, 05 May 2017 12:49:15 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of stable-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of stable-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=stable-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755957AbdEETs6 (ORCPT + 6 others); Fri, 5 May 2017 15:48:58 -0400 Received: from mout.kundenserver.de ([212.227.126.131]:52516 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755646AbdEETsn (ORCPT ); Fri, 5 May 2017 15:48:43 -0400 Received: from wuerfel.lan ([78.42.17.5]) by mrelayeu.kundenserver.de (mreue002 [212.227.15.129]) with ESMTPA (Nemesis) id 0M6rkj-1e0s6j393F-00wi3U; Fri, 05 May 2017 21:48:28 +0200 From: Arnd Bergmann To: Ben Hutchings Cc: stable@vger.kernel.org, David Miller , Arnd Bergmann Subject: [PATCH 3.16-stable 59/87] netfilter: Fix switch statement warnings with recent gcc. Date: Fri, 5 May 2017 21:47:17 +0200 Message-Id: <20170505194745.3627137-60-arnd@arndb.de> X-Mailer: git-send-email 2.9.0 In-Reply-To: <20170505194745.3627137-1-arnd@arndb.de> References: <20170505194745.3627137-1-arnd@arndb.de> X-Provags-ID: V03:K0:UAbIAUlc/mXRtxJTPJIaNBclpnPFeva6fQOhNdKkzvAokXdahEi sPei5kGyWTwJgFlRRFmLBPqupHpN/Pk05XRiVa8xN2D7YFQRdwC7mGNlG5kCF5+0fwJEdnd gki0saFqwhepjht+ORiWUYEOLlnG0c+nrohMk2IXV8UFqTxBqxHJ3JDItq1JbheZTv5GHiz xkz4w8WEuxA6YHZ7bkQ5A== X-UI-Out-Filterresults: notjunk:1; V01:K0:RznpU3GvVus=:RV1ZsG1h0YR5Lw+JdDROor 8wn3YdeVGJLf5MGm9oLW2XCgs58dOeisct//tsNcIMDFWasN2rhBJQrxuqY+69a0o/hMDvlH4 8DamgTfqy+KIjvKPhCatXIV7ENBm5OGl5soZT7m39NQGlecqmCSaNHDvwkNQxJsPBFB/iAB8w 8UGbcG38jHFiySrbUrvwSMqSGGoM+PrD8JNmCwHAC4doldcYwlu8O41U/jMVmyKVv0+oselb0 5bMPi9iAblsrVjsNldrnYkbU9CTyRetp1YGQrXl2sqjK4F4t5oSyju2ctFF7VQV3JVg2eZ14q PDcXt5PCu9hT+iTHuKype1cPPHDnfYVNlbUgHqJHpxGyVw8bFB/ChDJVDoCDRELfgrN/OXNt/ fzATJ+uZ0SoTL2hrDbOPJE+VwTcb0Uc6CYpahfYs9whIa4Q1jfmM3ksxPHLr97IiJOTiRbdPF w4CbJj2CZIkiXVz2OQ60IeJFv7CbkVhTxyEkJhfFDjpugG5B818/G2PazKrm+K8+3zqJ8gq8Q i8JKQ472S65X4OA6UaznZv6+V3iOvqvsbQOfIFUwumVZaeJ3kTIbYi723x6lEHzMtJUtRdUR1 xy2ZyVXs8SqmPvUsAtq/Ue5WFNzuXXSqpyFVYFTEbhzbWKX3z73A66WioOOfLXmtZuYu7VYF0 6UaBW6nHtYc6k0HhZFm8bC2fYpp26juTM4klTkN/K0WTt92lYZnB0EkxaMOlVDWou0aY= Sender: stable-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org From: David Miller Commit c1f866767777d1c6abae0ec57effffcb72017c00 upstream. More recent GCC warns about two kinds of switch statement uses: 1) Switching on an enumeration, but not having an explicit case statement for all members of the enumeration. To show the compiler this is intentional, we simply add a default case with nothing more than a break statement. 2) Switching on a boolean value. I think this warning is dumb but nevertheless you get it wholesale with -Wswitch. This patch cures all such warnings in netfilter. Signed-off-by: David S. Miller Acked-by: Pablo Neira Ayuso Signed-off-by: Arnd Bergmann --- net/ipv4/netfilter/nft_reject_ipv4.c | 2 ++ net/ipv6/netfilter/nft_reject_ipv6.c | 2 ++ net/netfilter/nft_compat.c | 6 +++--- net/netfilter/nft_ct.c | 8 ++++++++ 4 files changed, 15 insertions(+), 3 deletions(-) -- 2.9.0 diff --git a/net/ipv4/netfilter/nft_reject_ipv4.c b/net/ipv4/netfilter/nft_reject_ipv4.c index e79718a382f2..292783018da5 100644 --- a/net/ipv4/netfilter/nft_reject_ipv4.c +++ b/net/ipv4/netfilter/nft_reject_ipv4.c @@ -33,6 +33,8 @@ void nft_reject_ipv4_eval(const struct nft_expr *expr, case NFT_REJECT_TCP_RST: nf_send_reset(pkt->skb, pkt->ops->hooknum); break; + default: + break; } data[NFT_REG_VERDICT].verdict = NF_DROP; diff --git a/net/ipv6/netfilter/nft_reject_ipv6.c b/net/ipv6/netfilter/nft_reject_ipv6.c index 0bc19fa87821..367bd4841a0c 100644 --- a/net/ipv6/netfilter/nft_reject_ipv6.c +++ b/net/ipv6/netfilter/nft_reject_ipv6.c @@ -34,6 +34,8 @@ void nft_reject_ipv6_eval(const struct nft_expr *expr, case NFT_REJECT_TCP_RST: nf_send_reset6(net, pkt->skb, pkt->ops->hooknum); break; + default: + break; } data[NFT_REG_VERDICT].verdict = NF_DROP; diff --git a/net/netfilter/nft_compat.c b/net/netfilter/nft_compat.c index 62097fda49dc..55be1e0a4a7f 100644 --- a/net/netfilter/nft_compat.c +++ b/net/netfilter/nft_compat.c @@ -295,11 +295,11 @@ static void nft_match_eval(const struct nft_expr *expr, return; } - switch(ret) { - case true: + switch (ret ? 1 : 0) { + case 1: data[NFT_REG_VERDICT].verdict = NFT_CONTINUE; break; - case false: + case 0: data[NFT_REG_VERDICT].verdict = NFT_BREAK; break; } diff --git a/net/netfilter/nft_ct.c b/net/netfilter/nft_ct.c index cc5603016242..18d520e0ca0a 100644 --- a/net/netfilter/nft_ct.c +++ b/net/netfilter/nft_ct.c @@ -56,6 +56,8 @@ static void nft_ct_get_eval(const struct nft_expr *expr, state = NF_CT_STATE_BIT(ctinfo); dest->data[0] = state; return; + default: + break; } if (ct == NULL) @@ -117,6 +119,8 @@ static void nft_ct_get_eval(const struct nft_expr *expr, return; } #endif + default: + break; } tuple = &ct->tuplehash[priv->dir].tuple; @@ -141,6 +145,8 @@ static void nft_ct_get_eval(const struct nft_expr *expr, case NFT_CT_PROTO_DST: dest->data[0] = (__force __u16)tuple->dst.u.all; return; + default: + break; } return; err: @@ -172,6 +178,8 @@ static void nft_ct_set_eval(const struct nft_expr *expr, } break; #endif + default: + break; } }