[tor-commits] [tor/master] Addition to test cases: make sure fuzzer binaries allow known cases

nickm at torproject.org nickm at torproject.org
Mon Jan 30 13:45:47 UTC 2017


commit 3c748559343b98f1dd37a0f49bd1e179715bf511
Author: Nick Mathewson <nickm at torproject.org>
Date:   Wed Dec 14 15:57:22 2016 -0500

    Addition to test cases: make sure fuzzer binaries allow known cases
    
    This isn't fuzzing per se, so much as replaying the highlights of
    past fuzzer runs.
---
 src/test/fuzz/include.am          |  5 +++--
 src/test/fuzz_static_testcases.sh | 15 +++++++++++++++
 src/test/include.am               |  4 +++-
 3 files changed, 21 insertions(+), 3 deletions(-)

diff --git a/src/test/fuzz/include.am b/src/test/fuzz/include.am
index 7f41318..16e5d30 100644
--- a/src/test/fuzz/include.am
+++ b/src/test/fuzz/include.am
@@ -52,6 +52,7 @@ FUZZERS = \
 	src/test/fuzz/fuzz-extrainfo \
 	src/test/fuzz/fuzz-http
 
-# The fuzzers aren't built by default right now. That should change.
-EXTRA_PROGRAMS += $(FUZZERS)
+noinst_PROGRAMS += $(FUZZERS)
 fuzzers: $(FUZZERS)
+
+
diff --git a/src/test/fuzz_static_testcases.sh b/src/test/fuzz_static_testcases.sh
new file mode 100755
index 0000000..276bc6e
--- /dev/null
+++ b/src/test/fuzz_static_testcases.sh
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+# Copyright (c) 2016, The Tor Project, Inc.
+# See LICENSE for licensing information
+
+set -e
+
+for fuzzer in "${builddir:-.}"/src/test/fuzz/fuzz-* ; do
+    f=`basename $fuzzer`
+    case="${f#fuzz-}"
+    echo "Running tests for ${case}"
+    for entry in ${abs_top_srcdir:-.}/src/test/fuzz/data/${case}/*; do
+	"${fuzzer}" "--err" < "$entry"
+    done
+done
diff --git a/src/test/include.am b/src/test/include.am
index d406d6d..9f30443 100644
--- a/src/test/include.am
+++ b/src/test/include.am
@@ -8,7 +8,9 @@ TESTS_ENVIRONMENT = \
 	export builddir="$(builddir)"; \
 	export TESTING_TOR_BINARY="$(TESTING_TOR_BINARY)";
 
-TESTSCRIPTS = src/test/test_zero_length_keys.sh \
+TESTSCRIPTS = \
+	src/test/fuzz_static_testcases.sh \
+	src/test/test_zero_length_keys.sh \
 	src/test/test_workqueue_cancel.sh \
 	src/test/test_workqueue_efd.sh \
 	src/test/test_workqueue_efd2.sh \





More information about the tor-commits mailing list