#!/usr/bin/perl $debug = 0; system("mkdir -p NEW DIFF"); if(@ARGV == 1) { open(TESTLIST, "TESTLIST") || die "can not open TESTLIST: $!\n"; $wanted = $ARGV[0]; #print "Searching for test case $wanted\n"; while() { #print "Processing $_\n"; next unless (/^$wanted/); chop; ($name,$input,$output,$options)=split(/\s+/,$_, 4); last; } close(TESTLIST); die "Can not find test $wanted\n" unless defined($input); } elsif(@ARGV == 4) { $name=$ARGV[0]; $input=$ARGV[1]; $output=$ARGV[2]; $options=$ARGV[3]; } else { print "Usage: TESTonce name [input output options]\n"; exit 20; } print "Running $name. \n" if $debug; print " Input: $input, OUTPUT: $output, OPTIONS: $options\n" if $debug; print " "; exec("../tcpdump 2>/dev/null -n -r $input $options | tee NEW/$output | diff -w - $output >DIFF/$output.diff"); @cores = glob("core*"); exit 10 if (@cores > 0); exit 0;