mirror of
https://github.com/Cisco-Talos/clamav.git
synced 2025-11-11 21:41:05 +00:00
Removed all autotools generates files. Autotools (autoconf, automake, libtool, pkg-config, m4) will be required from now on for builds from git clones. Added autogen.sh to be run before ./configure. Significant update to main .gitignore file. Removed extraneous .gitignore files. A Git repository only needs one .gitignore file. |
||
|---|---|---|
| .. | ||
| clamav_dbload_fuzzer.cpp | ||
| clamav_scanfile_fuzzer.cpp | ||
| clamav_scanmap_fuzzer.cpp | ||
| Makefile.am | ||
| README.md | ||
| run_fuzzer_tests.py | ||
| standalone_fuzz_target_runner.cpp | ||
OSS-Fuzz
ClamAV has chosen to integrate with oss-fuzz.
What this means is that this repository includes:
-
Fuzz targets:
- A function to which we apply fuzzing.
- For ClamAV, clamav_scanfile_fuzzer.cc may be compiled with specific macros defined to produce multiple fuzz targets.
- Additional fuzz targets may be added to fuzz other ClamAV inputs.
-
Seed corpora:
- A set of minimal test inputs that generate maximal code coverage.
- Each ClamAV fuzz target has a seed corpus located under: fuzz/corpus/
-
Fuzzing dictionaries:
- A simple dictionary of tokens used by the input language. This can have a dramatic positive effect on fuzzing efficiency. For example, when fuzzing an XML parser, a dictionary of XML tokens will help.
- Some ClamAV fuzz targets have a dictionary located under: fuzz/dictionaries/.dict
For more information on how this is set up, see: ideal OSS-Fuzz integration