Add documentation about fuzzer execution environment.

This commit is contained in:
Oliver Chang 2016-11-07 13:08:44 -08:00
parent ff7e89f341
commit 9158c54199
3 changed files with 28 additions and 0 deletions

View File

@ -106,6 +106,8 @@ oss-fuzz will adhere to following disclosure principles:
*part of target* source code repository.
* [Running and Building External Fuzzers](docs/building_running_fuzzers_external.md) documents the process for fuzzers that are
*part of oss-fuzz* source code repository.
* [Fuzzer execution environment](docs/fuzzer_environment.md) documents the
environment under which your fuzzers will be run.
* [Targets List](targets/README.md) lists OSS targets added to oss-fuzz.
* [Chrome's Efficient Fuzzer Guide](https://chromium.googlesource.com/chromium/src/testing/libfuzzer/+/HEAD/efficient_fuzzer.md)
while contains some chrome-specifics, is an excellent documentation on making your fuzzer better.

View File

@ -0,0 +1,20 @@
# Fuzzer environment on ClusterFuzz
Your fuzzers will be run on ClusterFuzz (Linux environment) with some
restrictions.
## Current working directory
You cannot make any assumptions about the current working directory of your
fuzzer. If you need to load data files, please use `argv[0]` to get the
directory where your fuzzer executable is located. This may change in the near
future.
## Filesystem
Everything except `/tmp` is read-only, including the directory that your fuzzer
executable lives in. Note that `/tmp` is limited in size (64MB).
## Network access
There will be no network interfaces available (not even loopback).

View File

@ -72,6 +72,12 @@ There are [lots](../targets/libxml2/libxml2_xml_read_memory_fuzzer.cc)
[of](../targets/expat/parse_fuzzer.cc) [examples](../targets/zlib/zlib_uncompress_fuzzer.cc)
in this project repository.
### Fuzzer execution environment
[This page](fuzzer_environment.md) gives information about the environment that
your fuzzers will run under on ClusterFuzz, and the assumptions that you can
make.
## build.sh
This is where most of the work is done to build fuzzers for your target. The script will