"Fossies" - the Fresh Open Source Software Archive

Member "adns-1.5.1/regress/m1test" (12 Aug 2016, 2516 Bytes) of package /linux/misc/dns/adns-1.5.1.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Bash source code syntax highlighting (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. See also the latest Fossies "Diffs" side-by-side code changes report for "m1test": 1.5.0_vs_1.5.1.

    1 #!/bin/bash
    2 # usage: m1test <name> <initfile> [<initflags>] <queryargs>'
    3 # test recording script
    4 #
    5 #  This file is part of adns, which is
    6 #    Copyright (C) 1997-2000,2003,2006,2014-2016  Ian Jackson
    7 #    Copyright (C) 2014  Mark Wooding
    8 #    Copyright (C) 1999-2000,2003,2006  Tony Finch
    9 #    Copyright (C) 1991 Massachusetts Institute of Technology
   10 #  (See the file INSTALL for full details.)
   11 #  
   12 #  This program is free software; you can redistribute it and/or modify
   13 #  it under the terms of the GNU General Public License as published by
   14 #  the Free Software Foundation; either version 3, or (at your option)
   15 #  any later version.
   16 #  
   17 #  This program is distributed in the hope that it will be useful,
   18 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
   19 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   20 #  GNU General Public License for more details.
   21 #  
   22 #  You should have received a copy of the GNU General Public License
   23 #  along with this program; if not, write to the Free Software Foundation.
   24 
   25 set -e
   26 
   27 : ${srcdir=.}
   28 if [ $# -lt 3 ]
   29 then
   30     echo >&2 \
   31 'usage: m1test <name> <initfile> [-<initflags>] ["<"]
   32               [=<hrecord-command-args>] <queryargs>
   33 ("<" means read input from case-<name>.in)'
   34     exit 1
   35 fi
   36 
   37 case="$srcdir/case-$1"; shift
   38 initfile="$1"; shift
   39 
   40 hrecord="./adnstest_record"
   41 
   42 case "$1" in
   43 -*) initflags="$1"; shift
   44 esac
   45 
   46 if test "x$1" = "x<"
   47 then
   48     shift; exec <"$case.in"
   49 fi
   50 
   51 case "$1" in
   52 =*) hrecord="`echo \"$1\" | sed -e 's/^=//'`"; shift
   53 esac
   54 
   55 if test ! -f "$hrecord" -a -f "${hrecord}_record"
   56 then
   57     case "$hrecord" in
   58     /*) program="$hrecord"  ;;
   59     *)  program="./$hrecord"    ;;
   60     esac
   61     hrecord="${program}_record"
   62 else
   63     program="$(echo "$hrecord" | sed -e 's/ .*//; s/_record$//')"
   64 fi
   65 
   66 queryargs="$*"
   67 
   68 initstring="`cat $srcdir/init-$initfile.text`"
   69 xinitflagsf=$srcdir/$program-xinitflags.text
   70 if test -f $xinitflagsf
   71 then
   72     useinitflags="$initflags $(cat $xinitflagsf)";
   73 else
   74     useinitflags="$initflags /"
   75 fi
   76 
   77 echo $program $initfile $initflags >"$case.sys"
   78 echo "$queryargs" >>"$case.sys"
   79 
   80 EF_DISABLE_BANNER=1
   81 export EF_DISABLE_BANNER
   82 
   83 rm -f pipe.out pipe.err
   84 mknod pipe.out p
   85 mknod pipe.err p
   86 tee <pipe.out "$case.out" &
   87 tee_out=$!
   88 tee <pipe.err "$case.err" &
   89 tee_err=$!
   90 exec 4>pipe.out
   91 exec 5>pipe.err
   92 
   93 echo running hrecord $initflags "... $queryargs"
   94 set +e
   95 ADNS_TEST_OUT_FD=3 3>>"$case.sys" >&4 2>&5 \
   96  $hrecord $useinitflags"$initstring" $queryargs
   97 rc=$?
   98 set -e
   99 
  100 echo "rc=$rc" >&4
  101 exec 4>&-
  102 exec 5>&-
  103 
  104 wait $tee_out
  105 wait $tee_err
  106 
  107 echo "exit status: $rc"