chiark / gitweb /
Fix typo in changelog entry for 1.6.1
[adns.git] / regress / Makefile.in
index 36ff10f071e92825e2f5d4637db0202a1038099e..eb63a20442521eaa3678811aaae44cd782d63af6 100644 (file)
@@ -1,11 +1,7 @@
 # regress/Makefile[.in] - regression test Makefile
 # 
-#  This file is part of adns, which is
-#    Copyright (C) 1997-2000,2003,2006,2014-2016,2020  Ian Jackson
-#    Copyright (C) 2014  Mark Wooding
-#    Copyright (C) 1999-2000,2003,2006  Tony Finch
-#    Copyright (C) 1991 Massachusetts Institute of Technology
-#  (See the file INSTALL for full details.)
+#  This file is part of adns, which is Copyright Ian Jackson
+#  and contributors (see the file INSTALL for full details).
 #  
 #  This program is free software; you can redistribute it and/or modify
 #  it under the terms of the GNU General Public License as published by
@@ -34,6 +30,7 @@ include               $(srcdir)/../src/adns.make
 DIRCFLAGS=     -I../src -I$(srcdir) -I$(srcdir)/../src
 
 HCPPFLAGS=     -DADNS_REGRESS_TEST -I.
+#HCPPFLAGS+=   -DFUZZRAW_SYNC
 
 REDIRLIBOBJS=  $(addsuffix _d.o, $(basename $(LIBOBJS)))
 HARNLOBJS=     hcommon.o $(REDIRLIBOBJS)
@@ -54,14 +51,24 @@ check:              $(TARGETS) $(addprefix check-,$(ALL_TESTS))
                @echo
                @echo 'all tests passed or maybe skipped.'
 
-checkfuzz:     $(TARGETS) $(addprefix checkfuzz-,$(ALL_TESTS))
+checkfuzz:             $(TARGETS) \
+                       $(addprefix checkfuzz-,$(ALL_TESTS)) \
+                       $(addprefix checkfuzzraw-,$(ALL_TESTS))
                @echo
                @echo 'all fuzzes passed or maybe skipped.'
 # this target is mostly useful as prep work for running the fuzzer;
 # it doesn't really test any of adns
 
 fuzzcat.d:     checkfuzz
-               $(srcdir)/categorizefuzz $(ALL_TESTS)
+               $(srcdir)/categorisefuzz $(ALL_TESTS)
+               perl -ne 'print $$1,"\n" while m/\"([^"% ]{2,})\"/g' \
+                       $(srcdir)/../src/*.[ch] $(srcdir)/../client/*.[ch] \
+               | sort -u >fuzzcat.d/dictionary
+               perl -p -e 'chomp;' \
+                       -e 's/[^0-9a-z-_]/sprintf "\\x%02x", ord $$&/ige;' \
+                       -e 's/^/l$$.="/; ' \
+                       -e 's/$$/"\n/;' \
+                       fuzzcat.d/dictionary >fuzzcat.d/dictionary.afl
 
 check-%:       case-%.sys
                @srcdir=$(srcdir) $(srcdir)/r1test $* || test $$? = 5
@@ -69,10 +76,15 @@ check-%:    case-%.sys
 fuzz-%:                case-%.sys $(TARGETS) make1fuzz shlib
                srcdir=$(srcdir) $(srcdir)/make1fuzz $*
 
+fuzzraw-%:     fuzz-%
+
 .PRECIOUS: fuzz-%
 
 checkfuzz-%:   fuzz-% $(TARGETS)
-               @srcdir=$(srcdir) $(srcdir)/check1fuzz $< || test $$? = 5
+               @srcdir=$(srcdir) $(srcdir)/check1fuzz $<
+
+checkfuzzraw-%:        fuzz-% $(TARGETS)
+               @srcdir=$(srcdir) $(srcdir)/check1fuzz $<
 
 LINK_CMD=      $(CC) $(LDFLAGS) $^ $(LDLIBS) -o $@
 
@@ -107,10 +119,10 @@ adnshost_fuzz:    $(ADH_OBJS) hplayback.o hfuzz.o $(HARNLOBJS)
 adnshost_fuzzraw: $(ADH_OBJS) hfuzzraw.o hfuzz.o $(HARNLOBJS)
                $(LINK_CMD)
 
-%_d.o:         $(srcdir)/../src/%.c hredirect.h
+%_d.o:         $(srcdir)/../src/%.c hredirect.h hsyscalls.h
                $(CC) $(CFLAGS) $(HCPPFLAGS) -c -g -o $@ $<
 
-%_c.o:         $(srcdir)/../client/%.c hredirect.h
+%_c.o:         $(srcdir)/../client/%.c hredirect.h hsyscalls.h
                $(CC) $(CFLAGS) $(HCPPFLAGS) -I $(srcdir)/../src -c -g -o $@ $<
 
 $(ALL_OBJS):   $(srcdir)/../src/adns.h $(srcdir)/../src/internal.h