linux/tools/testing/selftests/net/ppp/ppp_common.sh
Qingfang Deng dfecb0c5af selftests: net: add tests for PPP
Add ping and iperf3 tests for ppp_async.c and pppoe.c.

Signed-off-by: Qingfang Deng <qingfang.deng@linux.dev>
Link: https://patch.msgid.link/20260403034908.30017-1-qingfang.deng@linux.dev
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
2026-04-07 12:08:46 +02:00

46 lines
876 B
Bash

#!/bin/bash
# SPDX-License-Identifier: GPL-2.0
# shellcheck disable=SC2153
source ../lib.sh
IP_SERVER="192.168.200.1"
IP_CLIENT="192.168.200.2"
ppp_common_init() {
# Package requirements
require_command socat
require_command pppd
require_command iperf3
# Check for root privileges
if [ "$(id -u)" -ne 0 ];then
echo "SKIP: Need root privileges"
exit "$ksft_skip"
fi
# Namespaces
setup_ns NS_SERVER NS_CLIENT
}
ppp_check_addr() {
dev=$1
addr=$2
ns=$3
ip -netns "$ns" -4 addr show dev "$dev" 2>/dev/null | grep -q "$addr"
return $?
}
ppp_test_connectivity() {
slowwait 10 ppp_check_addr "ppp0" "$IP_CLIENT" "$NS_CLIENT"
ip netns exec "$NS_CLIENT" ping -c 3 "$IP_SERVER"
check_err $?
ip netns exec "$NS_SERVER" iperf3 -s -1 -D
wait_local_port_listen "$NS_SERVER" 5201 tcp
ip netns exec "$NS_CLIENT" iperf3 -c "$IP_SERVER" -Z -t 2
check_err $?
}