@@ -282,66 +282,88 @@ there will be one `<dirname>` directory path for each `afl-fuzz` instance.
282
282
## Usage Information
283
283
Basic ` --help ` output appears below:
284
284
285
- usage: afl-cov [-h] [-e COVERAGE_CMD] [-d AFL_FUZZING_DIR] [-c CODE_DIR]
286
- [-O] [- -disable-cmd-redirection] [--disable-lcov-web]
285
+ usage: afl-cov [-h] [-e COVERAGE_CMD] [-d AFL_FUZZING_DIR] [-c CODE_DIR] [-O]
286
+ [--disable-cmd-redirection] [--disable-lcov-web]
287
287
[--disable-coverage-init] [--coverage-include-lines]
288
- [--enable-branch-coverage] [--live] [--sleep SLEEP]
289
- [--background] [--lcov-web-all] [--preserve-all-lcov-files]
288
+ [--enable-branch-coverage] [--live] [--cover-corpus]
289
+ [--coverage-at-exit] [--sleep SLEEP] [--gcov-check]
290
+ [--gcov-check-bin GCOV_CHECK_BIN] [--background]
291
+ [--lcov-web-all] [--disable-lcov-exclude-pattern]
292
+ [--lcov-exclude-pattern LCOV_EXCLUDE_PATTERN]
290
293
[--func-search FUNC_SEARCH] [--line-search LINE_SEARCH]
291
294
[--src-file SRC_FILE] [--afl-queue-id-limit AFL_QUEUE_ID_LIMIT]
292
- [--lcov-path LCOV_PATH] [--genhtml-path GENHTML_PATH] [-v] [-V]
293
- [-q]
295
+ [--ignore-core-pattern] [--lcov-path LCOV_PATH]
296
+ [--genhtml-path GENHTML_PATH] [--readelf-path READELF_PATH]
297
+ [--stop-afl] [--validate-args] [-v] [-V] [-q]
294
298
295
299
optional arguments:
296
300
-h, --help show this help message and exit
297
301
-e COVERAGE_CMD, --coverage-cmd COVERAGE_CMD
298
- set command to exec (including args, and assumes
299
- code coverage support)
302
+ Set command to exec (including args, and assumes code
303
+ coverage support)
300
304
-d AFL_FUZZING_DIR, --afl-fuzzing-dir AFL_FUZZING_DIR
301
305
top level AFL fuzzing directory
302
306
-c CODE_DIR, --code-dir CODE_DIR
303
- directory where the code lives (compiled with code
307
+ Directory where the code lives (compiled with code
304
308
coverage support)
305
- -O, --overwrite overwrite existing coverage results
309
+ -O, --overwrite Overwrite existing coverage results
306
310
--disable-cmd-redirection
307
- disable redirection of command results to /dev/null
308
- --disable-lcov-web disable generation of all lcov web code coverage
311
+ Disable redirection of command results to /dev/null
312
+ --disable-lcov-web Disable generation of all lcov web code coverage
309
313
reports
310
314
--disable-coverage-init
311
- disable initialization of code coverage counters at
315
+ Disable initialization of code coverage counters at
312
316
afl-cov startup
313
317
--coverage-include-lines
314
- include lines in zero-coverage status files
318
+ Include lines in zero-coverage status files
315
319
--enable-branch-coverage
316
- include branch coverage in code coverage reports
317
- (may be slow)
318
- --live process a live AFL directory, and afl-cov will exit
320
+ Include branch coverage in code coverage reports (may
321
+ be slow)
322
+ --live Process a live AFL directory, and afl-cov will exit
319
323
when it appears afl-fuzz has been stopped
320
- --sleep SLEEP In --live mode, # of seconds to sleep between
321
- checking for new queue files
322
- --background background mode - if also in --live mode, will exit
324
+ --cover-corpus Measure coverage after running all available tests
325
+ instead of individually per queue file
326
+ --coverage-at-exit Only calculate coverage just before afl-cov exit.
327
+ --sleep SLEEP In --live mode, # of seconds to sleep between checking
328
+ for new queue files
329
+ --gcov-check Check to see if there is a binary in --coverage-cmd
330
+ (or in --gcov-check-bin) has coverage support
331
+ --gcov-check-bin GCOV_CHECK_BIN
332
+ Test a specific binary for code coverage support
333
+ --background Background mode - if also in --live mode, will exit
323
334
when the alf-fuzz process is finished
324
- --lcov-web-all generate lcov web reports for all id:NNNNNN* files
335
+ --lcov-web-all Generate lcov web reports for all id:NNNNNN* files
325
336
instead of just the last one
326
- --preserve-all-lcov-files
327
- Keep all lcov files (not usually necessary)
337
+ --disable-lcov-exclude-pattern
338
+ Allow default /usr/include/* pattern to be included in
339
+ lcov results
340
+ --lcov-exclude-pattern LCOV_EXCLUDE_PATTERN
341
+ Set exclude pattern for lcov results
328
342
--func-search FUNC_SEARCH
329
- search for coverage of a specific function
343
+ Search for coverage of a specific function
330
344
--line-search LINE_SEARCH
331
- search for coverage of a specific line number
345
+ Search for coverage of a specific line number
332
346
(requires --src-file)
333
- --src-file SRC_FILE restrict function or line search to a specific
334
- source file
347
+ --src-file SRC_FILE Restrict function or line search to a specific source
348
+ file
335
349
--afl-queue-id-limit AFL_QUEUE_ID_LIMIT
336
- limit the number of id:NNNNNN* files processed in
337
- the AFL queue/ directory
350
+ Limit the number of id:NNNNNN* files processed in the
351
+ AFL queue/ directory
352
+ --ignore-core-pattern
353
+ Ignore the /proc/sys/kernel/core_pattern setting in
354
+ --live mode
338
355
--lcov-path LCOV_PATH
339
- path to lcov command
356
+ Path to lcov command
340
357
--genhtml-path GENHTML_PATH
341
- path to genhtml command
342
- -v, --verbose verbose mode
343
- -V, --version print version and exit
344
- -q, --quiet quiet mode
358
+ Path to genhtml command
359
+ --readelf-path READELF_PATH
360
+ Path to readelf command
361
+ --stop-afl Stop all running afl-fuzz instances associated with
362
+ --afl-fuzzing-dir <dir>
363
+ --validate-args Validate args and exit
364
+ -v, --verbose Verbose mode
365
+ -V, --version Print version and exit
366
+ -q, --quiet Quiet mode
345
367
346
368
## License
347
369
` afl-cov ` is released as open source software under the terms of
0 commit comments