mirror of https://github.com/google/oss-fuzz.git
pycparser: generalise fuzzer and add corpus (#9323)
Signed-off-by: David Korczynski <david@adalogics.com> Signed-off-by: David Korczynski <david@adalogics.com>
This commit is contained in:
parent
936463cc61
commit
7b63e429f2
|
@ -20,3 +20,5 @@ pip3 install .
|
|||
for fuzzer in $(find $SRC -name 'fuzz_*.py'); do
|
||||
compile_python_fuzzer $fuzzer
|
||||
done
|
||||
|
||||
zip $OUT/fuzz_c_parser_seed_corpus.zip ./tests/c_files/*.c
|
||||
|
|
|
@ -23,13 +23,14 @@ pysecsan.add_hooks()
|
|||
|
||||
def TestOneInput(data):
|
||||
fdp = atheris.FuzzedDataProvider(data)
|
||||
c_source = fdp.ConsumeUnicodeNoSurrogates(sys.maxsize)
|
||||
_c_parser = pycparser.c_parser.CParser(
|
||||
lex_optimize=False,
|
||||
yacc_debug=False,
|
||||
yacc_optimize=False)
|
||||
lex_optimize=fdp.ConsumeBool(),
|
||||
yacc_debug=fdp.ConsumeBool(),
|
||||
yacc_optimize=fdp.ConsumeBool())
|
||||
try:
|
||||
_c_parser.parse(
|
||||
fdp.ConsumeUnicodeNoSurrogates(1024),
|
||||
c_source,
|
||||
''
|
||||
)
|
||||
except pycparser.c_parser.ParseError:
|
||||
|
|
Loading…
Reference in New Issue