mirror of https://github.com/google/oss-fuzz.git
72adedc68e
* av1_dec_fuzzer: vary thread count in range [2, 64] use at most the first 100 bytes after skipping the file header to calculate a hash used to create the thread count. + add missing includes, delete unused string.h * av1_dec_fuzzer: use the first 32 bytes as a hash This is the minimum required by this function as it's read and interpreted as the IVF file header * av1_dec_fuzzer: use 1 header byte for thread count this is less complex than using a hash and produces the same coverage, similar to: https://github.com/ImageMagick/ImageMagick/blob/master/Magick++/fuzz/rotate_fuzzer.cc#L9-L16 https://cs.chromium.org/chromium/src/base/json/json_reader_fuzzer.cc?type=cs&q=json_reader_fuzzer&sq=package:chromium&g=0&l=20 |
||
---|---|---|
.. | ||
Dockerfile | ||
README.md | ||
av1_dec_fuzzer.cc | ||
av1_dec_fuzzer.dict | ||
build.sh | ||
project.yaml |
README.md
Submit a Patch to oss-fuzz repo
One-time Setup
- Create github account if needed (with @google.com email address, preferably) and log in.
- To allow “git push” to work, you’ll have to add an SSH key: https://help.github.com/articles/connecting-to-github-with-ssh/
- Go to https://github.com/google/oss-fuzz and click on “Fork”.
- Go to your own fork of the repo, which will be at https://github.com/<git_username>/oss-fuzz
- Click on “clone or download” and pick “Clone with SSH” method (I found that easier to use for “git push”). Then copy that URL and run “git clone <URL>” in terminal. Now you have a local repo, and your fork of the remote repo will be called “origin” in your git config.
- Configure a remote repo pointing to the upstream repo
(https://github.com/google/oss-fuzz) so that it’s called “upstream”:
- cd <local_oss_fuzz_repo_directory>/oss-fuzz
- git remote add upstream git@github.com:google/oss-fuzz.git
- git remote -v
NOTE: For trivial changes it's possible to edit the files in the web UI on the main project and create a commit + pull request from that.
Workflow for a Pull Request (Patch)
- Go to your repo:
- cd <local_oss_fuzz_repo_directory>/oss-fuzz
- Create a new branch:
- git checkout master
- git checkout -b new_feature_xyz
- Make your changes and commit them locally with “git commit”
- Push your changes to your fork on github
- git push -u origin HEAD
- (This will create a branch of the same name “new_feature_xyz” on your fork “origin”).
- Open your fork in browser and click on “Compare & pull request” and follow the prompts.
- If changes are requested to the patch:
- make changes to the same local branch
- commit them locally with “git commit” (but DO NOT amend!)
- git push -u origin HEAD
- Once pull request is closed:
- Delete “new_feature_xyz” branch on your fork using the “Delete branch” button on the pull request
- Delete local “new_feature_xyz” branch locally with “git checkout master && git branch -D new_feature_xyz”
- Sync your local repo and your fork with upstream repo:
- git checkout master
- git fetch upstream
- git merge upstream/master
- git push origin master