Commit Graph

9 Commits

Author SHA1 Message Date
Max Moroz 71f4914c45
[presubmit] Enforce language attribute in project.yaml to be always set. (#3477)
* [presubmit] Enforce language attribute in projectt.yaml to be always set.

* Update documentation, better presubmit check, new project template.

* add docstring to templates.py

* Add example values in the project.yaml template and remove python value for now

* Add "project: c++" to 256 projects

* format

* Add labels and selective_unpack sections to the presubmit check

* fix incorrect auto_ccs format in three projects

* fix nss emails after rebase
2020-03-10 11:08:01 -07:00
Thomas Orgis 356f2b9476 mpg123: limit fuzzer runtime (#2832)
* mpg123: limit runtime of decode_fuzzer

To avoid spurious timeout reports, the test shall end after 10000 MPEG frames
or 1 MiB of data, which should both be reasonable numbers. The timeout
report motivating this had 500K with 140k bad frames. The limit of
10000 frames corresponds to a normal radio song as MP3 stream.

* mpg123: limit runtime of read_fuzzer

This applies the same logic as the decode fuzzer: stop decoding after
10000 MPEG frames or 1 MiB of input data. We could debate a bigger
limit on the data size, but we do want compact testcases, right?
2019-09-16 07:06:25 -07:00
Max Moroz 227ee9f107
[mpg123] Use FuzzedDataProvider instead of byte_stream. (#2810) 2019-09-06 09:47:12 -07:00
Thomas Orgis 0a100f4c1c [mpg123] silence library error messages (#2642)
* mpg123/read_fuzzer: disable error messages from libmpg123

This shall remove any error messages libmpg123 prints out during fuzzing,
leaving only the crash trace at the inevitable end.
2019-07-31 12:57:00 -07:00
Abhishek Arya eaa2256571
Add maintainer contact for mpg123. (#2604) 2019-07-15 08:49:11 -07:00
jonathanmetzman 3049c50d48
Migrate projects using -lFuzzingEngine to $LIB_FUZZING_ENGINE (#2325)
Migrate from -lFuzzingEngine to $LIB_FUZZING_ENGINE where possible and not causing breakage
2019-05-01 11:09:55 -04:00
Markus Kusano 2ae303bc3b Add mpg123_decode fuzzer (#2037)
* Add fuzzer for mpg123_decode.

This fuzzes a different and non-filebased API that read_fuzzer.c.
mpg123_decode is, however, streaming based so we need to chunk the
fuzzer's input into multiple pieces, and pass them to the library. This
is pretty annoying to do by hand so I've introduced byte_stream.h to do
this automatically. Sadly, byte_stream.h is very C++ so the
decode_fuzzer is also C++ now. This isn't ideal since mpg123 is a
C library but this is the easiest way to do it.

* Do not carry next input within std::string.

* Malloc a new buffer for each decode invocation.

I used malloc instead of new since ideally this fuzz target would be
written in C.
2018-12-21 11:20:00 -08:00
Markus Kusano 326bcc9df1 Use experimental mode in mpg123. (#2036) 2018-12-18 14:27:10 -08:00
Markus Kusano 135eb87731 [mpg123] Integrate project along with a fuzz target. (#2032)
* Integrate mpg123 along with a fuzz target.
2018-12-18 11:04:32 -08:00