mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/
synced 2026-04-18 06:33:43 -04:00
Add ipv4-mapped-ipv6 case to ksft_runner.sh before an upcoming TCP fix in this area. Signed-off-by: Eric Dumazet <edumazet@google.com> Reviewed-by: Willem de Bruijn <willemb@google.com> Link: https://patch.msgid.link/20260217142924.1853498-1-edumazet@google.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
72 lines
1.8 KiB
Bash
Executable File
72 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
# SPDX-License-Identifier: GPL-2.0
|
|
|
|
source "$(dirname $(realpath $0))/../../kselftest/ktap_helpers.sh"
|
|
|
|
declare -A ip_args=(
|
|
[ipv4]="--ip_version=ipv4
|
|
--local_ip=192.168.0.1
|
|
--gateway_ip=192.168.0.1
|
|
--netmask_ip=255.255.0.0
|
|
--remote_ip=192.0.2.1
|
|
-D TFO_COOKIE=3021b9d889017eeb
|
|
-D TFO_COOKIE_ZERO=b7c12350a90dc8f5
|
|
-D CMSG_LEVEL_IP=SOL_IP
|
|
-D CMSG_TYPE_RECVERR=IP_RECVERR"
|
|
[ipv4-mapped-ipv6]="--ip_version=ipv4-mapped-ipv6
|
|
--local_ip=192.168.0.1
|
|
--gateway_ip=192.168.0.1
|
|
--netmask_ip=255.255.0.0
|
|
--remote_ip=192.0.2.1
|
|
-D TFO_COOKIE=3021b9d889017eeb
|
|
-D TFO_COOKIE_ZERO=b7c12350a90dc8f5
|
|
-D CMSG_LEVEL_IP=SOL_IPV6
|
|
-D CMSG_TYPE_RECVERR=IPV6_RECVERR"
|
|
[ipv6]="--ip_version=ipv6
|
|
--mtu=1520
|
|
--local_ip=fd3d:0a0b:17d6::1
|
|
--gateway_ip=fd3d:0a0b:17d6:8888::1
|
|
--remote_ip=fd3d:fa7b:d17d::1
|
|
-D TFO_COOKIE=c1d1e9742a47a9bc
|
|
-D TFO_COOKIE_ZERO=82af1a8f9a205c34
|
|
-D CMSG_LEVEL_IP=SOL_IPV6
|
|
-D CMSG_TYPE_RECVERR=IPV6_RECVERR"
|
|
)
|
|
|
|
if [ $# -ne 1 ]; then
|
|
ktap_exit_fail_msg "usage: $0 <script>"
|
|
exit "$KSFT_FAIL"
|
|
fi
|
|
script="$(basename $1)"
|
|
|
|
if [ -z "$(which packetdrill)" ]; then
|
|
ktap_skip_all "packetdrill not found in PATH"
|
|
exit "$KSFT_SKIP"
|
|
fi
|
|
|
|
declare -a optargs
|
|
failfunc=ktap_test_fail
|
|
|
|
if [[ -n "${KSFT_MACHINE_SLOW}" ]]; then
|
|
optargs+=('--tolerance_usecs=14000')
|
|
failfunc=ktap_test_xfail
|
|
fi
|
|
|
|
ip_versions=$(grep -E '^--ip_version=' $script | cut -d '=' -f 2)
|
|
if [[ -z $ip_versions ]]; then
|
|
ip_versions="ipv4 ipv6 ipv4-mapped-ipv6"
|
|
elif [[ ! "$ip_versions" =~ ^ipv[46]$ ]]; then
|
|
ktap_exit_fail_msg "Too many or unsupported --ip_version: $ip_versions"
|
|
exit "$KSFT_FAIL"
|
|
fi
|
|
|
|
ktap_print_header
|
|
ktap_set_plan $(echo $ip_versions | wc -w)
|
|
|
|
for ip_version in $ip_versions; do
|
|
unshare -n packetdrill ${ip_args[$ip_version]} ${optargs[@]} $script > /dev/null \
|
|
&& ktap_test_pass $ip_version || $failfunc $ip_version
|
|
done
|
|
|
|
ktap_finished
|