From 1aaa2bd189cb42a26ee411fd1652e7479d82f005 Mon Sep 17 00:00:00 2001 From: David Gibson Date: Fri, 15 Jul 2022 15:21:34 +1000 Subject: tests: Use socat instead of netcat Commit 41c02e10 ("tests: Use nmap-ncat instead of openbsd netcat for pasta tests") updated the pasta tests to use the nmap version of ncat instead of the openbsd version, for greater portability. For some upcoming changes, however, we'll be wanting to use socat. "socat" can do everything "ncat" can and more, so let's move all the tests using host tools (either directly on the host or via mbuto generated images) to using socat instead. Signed-off-by: David Gibson [sbrivio: Fix a typo in port specification, 31337 instead of x31337] Signed-off-by: Stefano Brivio --- test/tcp/passt | 36 +++++++------- test/tcp/passt_in_ns | 138 +++++++++++++++++++++++++-------------------------- test/tcp/pasta | 58 +++++++++++----------- 3 files changed, 116 insertions(+), 116 deletions(-) (limited to 'test/tcp') diff --git a/test/tcp/passt b/test/tcp/passt index 4baa610..6e65137 100644 --- a/test/tcp/passt +++ b/test/tcp/passt @@ -11,75 +11,75 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -gtools nc ip jq cat md5sum cut -htools dd nc ip jq cat md5sum cut +gtools socat ip jq md5sum cut +htools dd socat ip jq md5sum cut test TCP/IPv4: host to guest: big transfer temp TEMP_BIG -guestb nc -4 -l 10001 > test_big.bin +guestb socat -u TCP4-LISTEN:10001,reuseaddr OPEN:test_big.bin,create,trunc host dd if=/dev/urandom bs=1M count=10 > __TEMP_BIG__ -host cat __TEMP_BIG__ | nc -N 127.0.0.1 10001 +host socat -u OPEN:__TEMP_BIG__ TCP4:127.0.0.1:10001 guestw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 gout GUEST_MD5_BIG md5sum test_big.bin | cut -d' ' -f1 check [ "__GUEST_MD5_BIG__" = "__HOST_MD5_BIG__" ] test TCP/IPv4: guest to host: big transfer -hostb nc -4 -l 10003 > __TEMP_BIG__ +hostb socat -u TCP4-LISTEN:10003,bind=127.0.0.1,reuseaddr OPEN:__TEMP_BIG__,create,trunc gout GW ip -j -4 route show|jq -rM '.[] | select(.dst == "default").gateway' -guest cat test_big.bin | nc -N __GW__ 10003 +guest socat -u OPEN:test_big.bin TCP4:__GW__:10003 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__GUEST_MD5_BIG__" = "__HOST_MD5_BIG__" ] test TCP/IPv4: host to guest: small transfer temp TEMP_SMALL -guestb nc -4 -l 10001 > test_small.bin +guestb socat -u TCP4-LISTEN:10001,reuseaddr OPEN:test_small.bin,create,trunc host dd if=/dev/urandom bs=2k count=1 > __TEMP_SMALL__ -host cat __TEMP_SMALL__ | nc -N 127.0.0.1 10001 +host socat -u OPEN:__TEMP_SMALL__ TCP4:127.0.0.1:10001 guestw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 gout GUEST_MD5_SMALL md5sum test_small.bin | cut -d' ' -f1 check [ "__GUEST_MD5_SMALL__" = "__HOST_MD5_SMALL__" ] test TCP/IPv4: guest to host: small transfer -hostb nc -4 -l 10003 > __TEMP_SMALL__ +hostb socat -u TCP4-LISTEN:10003,bind=127.0.0.1,reuseaddr OPEN:__TEMP_SMALL__,create,trunc sleep 1 -guest cat test_small.bin | nc -N __GW__ 10003 +guest socat -u OPEN:test_small.bin TCP4:__GW__:10003 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__GUEST_MD5_SMALL__" = "__HOST_MD5_SMALL__" ] test TCP/IPv6: host to guest: big transfer -guestb nc -6 -l 10001 > test_big.bin +guestb socat -u TCP6-LISTEN:10001,reuseaddr OPEN:test_big.bin,create,trunc sleep 1 -host cat __TEMP_BIG__ | nc -N ::1 10001 +host socat -u OPEN:__TEMP_BIG__ TCP6:[::1]:10001 guestw gout GUEST_MD5_BIG md5sum test_big.bin | cut -d' ' -f1 check [ "__GUEST_MD5_BIG__" = "__HOST_MD5_BIG__" ] test TCP/IPv6: guest to host: big transfer -hostb nc -6 -l 10003 > __TEMP_BIG__ +hostb socat -u TCP6-LISTEN:10003,bind=[::1],reuseaddr OPEN:__TEMP_BIG__,create,trunc gout GW6 ip -j -6 route show|jq -rM '.[] | select(.dst == "default").gateway' gout IFNAME ip -j link show | jq -rM '.[] | select(.link_type == "ether").ifname' -guest cat test_big.bin | nc -N __GW6__%__IFNAME__ 10003 +guest socat -u OPEN:test_big.bin TCP6:[__GW6__%__IFNAME__]:10003 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__GUEST_MD5_BIG__" = "__HOST_MD5_BIG__" ] test TCP/IPv6: host to guest: small transfer -guestb nc -6 -l 10001 > test_small.bin +guestb socat -u TCP6-LISTEN:10001,reuseaddr OPEN:test_small.bin,create,trunc sleep 1 -host cat __TEMP_SMALL__ | nc -N ::1 10001 +host socat -u OPEN:__TEMP_SMALL__ TCP6:[::1]:10001 guestw gout GUEST_MD5_SMALL md5sum test_small.bin | cut -d' ' -f1 check [ "__GUEST_MD5_SMALL__" = "__HOST_MD5_SMALL__" ] test TCP/IPv6: guest to host: small transfer -hostb nc -6 -l 10003 > __TEMP_SMALL__ +hostb socat -u TCP6-LISTEN:10003,bind=[::1],reuseaddr OPEN:__TEMP_SMALL__,create,trunc sleep 1 -guest cat test_small.bin | nc -N __GW6__%__IFNAME__ 10003 +guest socat -u OPEN:test_small.bin TCP6:[__GW6__%__IFNAME__]:10003 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__GUEST_MD5_SMALL__" = "__HOST_MD5_SMALL__" ] diff --git a/test/tcp/passt_in_ns b/test/tcp/passt_in_ns index 2a11e0b..ab22485 100644 --- a/test/tcp/passt_in_ns +++ b/test/tcp/passt_in_ns @@ -11,15 +11,15 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -gtools nc ip jq cat md5sum cut -htools dd nc ip jq cat md5sum cut -nstools nc ip jq cat md5sum cut +gtools socat ip jq md5sum cut +htools dd socat ip jq md5sum cut +nstools socat ip jq md5sum cut test TCP/IPv4: host to guest: big transfer temp TEMP_BIG -guestb nc -4 -l 10001 > test_big.bin -host dd if=/dev/urandom bs=1M count=10 > __TEMP_BIG__ -host cat __TEMP_BIG__ | nc -N 127.0.0.1 10001 +guestb socat -u TCP4-LISTEN:10001 OPEN:test_big.bin,create,trunc +host dd if=/dev/urandom bs=1M count=10 of=__TEMP_BIG__ +host socat -u OPEN:__TEMP_BIG__ TCP4:127.0.0.1:10001 guestw hout MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 gout GUEST_MD5_BIG md5sum test_big.bin | cut -d' ' -f1 @@ -27,63 +27,63 @@ check [ "__GUEST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv4: host to ns: big transfer temp TEMP_NS_BIG -nsb nc -4 -l 10002 > __TEMP_NS_BIG__ -host cat __TEMP_BIG__ | nc -N 127.0.0.1 10002 +nsb socat -u TCP4-LISTEN:10002 OPEN:__TEMP_NS_BIG__,create,trunc +host socat -u OPEN:__TEMP_BIG__ TCP4:127.0.0.1:10002 nsw nsout NS_MD5_BIG md5sum __TEMP_NS_BIG__ | cut -d' ' -f1 check [ "__NS_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv4: guest to host: big transfer -hostb nc -4 -l 10003 > __TEMP_BIG__ +hostb socat -u TCP4-LISTEN:10003 OPEN:__TEMP_BIG__,create,trunc gout GW ip -j -4 route show|jq -rM '.[] | select(.dst == "default").gateway' -guest cat test_big.bin | nc -N __GW__ 10003 +guest socat -u OPEN:test_big.bin TCP4:__GW__:10003 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv4: guest to ns: big transfer -nsb nc -4 -l 10002 > __TEMP_BIG__ -guest cat test_big.bin | nc -N __GW__ 10002 +nsb socat -u TCP4-LISTEN:10002 OPEN:__TEMP_BIG__,create,trunc +guest socat -u OPEN:test_big.bin TCP4:__GW__:10002 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv4: ns to host (spliced): big transfer sleep 1 -hostb nc -4 -l 10003 > __TEMP_BIG__ -ns cat __TEMP_NS_BIG__ | nc -N 127.0.0.1 10003 +hostb socat -u TCP4-LISTEN:10003 OPEN:__TEMP_BIG__,create,trunc +ns socat -u OPEN:__TEMP_NS_BIG__ TCP4:127.0.0.1:10003 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv4: ns to host (via tap): big transfer -hostb nc -4 -l 10003 > __TEMP_BIG__ -ns cat __TEMP_NS_BIG__ | nc -N __GW__ 10003 +hostb socat -u TCP4-LISTEN:10003 OPEN:__TEMP_BIG__,create,trunc +ns socat -u OPEN:__TEMP_NS_BIG__ TCP4:__GW__:10003 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv4: ns to guest (using loopback address): big transfer -guestb nc -4 -l 10001 > test_big.bin -ns cat __TEMP_NS_BIG__ | nc -N 127.0.0.1 10001 +guestb socat -u TCP4-LISTEN:10001 OPEN:test_big.bin,create,trunc +ns socat -u OPEN:__TEMP_NS_BIG__ TCP4:127.0.0.1:10001 guestw gout GUEST_MD5_BIG md5sum test_big.bin | cut -d' ' -f1 check [ "__GUEST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv4: ns to guest (using namespace address): big transfer -guestb nc -4 -l 10001 > test_big.bin +guestb socat -u TCP4-LISTEN:10001 OPEN:test_big.bin,create,trunc nsout IFNAME ip -j link show | jq -rM '.[] | select(.link_type == "ether").ifname' nsout ADDR ip -j -4 addr show|jq -rM '.[] | select(.ifname == "__IFNAME__").addr_info[0].local' -ns cat __TEMP_NS_BIG__ | nc -N __ADDR__ 10001 +ns socat -u OPEN:__TEMP_NS_BIG__ TCP4:__ADDR__:10001 guestw gout GUEST_MD5_BIG md5sum test_big.bin | cut -d' ' -f1 check [ "__GUEST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv4: host to guest: small transfer temp TEMP_SMALL -guestb nc -4 -l 10001 > test_small.bin -host dd if=/dev/urandom bs=2k count=100 > __TEMP_SMALL__ -host cat __TEMP_SMALL__ | nc -N 127.0.0.1 10001 +guestb socat -u TCP4-LISTEN:10001 OPEN:test_small.bin,create,trunc +host dd if=/dev/urandom bs=2k count=100 of=__TEMP_SMALL__ +host socat -u OPEN:__TEMP_SMALL__ TCP4:127.0.0.1:10001 guestw hout MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 gout GUEST_MD5_SMALL md5sum test_small.bin | cut -d' ' -f1 @@ -91,171 +91,171 @@ check [ "__GUEST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv4: host to ns: small transfer temp TEMP_NS_SMALL -nsb nc -4 -l 10002 > __TEMP_NS_SMALL__ -host cat __TEMP_SMALL__ | nc -N 127.0.0.1 10002 +nsb socat -u TCP4-LISTEN:10002 OPEN:__TEMP_NS_SMALL__,create,trunc +host socat -u OPEN:__TEMP_SMALL__ TCP4:127.0.0.1:10002 nsw nsout NS_MD5_SMALL md5sum __TEMP_NS_SMALL__ | cut -d' ' -f1 check [ "__NS_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv4: guest to host: small transfer -hostb nc -4 -l 10003 > __TEMP_SMALL__ +hostb socat -u TCP4-LISTEN:10003 OPEN:__TEMP_SMALL__,create,trunc gout GW ip -j -4 route show|jq -rM '.[] | select(.dst == "default").gateway' -guest cat test_small.bin | nc -N __GW__ 10003 +guest socat -u OPEN:test_small.bin TCP4:__GW__:10003 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__HOST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv4: guest to ns: small transfer -nsb nc -4 -l 10002 > __TEMP_SMALL__ -guest cat test_small.bin | nc -N __GW__ 10002 +nsb socat -u TCP4-LISTEN:10002 OPEN:__TEMP_SMALL__,create,trunc +guest socat -u OPEN:test_small.bin TCP4:__GW__:10002 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__HOST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv4: ns to host (spliced): small transfer sleep 1 -hostb nc -4 -l 10003 > __TEMP_SMALL__ -ns cat __TEMP_NS_SMALL__ | nc -N 127.0.0.1 10003 +hostb socat -u TCP4-LISTEN:10003 OPEN:__TEMP_SMALL__,create,trunc +ns socat -u OPEN:__TEMP_NS_SMALL__ TCP4:127.0.0.1:10003 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__HOST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv4: ns to host (via tap): small transfer -hostb nc -4 -l 10003 > __TEMP_SMALL__ -ns cat __TEMP_NS_SMALL__ | nc -N __GW__ 10003 +hostb socat -u TCP4-LISTEN:10003 OPEN:__TEMP_SMALL__,create,trunc +ns socat -u OPEN:__TEMP_NS_SMALL__ TCP4:__GW__:10003 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__HOST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv4: ns to guest (using loopback address): small transfer -guestb nc -4 -l 10001 > test_small.bin -ns cat __TEMP_NS_SMALL__ | nc -N 127.0.0.1 10001 +guestb socat -u TCP4-LISTEN:10001 OPEN:test_small.bin,create,trunc +ns socat -u OPEN:__TEMP_NS_SMALL__ TCP4:127.0.0.1:10001 guestw gout GUEST_MD5_SMALL md5sum test_small.bin | cut -d' ' -f1 check [ "__GUEST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv4: ns to guest (using namespace address): small transfer -guestb nc -4 -l 10001 > test_small.bin -ns cat __TEMP_NS_SMALL__ | nc -N __ADDR__ 10001 +guestb socat -u TCP4-LISTEN:10001 OPEN:test_small.bin,create,trunc +ns socat -u OPEN:__TEMP_NS_SMALL__ TCP4:__ADDR__:10001 guestw gout GUEST_MD5_SMALL md5sum test_small.bin | cut -d' ' -f1 check [ "__GUEST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv6: host to guest: big transfer -guestb nc -6 -l 10001 > test_big.bin -host cat __TEMP_BIG__ | nc -N ::1 10001 +guestb socat -u TCP6-LISTEN:10001 OPEN:test_big.bin,create,trunc +host socat -u OPEN:__TEMP_BIG__ TCP6:[::1]:10001 guestw gout GUEST_MD5_BIG md5sum test_big.bin | cut -d' ' -f1 check [ "__GUEST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv6: host to ns: big transfer -nsb nc -6 -l 10002 > __TEMP_NS_BIG__ -host cat __TEMP_BIG__ | nc -N ::1 10002 +nsb socat -u TCP6-LISTEN:10002 OPEN:__TEMP_NS_BIG__,create,trunc +host socat -u OPEN:__TEMP_BIG__ TCP6:[::1]:10002 nsw nsout NS_MD5_BIG md5sum __TEMP_NS_BIG__ | cut -d' ' -f1 check [ "__NS_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv6: guest to host: big transfer -hostb nc -6 -l 10003 > __TEMP_BIG__ +hostb socat -u TCP6-LISTEN:10003 OPEN:__TEMP_BIG__,create,trunc gout GW6 ip -j -6 route show|jq -rM '.[] | select(.dst == "default").gateway' gout IFNAME ip -j link show | jq -rM '.[] | select(.link_type == "ether").ifname' -guest cat test_big.bin | nc -N __GW6__%__IFNAME__ 10003 +guest socat -u OPEN:test_big.bin TCP6:[__GW6__%__IFNAME__]:10003 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv6: guest to ns: big transfer -nsb nc -6 -l 10002 > __TEMP_BIG__ -guest cat test_big.bin | nc -N __GW6__%__IFNAME__ 10002 +nsb socat -u TCP6-LISTEN:10002 OPEN:__TEMP_BIG__,create,trunc +guest socat -u OPEN:test_big.bin TCP6:[__GW6__%__IFNAME__]:10002 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv6: ns to host (spliced): big transfer -hostb nc -6 -l 10003 > __TEMP_BIG__ -ns cat __TEMP_NS_BIG__ | nc -N ::1 10003 +hostb socat -u TCP6-LISTEN:10003 OPEN:__TEMP_BIG__,create,trunc +ns socat -u OPEN:__TEMP_NS_BIG__ TCP6:[::1]:10003 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv6: ns to host (via tap): big transfer -hostb nc -6 -l 10003 > __TEMP_BIG__ +hostb socat -u TCP6-LISTEN:10003 OPEN:__TEMP_BIG__,create,trunc nsout IFNAME ip -j link show | jq -rM '.[] | select(.link_type == "ether").ifname' -ns cat __TEMP_NS_BIG__ | nc -N __GW6__%__IFNAME__ 10003 +ns socat -u OPEN:__TEMP_NS_BIG__ TCP6:[__GW6__%__IFNAME__]:10003 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv6: ns to guest (using loopback address): big transfer -guestb nc -6 -l 10001 > test_big.bin -ns cat __TEMP_NS_BIG__ | nc -N ::1 10001 +guestb socat -u TCP6-LISTEN:10001 OPEN:test_big.bin,create,trunc +ns socat -u OPEN:__TEMP_NS_BIG__ TCP6:[::1]:10001 guestw gout GUEST_MD5_BIG md5sum test_big.bin | cut -d' ' -f1 check [ "__GUEST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv6: ns to guest (using namespace address): big transfer -guestb nc -6 -l 10001 > test_big.bin +guestb socat -u TCP6-LISTEN:10001 OPEN:test_big.bin,create,trunc nsout ADDR6 ip -j -6 addr show|jq -rM '.[] | select(.ifname == "__IFNAME__").addr_info[0].local' -ns cat __TEMP_NS_BIG__ | nc -N __ADDR6__ 10001 +ns socat -u OPEN:__TEMP_NS_BIG__ TCP6:[__ADDR6__]:10001 guestw gout GUEST_MD5_BIG md5sum test_big.bin | cut -d' ' -f1 check [ "__GUEST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv6: host to guest: small transfer -guestb nc -6 -l 10001 > test_small.bin -host cat __TEMP_SMALL__ | nc -N ::1 10001 +guestb socat -u TCP6-LISTEN:10001 OPEN:test_small.bin,create,trunc +host socat -u OPEN:__TEMP_SMALL__ TCP6:[::1]:10001 guestw gout GUEST_MD5_SMALL md5sum test_small.bin | cut -d' ' -f1 check [ "__GUEST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv6: host to ns: small transfer -nsb nc -6 -l 10002 > __TEMP_NS_SMALL__ -host cat __TEMP_SMALL__ | nc -N ::1 10002 +nsb socat -u TCP6-LISTEN:10002 OPEN:__TEMP_NS_SMALL__,create,trunc +host socat -u OPEN:__TEMP_SMALL__ TCP6:[::1]:10002 nsw nsout NS_MD5_SMALL md5sum __TEMP_NS_SMALL__ | cut -d' ' -f1 check [ "__NS_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv6: guest to host: small transfer -hostb nc -6 -l 10003 > __TEMP_SMALL__ +hostb socat -u TCP6-LISTEN:10003 OPEN:__TEMP_SMALL__,create,trunc gout GW6 ip -j -6 route show|jq -rM '.[] | select(.dst == "default").gateway' gout IFNAME ip -j link show | jq -rM '.[] | select(.link_type == "ether").ifname' -guest cat test_small.bin | nc -N __GW6__%__IFNAME__ 10003 +guest socat -u OPEN:test_small.bin TCP6:[__GW6__%__IFNAME__]:10003 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__HOST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv6: guest to ns: small transfer -nsb nc -6 -l 10002 > __TEMP_SMALL__ -guest cat test_small.bin | nc -N __GW6__%__IFNAME__ 10002 +nsb socat -u TCP6-LISTEN:10002 OPEN:__TEMP_SMALL__ +guest socat -u OPEN:test_small.bin TCP6:[__GW6__%__IFNAME__]:10002 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__HOST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv6: ns to host (spliced): small transfer -hostb nc -6 -l 10003 > __TEMP_SMALL__ -ns cat __TEMP_NS_SMALL__ | nc -N ::1 10003 +hostb socat -u TCP6-LISTEN:10003 OPEN:__TEMP_SMALL__,create,trunc +ns socat -u OPEN:__TEMP_NS_SMALL__ TCP6:[::1]:10003 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__HOST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv6: ns to host (via tap): small transfer -hostb nc -6 -l 10003 > __TEMP_SMALL__ +hostb socat -u TCP6-LISTEN:10003 OPEN:__TEMP_SMALL__,create,trunc nsout IFNAME ip -j link show | jq -rM '.[] | select(.link_type == "ether").ifname' -ns cat __TEMP_NS_SMALL__ | nc -N __GW6__%__IFNAME__ 10003 +ns socat -u OPEN:__TEMP_NS_SMALL__ TCP6:[__GW6__%__IFNAME__]:10003 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__HOST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv6: ns to guest (using loopback address): small transfer -guestb nc -6 -l 10001 > test_small.bin -ns cat __TEMP_NS_SMALL__ | nc -N ::1 10001 +guestb socat -u TCP6-LISTEN:10001 OPEN:test_small.bin,create,trunc +ns socat -u OPEN:__TEMP_NS_SMALL__ TCP6:[::1]:10001 guestw gout GUEST_MD5_SMALL md5sum test_small.bin | cut -d' ' -f1 check [ "__GUEST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv6: ns to guest (using namespace address): small transfer -guestb nc -6 -l 10001 > test_small.bin -ns cat __TEMP_NS_SMALL__ | nc -N __ADDR6__ 10001 +guestb socat -u TCP6-LISTEN:10001 OPEN:test_small.bin,create,trunc +ns socat -u OPEN:__TEMP_NS_SMALL__ TCP6:[__ADDR6__]:10001 guestw gout GUEST_MD5_SMALL md5sum test_small.bin | cut -d' ' -f1 check [ "__GUEST_MD5_SMALL__" = "__MD5_SMALL__" ] diff --git a/test/tcp/pasta b/test/tcp/pasta index 068393a..0d6c729 100644 --- a/test/tcp/pasta +++ b/test/tcp/pasta @@ -11,31 +11,31 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -htools dd ncat ip jq cat md5sum cut -nstools ncat ip jq cat md5sum cut +htools dd socat ip jq md5sum cut +nstools socat ip jq md5sum cut test TCP/IPv4: host to ns: big transfer temp TEMP_BIG temp TEMP_NS_BIG -nsb ncat -4 -l 127.0.0.1 10002 > __TEMP_NS_BIG__ -host dd if=/dev/urandom bs=1M count=10 > __TEMP_BIG__ -host cat __TEMP_BIG__ | ncat 127.0.0.1 10002 +nsb socat -u TCP4-LISTEN:10002,bind=127.0.0.1 OPEN:__TEMP_NS_BIG__,create,trunc +host dd if=/dev/urandom bs=1M count=10 of=__TEMP_BIG__ +host socat -u OPEN:__TEMP_BIG__ TCP4:127.0.0.1:10002 nsw hout MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 nsout NS_MD5_BIG md5sum __TEMP_NS_BIG__ | cut -d' ' -f1 check [ "__NS_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv4: ns to host (spliced): big transfer -hostb ncat -4 -l 127.0.0.1 10003 > __TEMP_BIG__ -ns cat __TEMP_NS_BIG__ | ncat 127.0.0.1 10003 +hostb socat -u TCP4-LISTEN:10003,bind=127.0.0.1 OPEN:__TEMP_BIG__,create,trunc +ns socat -u OPEN:__TEMP_NS_BIG__ TCP4:127.0.0.1:10003 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv4: ns to host (via tap): big transfer -hostb ncat -4 -l 0.0.0.0 10003 > __TEMP_BIG__ +hostb socat -u TCP4-LISTEN:10003 OPEN:__TEMP_BIG__,create,trunc nsout GW ip -j -4 route show|jq -rM '.[] | select(.dst == "default").gateway' -ns cat __TEMP_NS_BIG__ | ncat __GW__ 10003 +ns socat -u OPEN:__TEMP_NS_BIG__ TCP4:__GW__:10003 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] @@ -43,50 +43,50 @@ check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv4: host to ns: small transfer temp TEMP_SMALL temp TEMP_NS_SMALL -nsb ncat -4 -l 127.0.0.1 10002 > __TEMP_NS_SMALL__ -host dd if=/dev/urandom bs=2k count=1 > __TEMP_SMALL__ -host cat __TEMP_SMALL__ | ncat 127.0.0.1 10002 +nsb socat -u TCP4-LISTEN:10002,bind=127.0.0.1 OPEN:__TEMP_NS_SMALL__,create,trunc +host dd if=/dev/urandom bs=2k count=1 of=__TEMP_SMALL__ +host socat OPEN:__TEMP_SMALL__ TCP4:127.0.0.1:10002 nsw hout MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 nsout NS_MD5_SMALL md5sum __TEMP_NS_SMALL__ | cut -d' ' -f1 check [ "__NS_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv4: ns to host (spliced): small transfer -hostb ncat -4 -l 127.0.0.1 10003 > __TEMP_SMALL__ -ns cat __TEMP_NS_SMALL__ | ncat 127.0.0.1 10003 +hostb socat -u TCP4-LISTEN:10003,bind=127.0.0.1 OPEN:__TEMP_SMALL__,create,trunc +ns socat OPEN:__TEMP_NS_SMALL__ TCP4:127.0.0.1:10003 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__HOST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv4: ns to host (via tap): small transfer -hostb ncat -4 -l 0.0.0.0 10003 > __TEMP_SMALL__ +hostb socat -u TCP4-LISTEN:10003 OPEN:__TEMP_SMALL__,create,trunc nsout GW ip -j -4 route show|jq -rM '.[] | select(.dst == "default").gateway' -ns cat __TEMP_NS_SMALL__ | ncat __GW__ 10003 +ns socat -u OPEN:__TEMP_NS_SMALL__ TCP4:__GW__:10003 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__HOST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv6: host to ns: big transfer -nsb ncat -6 -l ::1 10002 > __TEMP_NS_BIG__ -host cat __TEMP_BIG__ | ncat ::1 10002 +nsb socat -u TCP6-LISTEN:10002,bind=[::1] OPEN:__TEMP_NS_BIG__,create,trunc +host socat -u OPEN:__TEMP_BIG__ TCP6:[::1]:10002 nsw hout MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 nsout NS_MD5_BIG md5sum __TEMP_NS_BIG__ | cut -d' ' -f1 check [ "__NS_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv6: ns to host (spliced): big transfer -hostb ncat -6 -l ::1 10003 > __TEMP_BIG__ -ns cat __TEMP_NS_BIG__ | ncat ::1 10003 +hostb socat -u TCP6-LISTEN:10003,bind=[::1] OPEN:__TEMP_BIG__,create,trunc +ns socat -u OPEN:__TEMP_NS_BIG__ TCP6:[::1]:10003 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] nsw test TCP/IPv6: ns to host (via tap): big transfer -hostb ncat -6 -l :: 10003 > __TEMP_BIG__ +hostb socat -u TCP6-LISTEN:10003 OPEN:__TEMP_BIG__,create,trunc nsout GW6 ip -j -6 route show|jq -rM '.[] | select(.dst == "default").gateway' nsout IFNAME ip -j link show | jq -rM '.[] | select(.link_type == "ether").ifname' -ns cat __TEMP_NS_BIG__ | ncat __GW6__%__IFNAME__ 10003 +ns socat -u OPEN:__TEMP_NS_BIG__ TCP6:[__GW6__%__IFNAME__]:10003 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] @@ -94,24 +94,24 @@ check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv6: host to ns: small transfer temp TEMP_SMALL temp TEMP_NS_SMALL -nsb ncat -6 -l ::1 10002 > __TEMP_NS_SMALL__ -host dd if=/dev/urandom bs=2k count=1 > __TEMP_SMALL__ -host cat __TEMP_SMALL__ | ncat ::1 10002 +nsb socat -u TCP6-LISTEN:10002,bind=[::1] OPEN:__TEMP_NS_SMALL__,create,trunc +host dd if=/dev/urandom bs=2k count=1 of=__TEMP_SMALL__ +host socat -u OPEN:__TEMP_SMALL__ TCP6:[::1]:10002 nsw hout MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 nsout NS_MD5_SMALL md5sum __TEMP_NS_SMALL__ | cut -d' ' -f1 check [ "__NS_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv6: ns to host (spliced): small transfer -hostb ncat -6 -l ::1 10003 > __TEMP_SMALL__ -ns cat __TEMP_NS_SMALL__ | ncat ::1 10003 +hostb socat -u TCP6-LISTEN:10003,bind=[::1] OPEN:__TEMP_SMALL__,create,trunc +ns socat -u OPEN:__TEMP_NS_SMALL__ TCP6:[::1]:10003 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__HOST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv6: ns to host (via tap): small transfer -hostb ncat -6 -l :: 10003 > __TEMP_SMALL__ -ns cat __TEMP_NS_SMALL__ | ncat __GW6__%__IFNAME__ 10003 +hostb socat -u TCP6-LISTEN:10003 OPEN:__TEMP_SMALL__,create,trunc +ns socat -u OPEN:__TEMP_NS_SMALL__ TCP6:[__GW6__%__IFNAME__]:10003 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__HOST_MD5_SMALL__" = "__MD5_SMALL__" ] -- cgit v1.2.3