Home | History | Annotate | Download | only in ping
      1 #! /bin/sh
      2 # Copyright (c) 2016 Oracle and/or its affiliates. All Rights Reserved.
      3 #
      4 # This program is free software; you can redistribute it and/or
      5 # modify it under the terms of the GNU General Public License as
      6 # published by the Free Software Foundation; either version 2 of
      7 # the License, or (at your option) any later version.
      8 #
      9 # This program is distributed in the hope that it would be useful,
     10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
     11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     12 # GNU General Public License for more details.
     13 #
     14 # You should have received a copy of the GNU General Public License
     15 # along with this program. If not, see <http://www.gnu.org/licenses/>.
     16 
     17 TST_TOTAL=10
     18 TCID="ping02"
     19 
     20 TST_USE_LEGACY_API=1
     21 . tst_net.sh
     22 
     23 do_setup()
     24 {
     25 	COUNT=${COUNT:-3}
     26 	PACKETSIZES=${PACKETSIZES:-"8 16 32 64 128 256 512 1024 2048 4064"}
     27 
     28 	PING=ping${TST_IPV6}
     29 
     30 	tst_test_cmds $PING
     31 }
     32 
     33 do_test()
     34 {
     35 	local pat="000102030405060708090a0b0c0d0e0f"
     36 
     37 	tst_resm TINFO "flood $PING: ICMP packets filled with pattern '$pat'"
     38 
     39 	local ipaddr=$(tst_ipaddr rhost)
     40 	for psize in $PACKETSIZES; do
     41 		EXPECT_PASS $PING -c $COUNT -f -s $psize $ipaddr -p "$pat" \>/dev/null
     42 	done
     43 }
     44 
     45 do_setup
     46 do_test
     47 
     48 tst_exit
     49