1f08c3bdfSopenharmony_ci#!/bin/sh 2f08c3bdfSopenharmony_ci# SPDX-License-Identifier: GPL-2.0-or-later 3f08c3bdfSopenharmony_ci# Copyright (c) 2018-2022 Petr Vorel <pvorel@suse.cz> 4f08c3bdfSopenharmony_ci# Author: Petr Vorel <pvorel@suse.cz> 5f08c3bdfSopenharmony_ci 6f08c3bdfSopenharmony_ciCMD="${CMD:-ip}" 7f08c3bdfSopenharmony_ci 8f08c3bdfSopenharmony_ciif [ -z "$TST_SETUP" ]; then 9f08c3bdfSopenharmony_ci TST_SETUP="if_setup" 10f08c3bdfSopenharmony_ci TST_CLEANUP="${TST_CLEANUP:-netstress_cleanup}" 11f08c3bdfSopenharmony_cifi 12f08c3bdfSopenharmony_ci 13f08c3bdfSopenharmony_ciTST_TESTFUNC="test_body" 14f08c3bdfSopenharmony_ciTST_PARSE_ARGS="if_parse_args" 15f08c3bdfSopenharmony_ciTST_USAGE="if_usage" 16f08c3bdfSopenharmony_ciTST_OPTS="c:" 17f08c3bdfSopenharmony_ci 18f08c3bdfSopenharmony_ciif_usage() 19f08c3bdfSopenharmony_ci{ 20f08c3bdfSopenharmony_ci echo "-c Test command (ip, $IF_CMD)" 21f08c3bdfSopenharmony_ci} 22f08c3bdfSopenharmony_ci 23f08c3bdfSopenharmony_ciif_parse_args() 24f08c3bdfSopenharmony_ci{ 25f08c3bdfSopenharmony_ci case $1 in 26f08c3bdfSopenharmony_ci c) CMD="$2";; 27f08c3bdfSopenharmony_ci esac 28f08c3bdfSopenharmony_ci} 29f08c3bdfSopenharmony_ci 30f08c3bdfSopenharmony_ciif_setup() 31f08c3bdfSopenharmony_ci{ 32f08c3bdfSopenharmony_ci if [ "$CMD" != 'ip' -a "$CMD" != "$IF_CMD" ]; then 33f08c3bdfSopenharmony_ci tst_brk TBROK "Missing or wrong -c parameter: '$CMD', use 'ip' or '$IF_CMD'" 34f08c3bdfSopenharmony_ci fi 35f08c3bdfSopenharmony_ci 36f08c3bdfSopenharmony_ci tst_require_cmds "$CMD" 37f08c3bdfSopenharmony_ci netstress_setup 38f08c3bdfSopenharmony_ci} 39f08c3bdfSopenharmony_ci 40f08c3bdfSopenharmony_ciif_cleanup_restore() 41f08c3bdfSopenharmony_ci{ 42f08c3bdfSopenharmony_ci netstress_cleanup 43f08c3bdfSopenharmony_ci restore_ipaddr 44f08c3bdfSopenharmony_ci restore_ipaddr rhost 45f08c3bdfSopenharmony_ci} 46f08c3bdfSopenharmony_ci 47f08c3bdfSopenharmony_ci. tst_net_stress.sh 48