Allocates time for fuzzers based on amount of fuzzing time left. This is beneficial when a fuzzer fails early in its allotted time because of a reproducible OSS-Fuzz bug. It will then give the remaining portion of its allotted time to the following fuzzers.
* [infra] Change language attribute from "cpp" to "c++" in coverage job runner.
Should've done this in https://github.com/google/oss-fuzz/pull/3477. Good news is that nothing failed, the coverage job was just skipped for pretty much all projects.
* also remove default value from build_project script
* [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
This is the foundation for affected fuzzers. It provides the ability to map fuzzers to files. In the future we will use this functionality to pick which fuzzers to run during CI.
This fix adds the -max_total_time argument to the cifuzz run_fuzzers command. The bug that was occurring was the docker process was being killed but the fuzzing was continuing wasting valuable compute resources. So a project with a large number of fuzzers would have all of them running by the end of CIFUzz leading to no actual fuzzing getting done because of resource scarcity. This patch should fix that.
This adds the functionality of git diff --name-only to the repo manager module. This functionality will be used for the affected fuzzer feature of CIFuzz. Associated tests have also been added.
This allows fuzzing using fuzz target's backup corpora. It will make fuzzing more efficient for targets that have a backup OSS-Fuzz corpus avaliable to the public. It will not effect targets that don't have backups.
Adds functionality to check if a crash exists in the most recent OSS-Fuzz build. This is necessary to determine if a crash was introduced in the current pull request or existed in the project already. Crashes that are surfaced to the user will be both reproducible and novel to the OSS-Fuzz project.
* [infra] Upload latest.version metadata file for most recent build.
* move common functionality into build_lib
* pass content_type to get_signed_url
* format
* Tests for Reproduce
* Leo comments
* Maxs comments pt.2
* Olivers comments
* Olivers comments
* Add fuzz target module tests
* Formatting
* Small punct and spelling
* Test update
* Format
* glib: Fix build due to Meson option changing type
In GLib master commit b220033c we changed the `libmount` option from a
`boolean` to a `feature`, which means it now takes
`enabled`/`disabled`/`auto` rather than `true`/`false`.
Signed-off-by: Philip Withnall <philip@tecnocode.co.uk>
Fixes: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=20552
* glib: Fix homepage URI
The FSF page on GLib is not official, loaded with their advertising, and
quite out of date.
Signed-off-by: Philip Withnall <philip@tecnocode.co.uk>
* infra: Add help_url to the valid section names list in Travis checks
It’s documented as valid:
https://google.github.io/oss-fuzz/getting-started/new-project-guide/#help_url
Signed-off-by: Philip Withnall <philip@tecnocode.co.uk>
* Separating actions into build and run
* Formatting
* Formatting
* Removing project-name from run action
* Jonathan comments
* Maxs comments pt.1
* Updating example_main.yml
* Switch 1 0 to true false
* Add base Dockerfile for CIFuzz
* Adding license to dockerfile