afl-analyze(8)

πŸ’… afl-analyze β€” the manual, but make it cute

okay so bestie, you're looking at the afl-analyze(8) page from the System Manager's Manual β€” yes, that's the one. this is the whole thing, rewritten with ✨love✨ so you actually get it. no cap, every flag is staying. let's go πŸŽ€

🌸 NAME 🌸

afl-analyze

✨ SYNOPSIS ✨

afl-analyze [ options ] -- /path/to/target_app [ ... ]

literally just the tool, then your options, then --, then the target app, then whatever args you wanna feed it. slay. 🫢


πŸ¦‹ OPTIONS πŸ¦‹

πŸ‘‘ Required parameters (like, actually required, bestie)

  • -i file β€” the input test case that this tool is gonna analyze. this one's mandatory, don't skip it πŸ’€

πŸ”₯ Execution control settings

  • -f file β€” the input file that the tested program reads (this is the stdin one)
  • -t msec β€” timeout for each run (default: 1000 ms)
  • -m megs β€” memory limit for the child process (default: 0 MB)
  • -O β€” use binary-only instrumentation, aka FRIDA mode 🧚
  • -Q β€” use binary-only instrumentation, aka QEMU mode πŸ¦‹
  • -U β€” use unicorn-based instrumentation, aka Unicorn mode πŸ¦„
  • -W β€” use qemu-based instrumentation with Wine, aka Wine mode 🍷
  • -X β€” use Nyx mode ⭐

πŸŽ€ Analysis settings

  • -e β€” look for edge coverage only, ignore hit counts. periodt.
for additional tips, please consult docs/README.md. it's giving "read the docs" energy but fr fr it's useful πŸ“–

🌈 Environment variables used 🌈

these are the env vars, and yeah, they all matter:

  • TMPDIR β€” directory to use for temporary input files
  • ASAN_OPTIONS β€” custom settings for ASAN (must contain abort_on_error=1 and symbolize=0)
  • MSAN_OPTIONS β€” custom settings for MSAN (must contain exitcode=86 and symbolize=0)
  • AFL_ANALYZE_HEX β€” print file offsets in hexadecimal instead of decimal
  • AFL_KILL_SIGNAL β€” Signal ID delivered to child processes on timeout, etc. (default: SIGKILL)
  • AFL_FORK_SERVER_KILL_SIGNAL β€” Kill signal for the fork server on termination (default: SIGTERM). If unset and AFL_KILL_SIGNAL is set, that value will be used.
  • AFL_MAP_SIZE β€” the shared memory size for that target. must be >= the size the target was compiled for
  • AFL_PRELOAD β€” LD_PRELOAD / DYLD_INSERT_LIBRARIES settings for target
  • AFL_INPUT_PLACEHOLDER β€” custom placeholder for input file (default: @@)
  • AFL_SKIP_BIN_CHECK β€” skip checking the location of and the target
ngl that AFL_SKIP_BIN_CHECK description is worded kinda wild, but that's literally what it says, so i'm keeping it exactly like that πŸ’œ

πŸ’– AUTHOR πŸ’–

AFL++ was written by Michal "lcamtuf" Zalewski and is maintained by Marc "van Hauser" Heuse <mh@mh-sec.de>, Dominik Maier <domenukk@gmail.com>, Andrea Fioraldi <andreafioraldi@gmail.com> and Heiko "hexcoder-" Eissfeldt <heiko.eissfeldt@hexco.de>. The homepage of AFL++ is: https://github.com/AFLplusplus/AFLplusplus β€” icons only, the whole squad πŸ‘‘πŸ‘‘

πŸ“ LICENSE πŸ“

AFL++ is licensed under AGPL-3.0-or-later, with original components under Apache-2.0; an optional commercial license is available. See https://github.com/AFLplusplus/AFLplusplus/blob/stable/LICENSING.md for the full tea β˜•


that's the whole page, bestie β€” you ate that πŸ’…βœ¨

and for the cute sign-off: this lil masterpiece comes from AFL++, dated 2026-06-05, and yes it's the afl-analyze(8) page. go forth and analyze, icon 🌟🫢

πŸ“¦ where this page comes from