diff options
author | Jay Berkenbilt <ejb@ql.org> | 2019-06-13 15:28:38 +0200 |
---|---|---|
committer | Jay Berkenbilt <ejb@ql.org> | 2019-06-13 15:28:38 +0200 |
commit | 3d03024ab235cf09517b8b1125093a9062151da2 (patch) | |
tree | c67ed01909153d996e3a14411c9f2141cb3f3ed2 /fuzz/qpdf_read_memory_fuzzer.cc | |
parent | d263a0493add9ea4bd6b7dae129cfc79b3108067 (diff) | |
download | qpdf-3d03024ab235cf09517b8b1125093a9062151da2.tar.zst |
oss-fuzz initial integration
Diffstat (limited to 'fuzz/qpdf_read_memory_fuzzer.cc')
-rw-r--r-- | fuzz/qpdf_read_memory_fuzzer.cc | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/fuzz/qpdf_read_memory_fuzzer.cc b/fuzz/qpdf_read_memory_fuzzer.cc new file mode 100644 index 00000000..d4db62b0 --- /dev/null +++ b/fuzz/qpdf_read_memory_fuzzer.cc @@ -0,0 +1,15 @@ +#include "qpdf/qpdf-c.h" + +#include <algorithm> +#include <cstddef> +#include <cstdlib> + +extern "C" int LLVMFuzzerTestOneInput(const unsigned char* data, size_t size) { + const size_t kMaxSize = 64 * 1024; // 64 KiB + size = std::min(size, kMaxSize); + _qpdf_data* qpdf = qpdf_init(); + const char* buffer = reinterpret_cast<const char*>(data); + qpdf_read_memory(qpdf, /*description=*/"", buffer, size, /*password=*/""); + qpdf_cleanup(&qpdf); + return 0; +} |