]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Add explicit support of OSS-Fuzz
authorOndřej Surý <ondrej@isc.org>
Wed, 12 Aug 2020 19:06:26 +0000 (21:06 +0200)
committerOndřej Surý <ondrej@isc.org>
Wed, 12 Aug 2020 19:58:45 +0000 (21:58 +0200)
The --enable-fuzzing option now allows third choice "ossfuzz" that just
adds $LIB_FUZZING_ENGINE to FUZZ_LDFLAGS to make the fuzzer builds
compatible with OSS-Fuzz project that has some special quirks (the
main() routine is provided in the static library the project provides).

configure.ac

index 5f8d2b42412c35a90e1021187306034d61c2449d..edc3eefbcf689dcef4440e6908b44796170e9ba1 100644 (file)
@@ -200,7 +200,7 @@ AC_ARG_ENABLE(buffer_useinline,
              AC_DEFINE([ISC_BUFFER_USEINLINE], [1]))
 
 AC_ARG_ENABLE([fuzzing],
-             [AS_HELP_STRING([--enable-fuzzing=<afl|libfuzzer>],
+             [AS_HELP_STRING([--enable-fuzzing=<afl|libfuzzer|ossfuzz>],
                              [Enable fuzzing using American Fuzzy Lop or libFuzzer (default=no)])],
              [],
              [enable_fuzzing=no])
@@ -220,6 +220,9 @@ AS_CASE([$enable_fuzzing],
          LDFLAGS="$LDFLAGS -fsanitize=address,undefined"
          FUZZ_LDFLAGS="-fsanitize=fuzzer,address,undefined"
          FUZZ_LOG_COMPILER="libfuzzer.sh"],
+       [ossfuzz],[
+           AC_MSG_RESULT([using OSS-Fuzz])
+           FUZZ_LDFLAGS="$LIB_FUZZING_ENGINE"],
        [*],[AC_MSG_ERROR([You need to explicitly select the fuzzer])])
 AM_CONDITIONAL([HAVE_FUZZ_LOG_COMPILER], [test -n "$FUZZ_LOG_COMPILER"])
 AC_SUBST([FUZZ_LOG_COMPILER])