On Fri, May 10, 2024 at 1:19 AM Jakub Kicinski <kuba@xxxxxxxxxx> 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@xxxxxxxxxx> > --- > CC: shuah@xxxxxxxxxx > CC: ap420073@xxxxxxxxx > CC: linux-kselftest@xxxxxxxxxxxxxxx > --- > 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@xxxxxxxxx>