From patchwork Sun Aug 23 18:15:59 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fabian Frederick X-Patchwork-Id: 262040 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-12.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 82C77C433E1 for ; Sun, 23 Aug 2020 18:16:21 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 664A620825 for ; Sun, 23 Aug 2020 18:16:21 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726475AbgHWSQS (ORCPT ); Sun, 23 Aug 2020 14:16:18 -0400 Received: from mailrelay102.isp.belgacom.be ([195.238.20.129]:53454 "EHLO mailrelay102.isp.belgacom.be" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725867AbgHWSQR (ORCPT ); Sun, 23 Aug 2020 14:16:17 -0400 IronPort-SDR: KRjEKcX+MFJ7e8uWssBY0r0Frzl3tUAv4DXnRBN775yGG6uJ9bv8R2kbT59a+I30yMRy0rVG8R mm0B8BiTYRabS08t8fniIUww7GDQMooCaW43fEOicfitRHH8tD4IldXxrtlr269GV5OWwK2QAQ DFIP5iw6/KI/9sEfnhOoIXWkHdVO5pE3lq9l0xA1suMyu2ypp/+P8Ny6UVVgC2ONknN6XeDKlS J9Ey8yiO8zBj5UQsQ7HrTOuTYekUN6H2dShxllfe4rUGT4DWduJZNYpp/EKDpusNQ8KvyuTQqd ANQ= X-Belgacom-Dynamic: yes IronPort-PHdr: 9a23:fXOzXxxfXzIUxk7XCy+O+j09IxM/srCxBDY+r6Qd0ugVIvad9pjvdHbS+e9qxAeQG9mCtbQd0rSd6vq5EUU7or+5+EgYd5JNUxJXwe43pCcHRPC/NEvgMfTxZDY7FskRHHVs/nW8LFQHUJ2mPw6arXK99yMdFQviPgRpOOv1BpTSj8Oq3Oyu5pHfeQpFiCe8bL9oMRm6sATcusYLjYd8N6o61wfErGZPd+lK321jOEidnwz75se+/Z5j9zpftvc8/MNeUqv0Yro1Q6VAADspL2466svrtQLeTQSU/XsTTn8WkhtTDAfb6hzxQ4r8vTH7tup53ymaINH2QLUpUjms86tnVBnlgzoBOjUk8m/Yl9Zwgbpbrhy/uhJxzY3aboaaO/RxZa7RYdAXSHBdUstLSyBNHoWxZJYPAeobOuZYqpHwqVsUohSlBAmjHuXvwSJIiH/sw6I1zvouERvH3AM8HNIFrXPZrNvvO6gJX+C417LIzTbDbvNQxzj99JLEfQs/rvyVW797bMXex1U1GQzfklWQtZLqPymT1ukVvWaW7O5tW+KuhmMntQ18rDihy9owhoXUmo4Yy1/K+ypkzYs7O9C1VU52bNy6HZVfqy2UOYR4T8ciTW9opio3zrsLsoO4cigS0JkqwwPTZ+aaf4WL/B7vTvudLDZ4iX5/Zb6yhhC/+lW6xOLmTMm7ylNKozJAktnLq38CyQTe6tOCSvth5keh3iuP1xzL5uFEP080ka3bJoYlwr43ipUcq0DDHi/xmEXtkK+abEEk+u+05Ov9ZrXpu5icN4puhQH/NKQigs2/AeImPQgSR2WW/fmw2Kf+8UD6XrlGlOA6n6jZvZzAOMgWp7a1AwpP3YYi7xa/AS2m0NMdnXQfIlJKYgmIj4byNlHVI/D5DfG/jEqwkDtx3P/JIKXtAo/RIXjbjLfhYbF95lZEyAUp1t9f45VUB6oHIP3tRk/xut3YDhslMwOq2ebrEtJ91pkRWWiXGK+WLLvSsUOU5uIoO+SMZ5Uatyv5K/c7+/Hjlnk5lkEBfamn3JsXbGy4Eep8I0mDZnrsmNgBG38QvgUiVOzqlEGCUTlLana8UaMx/So7CJ68DYfHWI+thqaN0zqlEZdOfGBJFkiMEWv0d4WDQ/oMczmdItVgkjwaVLihTJQs1QuwuwDny7poNPbU9jcEupLk0dh///fTmg0q9TxoE8Sd1HmAT2dqkWMUST823aR/oVBjxVeZyKR3nuJXFcJN6PNNSQo6K5HcwPJgC9zoWQLOYM2JSFC4TdWiGz0xScgxw9AWaUZnB9qilgzD3zatA7INi7OLA4Y0/bzA33fvPcl9zm3L1K8/gFk6TMtPNGmmhrJh+AjJHYLJlF+Zl6myf6QGwCHN7HuDzXaJvExAVg5/T7nFUm0BaUvIttn5+EzCQKG0Cbg9MQtO19SCKq1UZd3tl1lGQ+3jONvGaWKrh2iwHQqIxq+LbIfydWUSxj7SCEYfngAI/naHNQ4+CTm9o27EFzNhCwGnX0S56eB0rHSTSEIowQCOc0B7kb2v9VpdhvWQT/4Y9rQJpCkgryl5BhC6xd2SQ9SfjxF9ZqFRZ5Ux7RMPzmjDthJ8ObS6Iqxij0JYeANy7G300BAiJIxKkMEs5F0wwQZ/M6OT0xsVeTqS07jrOazRJ3W09h35OP2e4U3XzNvDovRH0/8/sVi25Aw= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A2BgCQArsUJf/xCltltfHgEBCxIMR4FFgxhUX404kkqSAgsBAQEBAQEBAQEnDQECBAEBhEyCRyU4EwIDAQEBAwIFAQEGAQEBAQEBBQQBhg9FQxYBgV0ig1IBIyOBPwkJgyYBglcpslCEEIRpgUCBOAGII4UZgUE/hF+KNASPRqZ5gm2DDIRafpExDyGgMpJDoVqBek0gGIMkCUcZDZxoQjA3AgYKAQEDCVcBPQGMBYQfAQE X-IPAS-Result: A2BgCQArsUJf/xCltltfHgEBCxIMR4FFgxhUX404kkqSAgsBAQEBAQEBAQEnDQECBAEBhEyCRyU4EwIDAQEBAwIFAQEGAQEBAQEBBQQBhg9FQxYBgV0ig1IBIyOBPwkJgyYBglcpslCEEIRpgUCBOAGII4UZgUE/hF+KNASPRqZ5gm2DDIRafpExDyGgMpJDoVqBek0gGIMkCUcZDZxoQjA3AgYKAQEDCVcBPQGMBYQfAQE Received: from 16.165-182-91.adsl-dyn.isp.belgacom.be (HELO localhost.localdomain) ([91.182.165.16]) by relay.skynet.be with ESMTP; 23 Aug 2020 20:16:15 +0200 From: Fabian Frederick To: pablo@netfilter.org, kadlec@netfilter.org, fw@strlen.de, sbrivio@redhat.com Cc: netfilter-devel@vger.kernel.org, coreteam@netfilter.org, netdev@vger.kernel.org, Fabian Frederick Subject: [PATCH V2 2/5 nf] selftests: netfilter: exit on invalid parameters Date: Sun, 23 Aug 2020 20:15:59 +0200 Message-Id: <20200823181559.13306-1-fabf@skynet.be> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org exit script with comments when parameters are wrong during address addition. No need for a message when trying to change MTU with lower values: output is self-explanatory. Use short testing sequence to avoid shellcheck warnings (suggested by Stefano Brivio). Signed-off-by: Fabian Frederick --- V2: avoid shellcheck warnings .../testing/selftests/netfilter/nft_flowtable.sh | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/tools/testing/selftests/netfilter/nft_flowtable.sh b/tools/testing/selftests/netfilter/nft_flowtable.sh index 28e32fddf9b2c..dc05c99405979 100755 --- a/tools/testing/selftests/netfilter/nft_flowtable.sh +++ b/tools/testing/selftests/netfilter/nft_flowtable.sh @@ -96,10 +96,16 @@ do esac done -ip -net nsr1 link set veth0 mtu $omtu +if ! ip -net nsr1 link set veth0 mtu $omtu; then + exit 1 +fi + ip -net ns1 link set eth0 mtu $omtu -ip -net nsr2 link set veth1 mtu $rmtu +if ! ip -net nsr2 link set veth1 mtu $rmtu; then + exit 1 +fi + ip -net ns2 link set eth0 mtu $rmtu # transfer-net between nsr1 and nsr2. @@ -120,7 +126,10 @@ for i in 1 2; do ip -net ns$i route add default via 10.0.$i.1 ip -net ns$i addr add dead:$i::99/64 dev eth0 ip -net ns$i route add default via dead:$i::1 - ip netns exec ns$i sysctl net.ipv4.tcp_no_metrics_save=1 > /dev/null + if ! ip netns exec ns$i sysctl net.ipv4.tcp_no_metrics_save=1 > /dev/null; then + echo "ERROR: Check Originator/Responder values (problem during address addition)" + exit 1 + fi # don't set ip DF bit for first two tests ip netns exec ns$i sysctl net.ipv4.ip_no_pmtu_disc=1 > /dev/null From patchwork Sun Aug 23 18:17:39 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fabian Frederick X-Patchwork-Id: 262039 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-12.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8343AC433DF for ; Sun, 23 Aug 2020 18:18:06 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 5D62420825 for ; Sun, 23 Aug 2020 18:18:06 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726739AbgHWSSF (ORCPT ); Sun, 23 Aug 2020 14:18:05 -0400 Received: from mailrelay102.isp.belgacom.be ([195.238.20.129]:53596 "EHLO mailrelay102.isp.belgacom.be" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725867AbgHWSSD (ORCPT ); Sun, 23 Aug 2020 14:18:03 -0400 IronPort-SDR: A3xFN6t9Z0Jf7B9yz6a2cOd/UOqUdVfeyMkYmU/+dEjcClsRhFiFlDV5ULz9jOttmN/lZyskSK gSgiNnT0F3MUfyaFTlUzaTcPU7cTDumBrB1DML/vSIZ0lsboFhSEsLlrer7FfgPzjIuH0U2BJV D8eWvw6ZAdAaQ9lbUZN2bLNtp0IqNloCyiEhNcPPaL2bdilrg+aemN+8AuQaPyjXtvaEkYGsaf 1+U+OPt5KZyDwR5XIUqH6MYsrR1zHJtkosDPgqk00i0FbOTFeL6um5l4EC1F+UFZ6rwatf72hP 5rg= X-Belgacom-Dynamic: yes IronPort-PHdr: 9a23:EglLQRWlC0LMm7pov4/DkRZTf7vV8LGtZVwlr6E/grcLSJyIuqrYZRaPvadThVPEFb/W9+hDw7KP9fy5BypZuMjK6SpZOLV3FDY9wf0MmAIhBMPXQWbaF9XNKxIAIcJZSVV+9Gu6O0UGUOz3ZlnVv2HgpWVKQka3OgV6PPn6FZDPhMqrye+y54fTYwJVjzahfL9+Nhq7oRjQu8UMnIduN6c8xhTUrndWdeld2H9lK0+Ukxvg/Mm74YRt8z5Xu/Iv9s5AVbv1cqElRrFGDzooLn446tTzuRbMUQWA6H0cUn4LkhVTGAjK8Av6XpbqvSTksOd2xTSXMtf3TbAwXjSi8rtrRRr1gyoJKzI17GfagdF2galGohyuugZ/zpbUbo+LKfRwcKDTc9QVSmRORctdSy9MD5mgY4YVE+YNIeBVpJT9qVsUqhu+ABGhCuP1xTBTh3/5x6s62PkhHwHcwgMvAswBsG7VrNrpN6cZTOe4zKfSwjrYYfNbwiz96IvIcxAnv/6MQah8ftHPxkQ2EQ7Ok1qfp5D/MTyPyuQNr3aU7/BmVe+3lmMqpR19rDigy8othITEiI0bx1PF+Ch63Io4Id61RFJ0bNCkDpZeuD2WOolqT848R2xluCU3x7wbtZO6cyUHzJIqzAPRZfyAdoiH+BPjVOCJLDd+mn1lZLy/hxe28Ui81OL8TNO40FBEridDj9LCtWgN2gTX58SaUPdx40Ss1SiV2wzO6+xJIVo4mbfaJpMn37U+jIAcsV7ZES/zgEj2iaiWeVg69eWw8OTnZ6nmpoebN49plgHyKqQuldK7AeQ/KgUOW2+b9vim273n/U35R65KjuEsnqndt5DVOd4UpqqkDA9S14Ys8Re/DzG+3NQZm3kIMk5FdQqDgoT0IV3CPfP1Aemlj1ixkTpmx+rKMqDgD5nVK3jMirbhfbJz605GzwozyMhS55xOBb4aLvL+QVTxtN/YDx8/LQO03/zrB85j2Y8GQ2KAHreZML/OsV+P/u8vO/ODa5QRuDb6MPUl4eDhjWM3mV8ceampwYUYaGqiEvRhOUWZbmLmgs0dHmcSogo+UOvqhUWBUTFJenmyW7wz6S0gBYKgE4jDWo6tgL2F3CenAJJWfHpKCleWEXfnb4+EQesDaDqOIs99lTwJTbahSoE62BG1qA/60b5nIfTS+iECqJ3sysB/5/fPmhEq6Tx0E8Od3nmWT25vhGMIRiE23KF4oUFm0FeMz7V3g/xCGtxP/f9GTgA6NZvExexgF9/yQh7BfsuOSFu+RNWpHy0xTtwww98Kf0ZyBc+iggne0CW0Hb8aibiLCYcq8qLTwXfxPdxxy3XY26k7iVkpXM9POXehhq5l+AjZH5TJnFmBl6a2aaQc2zbA+3uEzWqUok5YTBB/Xr/AXX0EYEvZs8j55k3DT7+qFbQoLBFBxdSFKqtQZd3jlU9GS+v7ONTCf2KxnH+9BRCWybOQcYXlZXsd0T7DCEgLjQ8T52yKNQsgCSe7pWLREjhuGUjoY0P2/ul0sGm7QVMszwGWc01h0KK4+hAPivOHRfMexakEuCQhqjVyAlm9w8jaBMGeqFkpQKIJedo35FBv02/FuQ15IpG6aad4iRpWcA17u07l/xN6FotBldQntjUt1gU2YayH+EhdbTeV29b8N/mfMWPo/Q6ubIbM113e2crQ8aAKu9oirFC2kgijF0Mku1t93tVYyXqX5d2eAgMYX7rqUVcx+gQ8rbyMMXp13J/dyXA5afr8iTTFwd98XOY= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A2DPBwB9skJf/xCltltfHQEBAQEJARIBBQUBR4FDAoMYVF+NOJJKkgILAQEBAQEBAQEBJw0BAgQBAYRMgkclOBMCAwEBAQMCBQEBBgEBAQEBAQUEAYYPRUMWAYFdIoNHCwEjI4E/EoMmAYJXKbIcM4QQhGeBQIE4AYgjhRmBQT+BEYNOijQEj2UEplaCbYMMhFp+kTEPIaAykkOhWoF6TSAYO4JpCUcZDZxoQjA3AgYKAQEDCVcBPQGMBYQfAQE X-IPAS-Result: A2DPBwB9skJf/xCltltfHQEBAQEJARIBBQUBR4FDAoMYVF+NOJJKkgILAQEBAQEBAQEBJw0BAgQBAYRMgkclOBMCAwEBAQMCBQEBBgEBAQEBAQUEAYYPRUMWAYFdIoNHCwEjI4E/EoMmAYJXKbIcM4QQhGeBQIE4AYgjhRmBQT+BEYNOijQEj2UEplaCbYMMhFp+kTEPIaAykkOhWoF6TSAYO4JpCUcZDZxoQjA3AgYKAQEDCVcBPQGMBYQfAQE Received: from 16.165-182-91.adsl-dyn.isp.belgacom.be (HELO localhost.localdomain) ([91.182.165.16]) by relay.skynet.be with ESMTP; 23 Aug 2020 20:17:59 +0200 From: Fabian Frederick To: pablo@netfilter.org, kadlec@netfilter.org, fw@strlen.de, sbrivio@redhat.com Cc: netfilter-devel@vger.kernel.org, coreteam@netfilter.org, netdev@vger.kernel.org, Fabian Frederick Subject: [PATCH V2 4/5 nf] selftests: netfilter: simplify command testing Date: Sun, 23 Aug 2020 20:17:39 +0200 Message-Id: <20200823181740.13413-1-fabf@skynet.be> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Fix some shellcheck SC2181 warnings: "Check exit code directly with e.g. 'if mycmd;', not indirectly with $?." as suggested by Stefano Brivio. Signed-off-by: Fabian Frederick --- V2: new patch .../selftests/netfilter/nft_flowtable.sh | 34 ++++++------------- 1 file changed, 11 insertions(+), 23 deletions(-) diff --git a/tools/testing/selftests/netfilter/nft_flowtable.sh b/tools/testing/selftests/netfilter/nft_flowtable.sh index 1058952d1b364..44a8798262369 100755 --- a/tools/testing/selftests/netfilter/nft_flowtable.sh +++ b/tools/testing/selftests/netfilter/nft_flowtable.sh @@ -27,8 +27,7 @@ ns2out="" log_netns=$(sysctl -n net.netfilter.nf_log_all_netns) checktool (){ - $1 > /dev/null 2>&1 - if [ $? -ne 0 ];then + if ! $1 > /dev/null 2>&1; then echo "SKIP: Could not $2" exit $ksft_skip fi @@ -187,15 +186,13 @@ if [ $? -ne 0 ]; then fi # test basic connectivity -ip netns exec ns1 ping -c 1 -q 10.0.2.99 > /dev/null -if [ $? -ne 0 ];then +if ! ip netns exec ns1 ping -c 1 -q 10.0.2.99 > /dev/null; then echo "ERROR: ns1 cannot reach ns2" 1>&2 bash exit 1 fi -ip netns exec ns2 ping -c 1 -q 10.0.1.99 > /dev/null -if [ $? -ne 0 ];then +if ! ip netns exec ns2 ping -c 1 -q 10.0.1.99 > /dev/null; then echo "ERROR: ns2 cannot reach ns1" 1>&2 exit 1 fi @@ -230,8 +227,7 @@ check_transfer() out=$2 what=$3 - cmp "$in" "$out" > /dev/null 2>&1 - if [ $? -ne 0 ] ;then + if ! cmp "$in" "$out" > /dev/null 2>&1; then echo "FAIL: file mismatch for $what" 1>&2 ls -l "$in" ls -l "$out" @@ -268,13 +264,11 @@ test_tcp_forwarding_ip() wait - check_transfer "$ns1in" "$ns2out" "ns1 -> ns2" - if [ $? -ne 0 ];then + if ! check_transfer "$ns1in" "$ns2out" "ns1 -> ns2"; then lret=1 fi - check_transfer "$ns2in" "$ns1out" "ns1 <- ns2" - if [ $? -ne 0 ];then + if ! check_transfer "$ns2in" "$ns1out" "ns1 <- ns2"; then lret=1 fi @@ -308,8 +302,7 @@ make_file "$ns2in" # First test: # No PMTU discovery, nsr1 is expected to fragment packets from ns1 to ns2 as needed. -test_tcp_forwarding ns1 ns2 -if [ $? -eq 0 ] ;then +if test_tcp_forwarding ns1 ns2; then echo "PASS: flow offloaded for ns1/ns2" else echo "FAIL: flow offload for ns1/ns2:" 1>&2 @@ -340,9 +333,7 @@ table ip nat { } EOF -test_tcp_forwarding_nat ns1 ns2 - -if [ $? -eq 0 ] ;then +if test_tcp_forwarding_nat ns1 ns2; then echo "PASS: flow offloaded for ns1/ns2 with NAT" else echo "FAIL: flow offload for ns1/ns2 with NAT" 1>&2 @@ -354,8 +345,7 @@ fi # Same as second test, but with PMTU discovery enabled. handle=$(ip netns exec nsr1 nft -a list table inet filter | grep something-to-grep-for | cut -d \# -f 2) -ip netns exec nsr1 nft delete rule inet filter forward $handle -if [ $? -ne 0 ] ;then +if ! ip netns exec nsr1 nft delete rule inet filter forward $handle; then echo "FAIL: Could not delete large-packet accept rule" exit 1 fi @@ -363,8 +353,7 @@ fi ip netns exec ns1 sysctl net.ipv4.ip_no_pmtu_disc=0 > /dev/null ip netns exec ns2 sysctl net.ipv4.ip_no_pmtu_disc=0 > /dev/null -test_tcp_forwarding_nat ns1 ns2 -if [ $? -eq 0 ] ;then +if test_tcp_forwarding_nat ns1 ns2; then echo "PASS: flow offloaded for ns1/ns2 with NAT and pmtu discovery" else echo "FAIL: flow offload for ns1/ns2 with NAT and pmtu discovery" 1>&2 @@ -410,8 +399,7 @@ ip -net ns2 route del 192.168.10.1 via 10.0.2.1 ip -net ns2 route add default via 10.0.2.1 ip -net ns2 route add default via dead:2::1 -test_tcp_forwarding ns1 ns2 -if [ $? -eq 0 ] ;then +if test_tcp_forwarding ns1 ns2; then echo "PASS: ipsec tunnel mode for ns1/ns2" else echo "FAIL: ipsec tunnel mode for ns1/ns2"