Add a second fuzzing engine alongside the existing libFuzzer/cargo-fuzz setup. AFL++ runs with persistent mode (afl::fuzz! macro), LLVM plugins (CmpLog, IJON), and a SymCC concolic companion for hybrid fuzzing. - cargo-afl built from afl.rs with a patch for CARGO_AFL_DIR / CARGO_AFL_LLVM_DIR env-var overrides - AFL++ built with LLVM 22 plugins to match rust-nightly - Persistent-mode fuzz targets in lib/fuzz-afl/ - --jobs N parallel fuzzing: main instance in foreground, secondaries and SymCC companion as systemd transient units in a slice - Ctrl+c / exit cleans up all background processes via slice stop - AFL_AUTORESUME=1 for clean restarts after previous runs - fuzz-clean-afl collects crashes from all instance directories - Shared harness logic in lib/src/fuzz_harness.rs Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
27 lines
818 B
TOML
27 lines
818 B
TOML
[package]
|
|
name = "usbip-rs"
|
|
version = "0.8.0"
|
|
authors = ["Jiajie Chen <c@jia.je>"]
|
|
edition = "2024"
|
|
license = "MIT"
|
|
repository = "https://github.com/jiegec/usbip"
|
|
description = "A library to run USB/IP server"
|
|
|
|
[dependencies]
|
|
tokio = { version = "1.22.0", features = ["rt", "net", "io-util", "sync", "time"] }
|
|
log = "0.4.17"
|
|
num-traits = "0.2.15"
|
|
num-derive = "0.4.2"
|
|
serde = { version = "1.0", features = ["derive"], optional = true }
|
|
nusb = { git = "https://git.dsg.is/dsg/nusb.git", rev = "1239c676" }
|
|
tokio-util = { version = "0.7", features = ["rt"] }
|
|
arbitrary = { version = "1", features = ["derive"], optional = true }
|
|
|
|
[dev-dependencies]
|
|
tokio = { version = "1.22.0", features = ["full"] }
|
|
env_logger = "0.11.7"
|
|
|
|
[features]
|
|
default = []
|
|
serde = ["dep:serde"]
|
|
fuzz = ["dep:arbitrary", "tokio/rt-multi-thread"]
|