Skip to content

Myriad-Dreamin/fuzzer-cov

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fuzzer-cov

fuzzer coverage tool, generate readable coverage report in html format

Prerequisite

Install lcov package

on ubuntu:

apt-get install lcov

Installation

$ python3 -m pip install fuzzer-cov

Verify that the pacakge is installed successfully.

$ python3 -m fuzzer_cov --help
usage: fuzzer_cov [-h] [--version]

optional arguments:
  -h, --help  show this help message and exit
  --version   print version string

CLI Usage

LibFuzzer

generate coverage report for LibFuzzer.

$ python3 -m fuzzer_cov.commands.libfuzzer --help
usage: fuzzer_cov.commands.libfuzzer [-h] --fuzzer FUZZER -s SRC -o OUT -c
                                     CORPUS_DIR [--lcov-follow-links]
                                     [--enable-branch-coverage]
                                     [--lcov-exclude-pattern LCOV_EXCLUDE_PATTERN]
                                     [--lcov-path LCOV_PATH]
                                     [--gen-html-path GEN_HTML_PATH] [-v] [-V]
                                     [-q]

optional arguments:
  -h, --help            show this help message and exit
  --fuzzer FUZZER       Fuzzer Path (gcov instrumented)
  -s SRC, --src SRC     Source root directory
  -o OUT, --out OUT     Coverage output directory
  -c CORPUS_DIR, --corpus-dir CORPUS_DIR
                        Corpus (inputs) Directory
  --lcov-follow-links   Follow links when searching .da files
  --enable-branch-coverage
                        Include branch coverage in code coverage reports (may
                        be slow)
  --lcov-exclude-pattern LCOV_EXCLUDE_PATTERN
                        Set exclude pattern for lcov results
  --lcov-path LCOV_PATH
                        Path to lcov command
  --gen-html-path GEN_HTML_PATH
                        Path to genhtml command
  -v, --verbose         Verbose mode
  -V, --version         Print version and exit
  -q, --quiet           Quiet mode