Received: by 2002:a25:b794:0:0:0:0:0 with SMTP id n20csp378783ybh; Sat, 3 Aug 2019 01:21:03 -0700 (PDT) X-Google-Smtp-Source: APXvYqwQ1CTYS6C2CgvJl4iSCTXBUKQubJYDs00RBh+/o76UDUEuUP/akZQkZu6V+abK2y4b3/A4 X-Received: by 2002:a17:90a:2023:: with SMTP id n32mr7864029pjc.3.1564820463509; Sat, 03 Aug 2019 01:21:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1564820463; cv=none; d=google.com; s=arc-20160816; b=ot7GYEpFhbpyxdUIJ8yil8y0jw7xKhWe/PHcEqHiXW8eTfkPMMtMAyPdc/XWhBuCuZ 6/0bREpKxdqtI8g8V5EndmsNGfPy8AKU/1vJV6pZp7+djVZJN9N8Cjgtc22Hb7ku4Vd8 3LuZi/EKj/2XIsje89/fA6+o+bveV0kSwkcxqo0AlAMJrSqMdBykYi59AUgi8ykHKde2 SX6zSqW5VcrmSPbHSrZjr2THMJ2V7wl5PKAWlXZLRA5RRpMO3Id1gAQqKTb1PP9ZsyZA aY+wMbWOsIzXKfe2Hk5vRkKV7NvZ/yr1AKTs+pa82PtojmddgaxCyvtWbMH4a1RNI3Wr 7t+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=BIUETsyg6sE0//+W8xx+fHL/KR7xVyhtySsksSInww0=; b=YtCIngNBpQFPXGGerRvYEaIXT2b3FMO/rg+Fyng2+Toge9mi9yE2OQxNVCKtFD/Dgw IvS6uGX8HMhwjbp9mPZ5bKArSjzD305hB4QbrqGimtmSjdeKO7z34zCzgmPcxs0Ae3fb 1UYOvjiHhte+PCrcT3Cuf0u00i/1r2on/NZEKZjf5z3k9LSo+/9o21U5OpGbVa1N8S3r uB/SGtccnHXM1gBSBoCx/ATP7Qv4opGur/uau2cNqtIqhCaaPuf555UP/FGfBM6gVX4O um9qTw5kPjZP4Tv+1UuQl2fosgAhlyscTVQB4AWa5k1B7MSJ9isKvOubeBeAC3F8+75L Fz2Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=mwCrmhy3; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 44si18197082plc.315.2019.08.03.01.20.48; Sat, 03 Aug 2019 01:21:03 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=mwCrmhy3; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2393951AbfHBNXT (ORCPT + 99 others); Fri, 2 Aug 2019 09:23:19 -0400 Received: from mail.kernel.org ([198.145.29.99]:33750 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387657AbfHBNXK (ORCPT ); Fri, 2 Aug 2019 09:23:10 -0400 Received: from sasha-vm.mshome.net (c-73-47-72-35.hsd1.nh.comcast.net [73.47.72.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id D12D221850; Fri, 2 Aug 2019 13:23:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1564752189; bh=tlJvdogyy518dLLLeZtVXiQXd+oZKbGj4D+2v5SsuC4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=mwCrmhy3XIqUqOjo3WAPN72cDXuaLjJY4AJd/+qOYxVvLXDdlH8qw1k2EZnws6DgO zMitRT+N3ab7Ih3yrOGWuFyrDXzHTaw+LFqP9cu0Yb/RHafjf20dWnvRDEaPFGReOe 8FExksfUM+nRQ75Ne/rYBs0EdqZ45s3ZU6WubJa4= From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Laura Garcia Liebana , Pablo Neira Ayuso , Sasha Levin , netfilter-devel@vger.kernel.org, coreteam@netfilter.org, netdev@vger.kernel.org Subject: [PATCH AUTOSEL 4.19 05/42] netfilter: nft_hash: fix symhash with modulus one Date: Fri, 2 Aug 2019 09:22:25 -0400 Message-Id: <20190802132302.13537-5-sashal@kernel.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190802132302.13537-1-sashal@kernel.org> References: <20190802132302.13537-1-sashal@kernel.org> MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Laura Garcia Liebana [ Upstream commit 28b1d6ef53e3303b90ca8924bb78f31fa527cafb ] The rule below doesn't work as the kernel raises -ERANGE. nft add rule netdev nftlb lb01 ip daddr set \ symhash mod 1 map { 0 : 192.168.0.10 } fwd to "eth0" This patch allows to use the symhash modulus with one element, in the same way that the other types of hashes and algorithms that uses the modulus parameter. Signed-off-by: Laura Garcia Liebana Signed-off-by: Pablo Neira Ayuso Signed-off-by: Sasha Levin --- net/netfilter/nft_hash.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/netfilter/nft_hash.c b/net/netfilter/nft_hash.c index c2d237144f747..b8f23f75aea6c 100644 --- a/net/netfilter/nft_hash.c +++ b/net/netfilter/nft_hash.c @@ -196,7 +196,7 @@ static int nft_symhash_init(const struct nft_ctx *ctx, priv->dreg = nft_parse_register(tb[NFTA_HASH_DREG]); priv->modulus = ntohl(nla_get_be32(tb[NFTA_HASH_MODULUS])); - if (priv->modulus <= 1) + if (priv->modulus < 1) return -ERANGE; if (priv->offset + priv->modulus - 1 < priv->offset) -- 2.20.1