[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMArcTVfJZH+u1XT4pTxiLftX=ndRoQceaSLg1SvDOr85R1D3Q@mail.gmail.com>
Date: Fri, 10 May 2024 15:09:23 +0900
From: Taehee Yoo <ap420073@...il.com>
To: Jakub Kicinski <kuba@...nel.org>
Cc: davem@...emloft.net, netdev@...r.kernel.org, edumazet@...gle.com,
pabeni@...hat.com, shuah@...nel.org, linux-kselftest@...r.kernel.org
Subject: Re: [PATCH net] selftests: net: move amt to socat for better compatibility
On Fri, May 10, 2024 at 1:19 AM Jakub Kicinski <kuba@...nel.org> wrote:
>
Hi Jakub,
Thanks a lot for this work!
> The test seems to expect that nc will exit after the first
> received message. This is not the case with Ncat 7.94.
> There are multiple versions of nc out there, switch
> to socat for better compatibility.
>
> Tell socat to exit after 128 bytes and pad the message.
>
> Since the test sets -e make sure we don't set exit code
> (|| true) and print the pass / fail rather then silently
> moving over the test and just setting non-zero exit code
> with no output indicating what failed.
>
> Fixes: c08e8baea78e ("selftests: add amt interface selftest script")
> Signed-off-by: Jakub Kicinski <kuba@...nel.org>
> ---
> CC: shuah@...nel.org
> CC: ap420073@...il.com
> CC: linux-kselftest@...r.kernel.org
> ---
> tools/testing/selftests/net/amt.sh | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/tools/testing/selftests/net/amt.sh b/tools/testing/selftests/net/amt.sh
> index 75528788cb95..5175a42cbe8a 100755
> --- a/tools/testing/selftests/net/amt.sh
> +++ b/tools/testing/selftests/net/amt.sh
> @@ -210,8 +210,8 @@ check_features()
>
> test_ipv4_forward()
> {
> - RESULT4=$(ip netns exec "${LISTENER}" nc -w 1 -l -u 239.0.0.1 4000)
> - if [ "$RESULT4" == "172.17.0.2" ]; then
> + RESULT4=$(ip netns exec "${LISTENER}" timeout 15 socat - UDP4-LISTEN:4000,readbytes=128 || true)
> + if echo "$RESULT4" | grep -q "172.17.0.2"; then
> printf "TEST: %-60s [ OK ]\n" "IPv4 amt multicast forwarding"
> exit 0
> else
> @@ -222,8 +222,8 @@ test_ipv4_forward()
>
> test_ipv6_forward()
> {
> - RESULT6=$(ip netns exec "${LISTENER}" nc -w 1 -l -u ff0e::5:6 6000)
> - if [ "$RESULT6" == "2001:db8:3::2" ]; then
> + RESULT6=$(ip netns exec "${LISTENER}" timeout 15 socat - UDP6-LISTEN:6000,readbytes=128 || true)
> + if echo "$RESULT6" | grep -q "2001:db8:3::2"; then
> printf "TEST: %-60s [ OK ]\n" "IPv6 amt multicast forwarding"
> exit 0
> else
> @@ -236,14 +236,14 @@ send_mcast4()
> {
> sleep 2
> ip netns exec "${SOURCE}" bash -c \
> - 'echo 172.17.0.2 | nc -w 1 -u 239.0.0.1 4000' &
> + 'printf "%s %128s" 172.17.0.2 | nc -w 1 -u 239.0.0.1 4000' &
> }
>
> send_mcast6()
> {
> sleep 2
> ip netns exec "${SOURCE}" bash -c \
> - 'echo 2001:db8:3::2 | nc -w 1 -u ff0e::5:6 6000' &
> + 'printf "%s %128s" 2001:db8:3::2 | nc -w 1 -u ff0e::5:6 6000' &
> }
>
> check_features
> --
> 2.45.0
>
Tested-by: Taehee Yoo <ap420073@...il.com>
Powered by blists - more mailing lists