In PR #7687 I tried to add a define by adding it to CFLAGS, but that
didn't work without rerunning configure. By adding the define to
config.h, rerunning configure is not necessary
* bad_example: make fuzz-introspector work and fix build
Makes fuzz-introspector work with the bad_example project. This was
brought up as an issue on the fuzz-introspector repo.
Ref: https://github.com/ossf/fuzz-introspector/issues/257
* Add license to satisfy OSS-Fuzz
* add license to build.sh
The current implementation will append rather than overwrite
coverage_wrapper.py which holds the coverage stub. The effect of the
appending is that the coverage_wrapper.py will include X amount of
coverage stubs when a project has X amount of fuzzers. We just need a
single coverage stub at the top of each fuzzer. This ensure we only add
a single coverage stub.
The current run_fuzzer will fail when multiple libfuzzer options are
specificed in a .options file. Currently, if there are multiple options
then none of the options will be used, but rather an issue about a
"binary operator expected" will occur. One implication of this is that
check_build fails to use it and may, therefore, report erroneously. This
fixes it by enabling the use of zero, one and many libfuzzer options.
This generated dictionary consists of keywords and significant punctuation.
It's useful for fuzzers were inputs are C/C++/ObjC source code.
See https://reviews.llvm.org/D125166
clang-pseudo-fuzzer fuzzes clang-pseudo, which is a heuristic parser
based on clang's lexer.
This is a new effort and we'd like to keep it fuzz-clean from the beginning.
oss-fuzz has reported numerous signed integer overflow problems
in flac that cannot be reasonably fixed. The problem is that
flac uses some math that is numerically unstable when fed with
random data, and as these are only audio samples, this overflow
is not a problem. Therefore, I added
`__attribute__((no_sanitize("signed-integer-overflow")))` to a few
functions in the flac sources.
However, while a decoder fed with random data has this problem,
an decoder that is being used to verify an encoder fed with random
data should never overflow. As the same functions are used, the
flac sources should be compiled twice: once with the mentioned
attributes for the decoder fuzzers, and once without them for the
encoder fuzzers.
Note that the define passed in this code is not yet integrated in
libflac, but this change should happen first or else the old
bugs appear again