From 10abcf77cc24dfae451d96310b4391dad35906ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Frings-F=C3=BCrst?= Date: Tue, 20 Mar 2018 06:14:49 +0100 Subject: New upstream version 6.8.1 --- contributed/libfuzzer-onig.cpp | 18 +++++++++++++++--- contributed/makefile | 22 ++++++++++++++++++++++ 2 files changed, 37 insertions(+), 3 deletions(-) create mode 100644 contributed/makefile (limited to 'contributed') diff --git a/contributed/libfuzzer-onig.cpp b/contributed/libfuzzer-onig.cpp index 984110d..dcd7c63 100644 --- a/contributed/libfuzzer-onig.cpp +++ b/contributed/libfuzzer-onig.cpp @@ -23,9 +23,21 @@ http://llvm.org/docs/LibFuzzer.html extern "C" int LLVMFuzzerTestOneInput(const uint8_t * Data, size_t Size) { regex_t *reg; - if (onig_new - (®, Data, Data + Size, ONIG_OPTION_DEFAULT, ONIG_ENCODING_UTF8, - ONIG_SYNTAX_DEFAULT, 0) == 0) + OnigEncoding enc; + + enc = ONIG_ENCODING_UTF8; + +#ifdef FULL_TEST + onig_initialize(&enc, 1); +#endif + + if (onig_new(®, Data, Data + Size, ONIG_OPTION_DEFAULT, enc, + ONIG_SYNTAX_DEFAULT, 0) == 0) onig_free(reg); + +#ifdef FULL_TEST + onig_end(); +#endif + return 0; } diff --git a/contributed/makefile b/contributed/makefile new file mode 100644 index 0000000..c50ab36 --- /dev/null +++ b/contributed/makefile @@ -0,0 +1,22 @@ + +ONIG_LIB=../src/.libs/libonig.a +LIBS=$(ONIG_LIB) /usr/local/lib/libLLVMFuzzerMain.a + +TARGETS=libfuzzer-onig libfuzzer-onig-full + +default: $(TARGETS) + +libfuzzer-onig: libfuzzer-onig.cpp $(ONIG_LIB) + clang++ $< $(LIBS) -o $@ -fsanitize-coverage=trace-pc-guard -fsanitize=fuzzer,address + +libfuzzer-onig-full: libfuzzer-onig.cpp $(ONIG_LIB) + clang++ -DFULL_TEST $< $(LIBS) -o $@ -fsanitize-coverage=trace-pc-guard -fsanitize=fuzzer,address + + +$(ONIG_LIB): + cd ..; ./configure CC=clang LD=clang CFLAGS="-g -fsanitize=fuzzer,address" LDFLAGS="-fsanitize-coverage=trace-pc-guard -fsanitize=fuzzer,address"; make + + + +clean: + rm -f $(TARGETS) -- cgit v1.2.3