---
name: "afl-tmin"
section: "8"
platform: "linux"
package: "afl++"
version: "5.00c-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/afl-tmin/8"
---

# afl-tmin(8)

## NAME

**afl-tmin**

## SYNOPSIS

afl-tmin \[ options \] -- /path/to/target\_app \[ ... \]

## OPTIONS

```
Required parameters:
  -i file       - input test case to be shrunk by the tool
  -o file       - final output location for the minimized data
Execution control settings:
  -f file       - input file read by the tested program (stdin)
  -t msec       - timeout for each run (1000 ms)
  -m megs       - memory limit for child process (0 MB)
  -O            - use binary-only instrumentation (FRIDA mode)
  -Q            - use binary-only instrumentation (QEMU mode)
  -U            - use unicorn-based instrumentation (Unicorn mode)
  -W            - use qemu-based instrumentation with Wine (Wine mode)
                  (Not necessary, here for consistency with other afl-* tools)
  -X            - use Nyx mode
  -K dir        - use python script to interact with GUI (GUI mode)
Minimization settings:
  -e            - solve for edge coverage only, ignore hit counts
  -l bytes      - set minimum block deletion length to speed up minimization
  -x            - treat non-zero exit codes as crashes
  -H            - minimize a hang (hang mode)
For additional tips, please consult docs/README.md.
Environment variables used:
AFL_CRASH_EXITCODE: optional child exit code to be interpreted as crash
AFL_FORKSRV_INIT_TMOUT: time spent waiting for forkserver during startup (in ms)
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_TMIN_EXACT: require execution paths to match for crashing inputs
AFL_NO_FORKSRV: run target via execve instead of using the forkserver
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)
TMPDIR: directory to use for temporary input files
```

## 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

## 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
