1#!/bin/sh 2# 3# A program to act as a test harness for the mctest program 4# 5# $FreeBSD$ 6# 7# Defaults 8size=1024 9number=100 10base=9999 11group="239.255.255.101" 12interface="cxgb0" 13remote="ssh" 14command="/zoo/tank/users/gnn/svn/Projects/head-exar/src/tools/tools/mctest/mctest" 15gap=1000 16 17# Arguments are s (size), g (group), n (number), and c (command) followed 18# by a set of hostnames. 19args=`getopt s:g:n:c:l:f:b: $*` 20if [ $? != 0 ] 21then 22 echo 'Usage: mctest_run -l local_interface -f foreign_interface -s size -g group -n number -c remote command host1 host2 hostN' 23 exit 2 24fi 25set == $args 26count=0 27for i 28do 29 case "$i" 30 in 31 -s) 32 size=$3; 33 shift 2;; 34 -n) 35 number=$3; 36 shift 2;; 37 -g) 38 group=$3; 39 shift 2;; 40 -c) 41 command=$3; 42 shift 2;; 43 -l) 44 local_interface=$3; 45 shift 2;; 46 -f) 47 foreign_interface=$3; 48 shift 2;; 49 -b) 50 base=$3; 51 shift 2;; 52 --) 53 shift; break;; 54 esac 55done 56 57# 58# Start our remote sink/reflectors 59# 60shift; 61current=0 62now=`date "+%Y%m%d%H%M"` 63for host in $* 64do 65 output=$host\_$interface\_$size\_$number\.$now 66 $remote $host $command -r -M $# -b $base -g $group -m $current -n $number -s $size -i $foreign_interface > $output & 67 sleep 1 68 current=`expr $current + 1 `; 69done 70 71# 72# Start the source/collector on this machine 73# 74$command -M $# -b $base -g $group -n $number -s $size -i $local_interface -t $gap > `uname -n`\_$size\_$number\.$now 75