Update travis config for fuzzer builds
This commit is contained in:
11
.travis.yml
11
.travis.yml
@@ -70,9 +70,16 @@ install:
|
||||
|
||||
before_script:
|
||||
- mkdir -p build && cd build
|
||||
- cmake .. -G Ninja -DCMAKE_BUILD_TYPE=$BUILD_TYPE
|
||||
- if [ "$CXX" = "clang++-8"; then
|
||||
# Build UBSan binary
|
||||
export CXXFLAGS="-fsanitize=undefined -fsanitize-coverage=bb,trace-pc-guard";
|
||||
cmake .. -G Ninja -DCMAKE_BUILD_TYPE=$BUILD_TYPE
|
||||
-DSNAPPY_REQUIRE_${CPU_LEVEL}=ON
|
||||
-DSNAPPY_BUILD_FUZZERS=ON
|
||||
-DSNAPPY_BUILD_FUZZERS=ON;
|
||||
else
|
||||
cmake .. -G Ninja -DCMAKE_BUILD_TYPE=$BUILD_TYPE
|
||||
-DSNAPPY_REQUIRE_${CPU_LEVEL}=ON;
|
||||
fi
|
||||
- cmake --build .
|
||||
- cd ..
|
||||
|
||||
|
||||
@@ -53,14 +53,14 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size)
|
||||
assert(compressed_len == compressed_out.size());
|
||||
assert(compressed_len <= snappy::MaxCompressedLength(input.size()));
|
||||
assert(snappy::IsValidCompressedBuffer(
|
||||
compressed_out.data(),
|
||||
compressed_out.size()));
|
||||
compressed_out.data(),
|
||||
compressed_out.size()));
|
||||
|
||||
size_t uncompressed_len = 0;
|
||||
bool getcomp_len_success = snappy::GetUncompressedLength(
|
||||
compressed_out.data(),
|
||||
compressed_out.size(),
|
||||
&uncompressed_len);
|
||||
compressed_out.data(),
|
||||
compressed_out.size(),
|
||||
&uncompressed_len);
|
||||
// Check that GetUncompressedLength() does not return a very large
|
||||
// value (1 MB) on success.
|
||||
assert(!getcomp_len_success || uncompressed_len < (1 << 20));
|
||||
@@ -68,9 +68,9 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size)
|
||||
// Uncompress
|
||||
string uncompressed_out;
|
||||
bool uncompress_success = snappy::Uncompress(
|
||||
compressed_out.data(),
|
||||
compressed_out.size(),
|
||||
&uncompressed_out);
|
||||
compressed_out.data(),
|
||||
compressed_out.size(),
|
||||
&uncompressed_out);
|
||||
|
||||
assert(uncompress_success);
|
||||
assert(input == uncompressed_out);
|
||||
|
||||
@@ -45,9 +45,9 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size)
|
||||
|
||||
size_t uncompressed_len = 0;
|
||||
bool getcomp_len_success = snappy::GetUncompressedLength(
|
||||
input.data(),
|
||||
input.size(),
|
||||
&uncompressed_len);
|
||||
input.data(),
|
||||
input.size(),
|
||||
&uncompressed_len);
|
||||
// Check that GetUncompressedLength() does not return a very large
|
||||
// value (1 MB) on success.
|
||||
assert(!getcomp_len_success || uncompressed_len < (1 << 20));
|
||||
@@ -55,9 +55,9 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size)
|
||||
// Uncompress
|
||||
string uncompressed_out;
|
||||
bool uncompress_success = snappy::Uncompress(
|
||||
input.data(),
|
||||
input.size(),
|
||||
&uncompressed_out);
|
||||
input.data(),
|
||||
input.size(),
|
||||
&uncompressed_out);
|
||||
|
||||
assert(uncompress_success);
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user