1#!/bin/bash 2# SPDX-License-Identifier: GPL-2.0 3# shellcheck disable=SC2153 4 5source ../lib.sh 6 7IP_SERVER="192.168.200.1" 8IP_CLIENT="192.168.200.2" 9 10ppp_common_init() { 11 # Package requirements 12 require_command socat 13 require_command pppd 14 require_command iperf3 15 16 # Check for root privileges 17 if [ "$(id -u)" -ne 0 ];then 18 echo "SKIP: Need root privileges" 19 exit "$ksft_skip" 20 fi 21 22 # Namespaces 23 setup_ns NS_SERVER NS_CLIENT 24} 25 26ppp_check_addr() { 27 dev=$1 28 addr=$2 29 ns=$3 30 ip -netns "$ns" -4 addr show dev "$dev" 2>/dev/null | grep -q "$addr" 31 return $? 32} 33 34ppp_test_connectivity() { 35 slowwait 10 ppp_check_addr "ppp0" "$IP_CLIENT" "$NS_CLIENT" 36 37 ip netns exec "$NS_CLIENT" ping -c 3 "$IP_SERVER" 38 check_err $? 39 40 ip netns exec "$NS_SERVER" iperf3 -s -1 -D 41 wait_local_port_listen "$NS_SERVER" 5201 tcp 42 43 ip netns exec "$NS_CLIENT" iperf3 -c "$IP_SERVER" -Z -t 2 44 check_err $? 45} 46