From 8c62fa9121eacf5cde1ed59bf0cca896227a44d5 Mon Sep 17 00:00:00 2001 From: Arseny Kapoulkine Date: Wed, 8 Feb 2017 08:48:54 -0800 Subject: tests: Add XPath fuzzing Only fuzz the parser for now. --- tests/fuzz_xpath.cpp | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 tests/fuzz_xpath.cpp (limited to 'tests/fuzz_xpath.cpp') diff --git a/tests/fuzz_xpath.cpp b/tests/fuzz_xpath.cpp new file mode 100644 index 0000000..c7ff4cd --- /dev/null +++ b/tests/fuzz_xpath.cpp @@ -0,0 +1,26 @@ +#include "../src/pugixml.hpp" + +#include +#include + +extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) +{ + char* text = new char[Size + 1]; + memcpy(text, Data, Size); + text[Size] = 0; + +#ifdef PUGIXML_NO_EXCEPTIONS + pugi::xpath_query q(text); +#else + try + { + pugi::xpath_query q(text); + } + catch (pugi::xpath_exception&) + { + } +#endif + + delete[] text; + return 0; +} -- cgit v1.2.3