#!/bin/sh TST_TOTAL=1 TCID="network_settings" cd $(dirname $0) export LTPROOT=${LTPROOT:-"$PWD"} echo $LTPROOT | grep -q testscripts if [ $? -eq 0 ]; then cd .. export LTPROOT=${PWD} fi . test_net.sh export TMPDIR=/tmp/netpan-$$ mkdir -p $TMPDIR CMDFILE=${TMPDIR}/network.tests VERBOSE="no" export PATH="${PATH}:${LTPROOT}/testcases/bin" # Reset variables. # Don't break the tests which are using 'testcases/lib/cmdlib.sh' export TCID= export TST_LIB_LOADED= usage() { echo "Usage: $0 OPTIONS" echo " -6 IPv6 tests" echo " -m multicast tests" echo " -n NFS tests" echo " -r RPC tests" echo " -s SCTP tests" echo " -t TCP/IP command tests" echo " -a Application tests (HTTP, SSH, DNS)" echo " -e Interface stress tests" echo " -b Stress tests with malformed ICMP packets" echo " -i IPsec ICMP stress tests" echo " -T IPsec TCP stress tests" echo " -U IPsec UDP stress tests" echo " -R route stress tests" echo " -M multicast stress tests" echo " -F network features tests (TFO, vxlan, etc.)" echo " -f x where x is a runtest file" echo " -V|v verbose" echo " -h print this help" } TEST_CASES= while getopts 6mnrstaebiTURMFf:Vvh OPTION do case $OPTION in 6) TEST_CASES="$TEST_CASES net.ipv6 net.ipv6_lib";; m) TEST_CASES="$TEST_CASES net.multicast" ;; n) TEST_CASES="$TEST_CASES net.nfs" ;; r) TEST_CASES="$TEST_CASES net.rpc" ;; s) TEST_CASES="$TEST_CASES net.sctp" ;; t) TEST_CASES="$TEST_CASES net.tcp_cmds" ;; a) TEST_CASES="$TEST_CASES net_stress.appl";; e) TEST_CASES="$TEST_CASES net_stress.interface";; b) TEST_CASES="$TEST_CASES net_stress.broken_ip";; i) TEST_CASES="$TEST_CASES net_stress.ipsec_icmp";; T) TEST_CASES="$TEST_CASES net_stress.ipsec_tcp";; U) TEST_CASES="$TEST_CASES net_stress.ipsec_udp";; R) TEST_CASES="$TEST_CASES net_stress.route";; M) TEST_CASES="$TEST_CASES net_stress.multicast";; F) TEST_CASES="$TEST_CASES net.features";; f) TEST_CASES=${OPTARG} ;; V|v) VERBOSE="yes";; h) usage; exit 0 ;; *) echo "Error: invalid option..."; usage; exit 1 ;; esac done if [ "$OPTIND" -eq 1 ]; then echo "Error: option is required" usage exit 1 fi rm -f $CMDFILE for t in $TEST_CASES; do cat ${LTPROOT}/runtest/$t >> $CMDFILE done cd $TMPDIR if [ ${VERBOSE} = "yes" ]; then echo "Network parameters:" echo " - ${LHOST_IFACES} local interface (MAC address: ${LHOST_HWADDRS})" echo " - ${RHOST_IFACES} remote interface (MAC address: ${RHOST_HWADDRS})" cat $TMPDIR/network_stress.tests ${LTPROOT}/ver_linux echo "" echo ${LTPROOT}/bin/ltp-pan -e -l /tmp/netpan.log -S -a ltpnet -n ltpnet -f $CMDFILE fi ${LTPROOT}/bin/ltp-pan -e -l /tmp/netpan.log -S -a ltpnet -n ltpnet -f $CMDFILE if [ $? -eq "0" ]; then echo ltp-pan reported PASS else echo ltp-pan reported FAIL fi