diff options
author | Max Dymond <cmeister2@gmail.com> | 2019-06-28 22:48:33 (GMT) |
---|---|---|
committer | Max Dymond <cmeister2@gmail.com> | 2019-06-28 22:48:33 (GMT) |
commit | 02b5b3c242fd4131983152f0dd422429e6702923 (patch) | |
tree | d070741a691775869a155706389e7bf1b38c9e1c /ossfuzz/decompress_fuzzer.c | |
parent | 60d71dc20c5f9bb95e0b963ab6fb19212eb441a9 (diff) | |
download | lz4-02b5b3c242fd4131983152f0dd422429e6702923.zip lz4-02b5b3c242fd4131983152f0dd422429e6702923.tar.gz lz4-02b5b3c242fd4131983152f0dd422429e6702923.tar.bz2 |
Move to using C rather than C++ for compilation
Diffstat (limited to 'ossfuzz/decompress_fuzzer.c')
-rw-r--r-- | ossfuzz/decompress_fuzzer.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/ossfuzz/decompress_fuzzer.c b/ossfuzz/decompress_fuzzer.c new file mode 100644 index 0000000..1fa2b1a --- /dev/null +++ b/ossfuzz/decompress_fuzzer.c @@ -0,0 +1,28 @@ +#include <stddef.h> +#include <stdint.h> +#include <stdlib.h> +#include "lz4.h" + +#define CHECK(COND) if (!(COND)) { abort(); } + +int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) +{ + size_t const buffer_size = 10 * 1024 * 1024; + char *const dest_buffer = (char *)malloc(buffer_size); + + if (dest_buffer != NULL) + { + // Allocation succeeded, try decompressing the incoming data. + int result = LZ4_decompress_safe((const char*)data, + dest_buffer, + size, + buffer_size); + + // Ignore the result of decompression. + (void)result; + + free(dest_buffer); + } + + return 0; +} |