trinity(1)

trinity1

Linux system call fuzzer

Usage

The intelligence features include:

list of fd's of files it can read from /sys, /proc and /dev

greatly increasing the speed of subsequent runs).

Overview

"After the initial euphoria of witnessing the explosion had passed, test
director Kenneth Bainbridge commented to Los Alamos director J. Robert
Oppenheimer, "Now we are all sons of bitches." Oppenheimer later stated
that while watching the test he was reminded of a line from the Hindu
scripture the Bhagavad Gita:

Now I am become Death, the destroyer of worlds."

Options

--arch -a

Selects syscalls for the specified architecture (32 or 64). Both by default.

--bdev -b <node>

Add dev node to list of block devices to use for destructive tests.

--children -C

Specify number of child processes

--debug -D

Enable debug

--dropprivs -X

If run as root, switch to nobody [EXPERIMENTAL]

--exclude -x

Don't call a specific syscall

--enable-fds or --disable-fds

Options are: sockets, pipes, perf, epoll, eventfd, pseudo, timerfd, testfile, memfd and drm

--group -g = {vfs,vm}

Only run syscalls from a certain group.

--ioctls -I

List all ioctls.

--kernel_taint -T

Controls which kernel taint flags should be considered.

--list -L

List all syscalls known on this architecture.

--logging -l

off=disable logging. <dirname> specify a directory where logfiles will be placed.

--domain -P

Specify specific network domain for sockets.

--no_domain -E

Specify network domains to be excluded from testing.

--quiet -q

Less output.

--random -r#

Pick N syscalls at random and just fuzz those

--syslog -S

Log important info to syslog. Useful if syslog is remote.

--verbose -v

Increase output verbosity.

--victims -V

Path to victim files.

-c# @

Target specific syscall, takes syscall name as parameter and optionally 32 or 64 as bit-width. Default is both.

-N#

Do # syscalls then exit.

-p

Pause after syscall.

-s#

use # as random seed.

Examples

trinity -c splice

Stress test the splice syscall

trinity -x splice

Call every syscall except for splice.

trinity -qq -l off -C16

Turn off logging, and suppress most output to run as fast as possible. Use 16 child processes

Releases

5 releases since Debian 9 (Stretch); the text changed 2 times.

  1. 9
  2. 10
  3. 11–13

--monochrome until Debian 9 (Stretch); -m until Debian 9 (Stretch).

Author

Trinity is written by Dave Jones <[email protected]>

From trinity 1.9+git20241022.ba2360ed84a8-1 in Debian 13 (Trixie). Parsed by carta from the page's man source.