diff options
| author | hamzeh <hamzeh@google.com> | 2019-09-25 11:00:31 -0700 |
|---|---|---|
| committer | hamzeh <hamzeh@google.com> | 2019-09-25 13:27:52 -0700 |
| commit | 042366268ebc6d06255c70e3162c731d382d1e67 (patch) | |
| tree | 6d85eec9a73f27797d9582be3e4e8e993cb8e16f /libsparse/sparse_fuzzer.cpp | |
| parent | 81e56a69afca2ccd25453128a324dc44f070a95b (diff) | |
Add fuzzer for libsparse
Bug: 141129284
Test: SANITIZE_TARGET="hwaddress fuzzer' make libsparse_fuzzer
Change-Id: I54e19d399f7ea29a45734f1ddc520ceec56add09
Diffstat (limited to 'libsparse/sparse_fuzzer.cpp')
| -rw-r--r-- | libsparse/sparse_fuzzer.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/libsparse/sparse_fuzzer.cpp b/libsparse/sparse_fuzzer.cpp new file mode 100644 index 0000000000..42f331fc3b --- /dev/null +++ b/libsparse/sparse_fuzzer.cpp @@ -0,0 +1,16 @@ +#include "include/sparse/sparse.h" + +extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { + if (size < 2 * sizeof(wchar_t)) return 0; + + int64_t blocksize = 4096; + struct sparse_file* file = sparse_file_new(size, blocksize); + if (!file) { + return 0; + } + + unsigned int block = 1; + sparse_file_add_data(file, &data, size, block); + sparse_file_destroy(file); + return 0; +} |
