Cargo Features

[dependencies]
libafl_qemu = { version = "0.12.0", default-features = false, features = ["clippy", "document-features", "injections", "python", "fork", "build_libgasan", "build_libqasan", "x86_64", "i386", "arm", "aarch64", "mips", "ppc", "hexagon", "be", "usermode", "systemmode", "serdeany_autoreg", "slirp"] }
default = build_libgasan, build_libqasan, fork, injections, serdeany_autoreg

These default features are set whenever libafl_qemu is added without default-features = false somewhere in the dependency tree.

clippy

special feature for clippy, don't use in normal projects§

document-features

Enables document-features

Document all features of this crate (for cargo doc)

injections default = serde_yaml, toml

# Feature Flags
### General Features
Find injections during fuzzing

Affects libafl_qemu::injections

python = pyo3, pyo3-build-config

Python bindings support

Enables python of libafl_qemu_sys

Affects emu::pybind, libafl_qemu::python_module

fork default

Fork support

Enables fork of libafl

Affects executor::QemuForkExecutor

build_libgasan default

Build libqasan for address sanitization

build_libqasan default
x86_64

## The following architecture features are mutually exclusive.

build qemu for x86_64 (default)

Enables x86_64 of libafl_qemu_sys

i386

build qemu for i386

Enables i386 of libafl_qemu_sys

arm

build qemu for arm

Enables arm of libafl_qemu_sys

aarch64

build qemu for aarch64

Enables aarch64 of libafl_qemu_sys

mips

build qemu for mips (el, use with the 'be' feature of mips be)

Enables mips of libafl_qemu_sys

ppc

build qemu for powerpc

Enables ppc of libafl_qemu_sys

hexagon

build qemu for hexagon

Enables hexagon of libafl_qemu_sys

be

Big Endian mode

Enables be of libafl_qemu_sys

usermode

Usermode (mutually exclusive to Systemmode)

Enables usermode of libafl_qemu_sys

systemmode slirp?

Systemmode (mutually exclusive to Usermode)

Enables systemmode of libafl_qemu_sys

serdeany_autoreg default

SerdeAny features

Automatically register all #[derive(SerdeAny)] types at startup.

Enables serdeany_autoreg of libafl_bolts

slirp = systemmode

build qemu with host libslirp (for user networking)

Enables slirp of libafl_qemu_sys

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

serde_yaml injections

Enables serde_yaml ^0.8

For parsing the injections yaml file

toml injections

Enables toml ^0.4.2

For parsing the injections toml file

pyo3 python?

Enables pyo3 ^0.18

pyo3-build-config build python?

Enables pyo3-build-config ^0.18