radamsa(1)

NAME
radamsa - a general purpose fuzzer

SYNOPSIS
radamsa [options] [sample-path] ...

DESCRIPTION
Radamsa is a general purpose data fuzzer. It reads data from given sample files, or standard input if none are given, and outputs modified data. It is usually used to generate malformed data for testing programs.

OPTIONS
This program follows the usual GNU command line syntax, with long options starting with two dashes (`-'). A summary of options is included below.

-h, --help
    Show a shorter summary of options.

-V, --version
    Show program version.

-o, --output pattern
    Specify where to write the modified data. By default the data is written to standard output. The pattern can be a path, in which %n is filled to be the test case number if present, :n to have the data sent to TCP clients connecting to local port n, or a.b.c.d:n to have radamsa connect to port n of IPv4 address a.b.c.d to send each output.

-n, --count n
    How many outputs to generate based on the sample(s). Giving -1 or inf causes data to be generated forever. The default is 1.

-s, --seed n
    Start from random state n, which is a decimal number. Starting from the same random state with the same command line arguments and samples causes the same outputs to be generated. If no seed is given explicitly radamsa reads a random one from /dev/urandom or takes the current time in milliseconds.

-M, --meta path
    Write metadata about generated data to given path. - can be used to have the metadata written to standard output. The metadata contains the seed followed by one line per testcase.

-l, --list
    Show all available mutations, patterns and generators along with their descriptions.

-r, --recursive
    Include samples from directories recursively.

-v, --verbose
    Print what is being done.

-m, --mutations string
    Request the initial mutation probabilities manually. This is generally not recommended and the options will change in the future versions.

-p, --patterns string
    Request the mutation patterns manually. This is generally not recommended and the options will change in the future versions.

-g, --generators string
    Request the data stream generator probabilities manually. This is generally not recommended and the options will change in the future versions.

EXAMPLES
 $ cat file | radamsa | program -
 $ radamsa samples/*.foo | program -
 $ radamsa -o test-%n.foo -n 100 samples/*.foo
 $ radamsa -o :80 -n inf samples/*.resp
 $ radamsa -o 127.0.0.1:80 -n inf samples/*.req

SEE ALSO
zzuf(1)

BUGS
Bugs in radamsa can be filed to https://gitlab.com/akihe/radamsa or sent to aki.helin@iki.fi. Bugs outside of radamsa should be filed to their respective bug trackers.

AUTHOR
Radamsa and this manual page were written by Aki Helin <aki.helin@iki.fi> at OUSPG.