Commit Graph

62 Commits

Author SHA1 Message Date
Leo Neat f0df2d675c
Move detect_repo.py script into /opt (#3337) 2020-02-05 11:32:37 -08:00
Leo Neat 8ffc6db00c
[Infra] CIFuzz pipeline complete. (#3281)
* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Testing action build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working build

* Working fuzzers with out error surface

* Working fuzzers with out error surface

* Working fuzzers with out error surface

* Printing std err

* Adding fuzzer timeout

* Adding fuzzer timeout

* Changing fuzzer timeout to fuzz time

* Formatting and refactoring

* Spelling in fuzz_target.py

* Spelling in fuzz_target.py

* Spelling in fuzz_target.py

* Upload artifact fix

* Upload artifact fix

* Upload artifact fix

* Upload artifact fix

* Upload artifact fix

* Upload artifact fix

* Upload artifact fix

* Refactoring error codes.

* reverting helper.py

* reverting helper.py

* reverting helper.py

* chaning method to static

* moving cifuzz file

* Jonathan changes

* Oliver and Jonathan comments

* Oliver and Jonathan comments

* Oliver and Jonathan comments

* Utils unit tests

* Test formatting and documentation

* Build fuzzer test added

* Changed repo manager errors

* Unit and integration tests complete

* Jonathan comments pt.1

* Jonathan comments pt.1

* Jonathan comments pt.1

* adding cifuzz_test

* Build fuzzer test completed

* Run fuzzers test finished.

* Removed SRC dependency

* Jonathan comments pt.2

* Max comments pt.1

* Max comments pt.2

* removing log specified out stream

* Max comments pt.3

* Adding OSS_FUZZ_HOME env var

* Jonathan comments pt.3

* Formatting

* Olivers comments

* Jonathan comments
2020-01-29 11:03:43 -08:00
Max Moroz f22c0fbaac
[infra] dataflow: use basic block coverage instead of function (#1632). (#3239) 2020-01-15 21:40:58 -08:00
Leo Neat 9532d4781a [infra] Fixing bisection to work with more OSS-Fuzz projects (#3152)
* Max comments

* Added bisection tests

* Added test cases

* Docker run command added to build_specific commit

* Infer main repo uses docker image rather than docker file

* Added mores tests for repo infer

* With verbosity

* Formatting

* Bisection fixed

* Formatting updates

* Oliver small comments.

* Script infer main repo

* Detect repo and test module finished

* Detect main repo from script

* Regex searching

* Regex searching

* Max comments + bisector test script

* Oliver comments

* Max's comments

* String concat update

* Jonathan comments
2020-01-06 12:17:26 -08:00
Abhishek Arya 43317c9327
Revert "Enable UBSan's pointer-overflow check. (#3121)" (#3123)
This reverts commit d843ee46bd.
2019-12-13 06:48:16 -08:00
mbarbella-chromium d843ee46bd
Enable UBSan's pointer-overflow check. (#3121) 2019-12-12 20:00:13 -05:00
mbarbella-chromium 3f186c0c03
Enable UBSan's object-size check. (#3120) 2019-12-12 19:56:48 -05:00
Abhishek Arya 075af21e28
Enable enum feature for UBSan (#3102) 2019-12-11 08:17:44 -08:00
Max Moroz 66e0e37939
[infra] Install LLVM binaries in base-runner using base-clang artifacts (#3067). (#3072)
* [infra] Install LLVM binaries in base-runner using base-clang artifacts (#3067).

* add one more comment and remove MAINTAINER lines from all images
2019-11-26 10:40:58 -08:00
mbarbella-chromium 48f8d5edc4 Enable UBSan builtin, null, returns-nonnull-attribute, and unreachable checks. (#3062) 2019-11-24 17:44:53 -08:00
Abhishek Arya 4985ddfcfe
Revert "Enable UBSan's builtin, null, and unreachable checks. (#3057)" (#3061)
This reverts commit 146316b705.
2019-11-22 13:27:04 -08:00
mbarbella-chromium 146316b705
Enable UBSan's builtin, null, and unreachable checks. (#3057) 2019-11-21 15:37:44 -08:00
Oliver Chang 78e191ed92
Pre-compile honggfuzz (#3045) 2019-11-20 11:04:33 +11:00
Oliver Chang ce39aeb200
Add additional build deps for honggfuzz. (#3026)
These will be statically linked into the hongfuzz binary.
2019-11-12 14:56:16 +11:00
Max Moroz b3726e9d20
[infra] Use stable version of AFL from the upstream repo. (#2767) 2019-08-27 09:53:48 -07:00
Max Moroz b33c276c0d
[infra] Update base-builder image to support go-fuzz (#2714). (#2735)
* [infra] Update base-builder image to support go-fuzz (#2714).

* address review comments
2019-08-21 11:06:59 -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 c60fcd7247
Add initial support for i386 builds (#2347)
This feature is not yet officially supported
2019-05-13 15:01:25 -07:00
jonathanmetzman ae9398deef
Change LIB_FUZZING_ENGINE to -fsanitize=fuzzer in libFuzzer builds (#2312) 2019-04-15 10:05:02 -07:00
Max Moroz 946d0603ba
[infra] Enabling DataFlow build configuration (#1632). (#2292)
* [infra] Enabling DataFlow build configuration (#1632).

* Copy all data flow scripts from the libFuzzer repo.
2019-04-09 07:25:14 -07:00
Oliver Chang 3d662e1bec
Add support for tags field in project.yaml (#1974) (#1980)
* Add support for tags field in project.yaml (#1974)

Also add "sundew" label to libxml2_xml_reader_for_file_fuzzer.

These add additional labels in filed bugs.
2018-11-27 16:46:26 +11:00
Max Moroz 66f8069ff1 [infra] Use -pthread instead of -Wl,-lpthread (fixes #1886). 2018-10-22 07:24:42 -07:00
Max Moroz 5c263869ae
[infra] Fix missing linking dependencies for coverage build (#1858). (#1863) 2018-10-09 11:04:03 -07:00
Max Moroz d39e0f7ea0 [infra] Restore srcmap binary back to base-builder image (follow-up #1848). 2018-10-01 23:13:59 -07:00
Max Moroz 7703e360de
[infra] Remove sancov and rename "profile" to "coverage". (#1839)
* [infra] Remove sancov and rename "profile" to "coverage".

* Bring coverage flags back.

* Update projects files that rely on SANITIZER="profile".
2018-10-01 06:43:21 -07:00
Max Moroz 3c6e2bc79a [infra] Bring -ldl flag back and suppress warning messages (follow-up #1547). 2018-08-20 10:56:51 -07:00
Max Moroz 137bc2c9de
[infra] Add UBSAN_OPTIONS=\"silence_unsigned_overflow=1\" to base-builder image (#1715). (#1717) 2018-08-15 15:36:37 -07:00
Max Moroz 0fe45f59a7
[infra] Re-enable UIO for UBSan in a non-faulting mode (#910). (#1690) 2018-08-07 10:04:25 -07:00
Oliver Chang 2ef8e32bfa Move targets_list to base-runner. 2018-07-27 14:59:02 +10:00
Oliver Chang 60fb6a8d7b
Generate and upload targets list during build. (#1660) 2018-07-27 13:29:51 +10:00
Abhishek Arya 4e87bd622d
Revert "Add support for running perffuzz in infra/helper.py (#1540)" (#1578)
This reverts commit 7f26e2fd92.
2018-06-28 06:11:32 -07:00
Abhishek Arya 7f26e2fd92
Add support for running perffuzz in infra/helper.py (#1540)
* Add support for running perffuzz in infra/helper.py
https://github.com/carolemieux/perffuzz

* Update compile_perffuzz

* Update run_fuzzer
2018-06-19 15:02:00 -07:00
Max Moroz 20e55ce3b1
[infra] Enable clange code coverage reports generation for local runs. (#1494)
* [infra] Enable clange code coverage reports generation for local runs.

* Use runner image and move corpus management to the helper.py
.

* Clean up, delete unnecessary stuff, add comments.

* Run fuzz targets in parallel. Do not exit in case of an error.

* Address review feedback, except of the threading thing.

* Fix a typo.

* Use ThreadPool implementatino available in standard python2.7 package.

* Add dry run support + no corpus download option.

* Fix flags handling + add log output in case of an error.

* Append arguments for fuzz target instead of replacing them.

* Remove dry run functionality as it currently errors out after two runs.

* Fix some spacing in the code.

* Update documentation regarding new code coverage script.
2018-06-14 15:00:46 -07:00
Max Moroz c069a7c780 Revert of "[infra] Reland profile configuration needed for new code coverage.".
See more information in comments for PR #1050.
2017-12-28 15:10:53 -08:00
Max Moroz add7bbbb2d
[infra] Reland profile configuration needed for new code coverage. (#1050) 2017-12-28 11:10:47 -08:00
Max Moroz 6204899516
[infra] Use "-fsanitize=fuzzer-no-link" instead of coverage flags. (#975) 2017-11-14 07:32:06 -08:00
Max Moroz 5e8a407923 [infra] Remove UIO from UBSan flags as it may create a lot of noise in the logs (#910). 2017-10-28 22:34:41 -07:00
Max Moroz 2c23c20d8c
[infra] enable -fsanitize=unsigned-integer-overflow in non-faulting mode (#910). (#927) 2017-10-27 14:13:11 -07:00
Max Moroz 63a6cb31b4 [infra] Fix the check for COVERAGE_FLAGS overrides in "compile" script. (#907)
* [infra] Fix the check for COVERAGE_FLAGS overrides in "compile" script.

* Add -pthread to coverage flags ("profile" sanitizer).
2017-10-20 17:15:02 -07:00
Oliver Chang b598181e29 Don't set sanitizer coverage flags for profile builds (#891). 2017-10-13 15:23:44 -07:00
Max Moroz 6a6163110a [infra] Add another coverage build using Clang Source-based Code Coverage. (#804)
* [infra] Add another coverage build using Clang Source-based Code Coverage.

* [infra] Remove redundant compile_coverage script.
2017-08-31 13:43:06 -07:00
Oliver Chang 621b2d4153 Update Dockerfile 2017-07-24 17:56:52 -07:00
Max Moroz 3cee68fa11 [infra] Remove "null" check from UBSan options. (#674)
There is not much value for us from this particular check:
- UBSan's "null" reports leading to real crashes are reported with ASan as well.
- Potential null references are not real crashes and might be considered
  as false positives, though it seems to be UB as per the standard.
2017-06-12 10:46:53 -07:00
Abhishek Arya e999b2cbab Enable 'return' feature for UBsan (#232) 2017-06-02 17:01:55 -07:00
robertswiecki 268d8052a2 Support honggfuzz as a FUZZING_ENGINE (#636) 2017-06-01 17:55:01 -07:00
Max Moroz 04e42ac17a [infra] Use only 'array-bounds' check of UBSan's 'bounds' check (#573).
For more info: https://github.com/google/oss-fuzz/pull/573#issuecomment-300494440
2017-05-10 16:13:28 +02:00
Max Moroz 19e73d89e9 [infra] Extend set of UBSan checks enabled. (#573) 2017-05-09 14:16:58 +02:00
Oliver Chang 4896be51cd Create a separate coverage build.
First part of #191.
2017-05-08 11:17:27 -07:00
Oliver Chang 60835ac420 oss-fuzz/BASE_IMAGE -> oss-fuzz-base/BASE_IMAGE 2017-03-22 12:12:51 -07:00
Oliver Chang 7df64d4ac4 [infra] ossfuzz/IMAGE -> gcr.io/oss-fuzz/IMAGE 2017-03-15 18:46:31 -07:00