chiark / gitweb /
regress: hmacros.i4: Provide hm_rv_* in hm_create_nothing
[adns.git] / regress / make1fuzz
1 #!/bin/sh
2 set -e
3
4 : ${srcdir=.}
5 . "$srcdir"/shlib
6
7 casename="$1"
8
9 playback_prepare
10
11 ofuzz="fuzz-$casename"
12 ofuzzraw="fuzzraw-$casename"
13
14 rm -f "$ofuzz.tmp"
15 rm -f "$ofuzzraw.tmp"
16 exec >"$ofuzz.tmp"
17 exec 6>"$ofuzzraw.tmp"
18
19 fuzzout_complete () {
20         mv "$ofuzz.tmp" "$ofuzz"
21         mv "$ofuzzraw.tmp" "$ofuzzraw"
22         exit 0
23 }
24
25 if test ! -e $playback; then
26         echo 0
27         echo 0 >&6
28         fuzzout_complete
29 fi
30
31 dump_args () {
32         set "${program}_fuzz" "$@"
33
34         printf "%d\n" "$#"
35         for a in "$@"; do
36                 printf "%d\n" "${#a}"
37                 printf "%s\n" "$a"
38         done
39
40         if test -e "$case.in"
41         then
42                 inputsz=$(stat -c'%s' -L "$case.in")
43                 printf "%d\n" "$inputsz"
44                 cat "$case.in"
45         else
46                 echo 0
47         fi
48
49         echo
50 }       
51
52 playback_execute_hook () {
53         dump_args "$@"
54         dump_args "$@" >&6
55         cat <&4 >"$ofuzz.sys.tmp"
56         exec 4<$ofuzz.sys.tmp
57         ADNS_TEST_FUZZRAW_DUMP_FD=6
58         export ADNS_TEST_FUZZRAW_DUMP_FD
59 }
60 playback_execute
61
62 cat $ofuzz.sys.tmp
63
64 fuzzout_complete