Commit Graph

25 Commits

Author SHA1 Message Date
jonathanmetzman c158db4df2
[infra] Remove debug code breaking bad_build_check #2555 (#2557) 2019-06-30 12:52:29 -07:00
Max Moroz 5dece89e3c
[infra] Add support for dataflow builds to the helper script and build check (#1632). (#2501)
* [infra] Add support for dataflow builds to the helper script and build check (#1632).

* Update travis config file.

* Address self-review comments and specify dataflow sanitizer for zstd as well.

* Fix fuzzing_engines in project.yaml

* Fix bad build check for DFSan.

* Use "hasattr" in helper.py to check the sanitizer argument.

* Address more review comments.

* Remove DataFlow config from zstd.

* fix a typo
2019-06-12 11:08:15 -07:00
jonathanmetzman 4963f6ed93
Use AFL_DRIVER_DONT_DEFER=1 in AFL checks since bad_build_check doesn't support .options (#2471) 2019-05-28 10:29:16 -07:00
jonathanmetzman 95dd538c60
[infra] Update name of check_instrumentation and error messages (#2414) 2019-05-15 10:35:06 -07:00
jonathanmetzman 8f9a3fa22b
[infra] Fix check_instrumentation in bad_build_check (#2412) 2019-05-14 10:36:48 -07:00
jonathanmetzman 3976a002af
[i386] Improve linking and bad build check (#2410)
Improve linking by copying i386 libs instead of adding `-L` to `CXXFLAGS`
Get bad_build_check working for i386 binaries and add architecture check.
2019-05-14 10:18:02 -07:00
Sebastian Pop f58939a944 fix build check for aarch64 (#2179) 2019-02-20 21:17:50 -08:00
Max Moroz 9eb9f3bb63 [infra] Follow-up fix for bad_build_check script (#1990). 2018-11-30 12:38:08 -08:00
Max Moroz 7c2f32f748
[infra] Add return value to bad_build_checks script. (#1993) 2018-11-30 11:15:51 -08:00
Evgeny Vereshchagin d2d9860ecd [infra] skip the rest of check_instrumentation if grep hasn't found anything (#1689)
When a fuzzer is seriously broken (which happens occasionally during debug),
it's unlikely to start properly let alone provide some meaningful
output. In this case, it seems reasonable to skip some checks and prevent bash
from encountering the following syntax error:
```
/usr/local/bin/bad_build_check: line 68: ((: < 100 : syntax error: operand expected (error token is "< 100 ")
```
2018-08-04 18:14:29 -07:00
Max Moroz c05848b347 [infra] Set UBSAN_CALLS_THRESHOLD_FOR_NON_UBSAN_BUILD back to 200 + add an explanation (#1542). 2018-06-20 07:54:20 -07:00
Max Moroz 52fe2acc1a [infra] Fix bad build check for UBSan since we compile engines without sanitizers now (fixes #1542). 2018-06-20 07:21:54 -07:00
Abhishek Arya 4557d57b9b
Fix typo in bad_build_check (#1432) 2018-05-20 21:21:09 -07:00
Abhishek Arya 624ea358c7
Match AFL startup crash condition with ClusterFuzz 2018-04-30 14:50:49 -07:00
Abhishek Arya 527ef4c7f0
Add AFL bad build checks (instrumentation, startup crash). (#1381)
* Add AFL bad build checks (instrumentation, startup crash).

* Fix incorrect seed corpus unpack for afl bad instrumentation, startup crash test

* Match AFL startup crash check with ClusterFuzz
2018-04-30 09:38:42 -07:00
Abhishek Arya 43fd25f26a
Add check_build command to infra/helper.py (Fix #1356) (#1379)
* Add check_build command to infra/helper.py

* Add exit message.
2018-04-29 18:44:22 -07:00
Max Moroz a51ea6df92 [infra] Temporarily disable bad build check with seed corpus. 2018-04-27 07:10:08 -07:00
Max Moroz 69ffa9bfdf
[infra] Invoke run_fuzzer from bad_build_check for regression testing (fixes #1355). (#1357)
* [infra] Invoke run_fuzzer from bad_build_check for regression testing (fixes #1355).

* Address review comments.
2018-04-26 07:17:44 -07:00
Max Moroz 4d4f867b54 [infra] Fix RegEx in bad_build_check as "coverage" builds do not have counters, only guards. 2018-04-20 09:54:54 -07:00
Max Moroz 2519639f73 [infra] Lower down THRESHOLD_FOR_NUMBER_OF_EDGES to 100 (fixes #1333). 2018-04-17 15:28:01 -07:00
Max Moroz 4df2262466
[infra] Enable bad build checks once again. (#838)
* [infra] Enable bad build checks once again.

* Minor typo.

* [bad_example] Update build flags for reproducing bad instrumentation scenario.

* [bad_example] split bad/no instrumentation case into two different ones.

* Use new approach for partial instrumentation detection + do that only for libFuzzer.

* Rename bad_example_bad_instrumentation into bad_example_partial_instrumentation.

* Calculate number of broken targets and fail if 10+% are broken.

* Multiprocess madness.

* Always run all checks and store all errors + clean up the code and add comments

* Add special handling for the projects with very small fuzz targets.

* Remove unnecessary semicolon.

* Address review comments.

* Address more review comments, small refactoring.
2018-04-17 09:31:53 -07:00
Max Moroz 7c917865b1 [infra] Disable instrumentation checks for fuzzers built with honggfuzz.
Should fix the following issues:
- https://github.com/google/oss-fuzz/issues/825
- https://github.com/google/oss-fuzz/issues/828
- https://github.com/google/oss-fuzz/issues/829
- https://github.com/google/oss-fuzz/issues/830
2017-09-08 15:03:07 -07:00
Max Moroz 4b73c4b308 [infra] Update bad_build_check to work with some edge cases. 2017-08-09 08:49:41 -07:00
Max Moroz f6a3b09305 [infra] Make bad_build_check more verbose. 2017-08-08 13:03:41 -07:00
Max Moroz f81476ca75 [infra] Add post build checks for catching and reporting bad builds + add test projects. (#754)
* [WIP] Add post build checks for catching and reporting bad builds + test projects.

* Move all type of issues into a single project. Tested all sanitizers.

* First version of the script for performing bad build checks. Still not ready to commit.\

* Added a valid example that should pass all the checks + fixed instrumentation check.

* Use SIGTERM and the handler calling _exit(0) for the startup crash case.

* Small fixes.

* Ignore startup_crash check_for fuzzing engines other than libFuzzer.

* Use "local" for local variables in the script, fix container name.

* Add COPY step for bad_build_check into base-runner Dockerfile.

* Make bad_build_check temporary noop unless EXPERIMENTAL_BAD_BUILD_CHECK is set to 1.

* Temporary remove test binaries step.

* Remove empty line.

* Remove unnecessary env variable.
2017-08-08 10:54:53 -07:00