[package]
edition = "2021"
name = "usbvfiod"
version = "0.2.0"
authors = ["Cyberus Technology GmbH"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A vfio-user server for USB pass-through."
readme = "README.md"
keywords = [
"usb",
"vfio",
]
categories = [
"emulators",
"hardware-support",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/cyberus-technology/usbvfiod"
[lib]
name = "usbvfiod"
path = "src/lib.rs"
[[bin]]
name = "remote"
path = "src/bin/remote.rs"
[[bin]]
name = "usbvfiod"
path = "src/main.rs"
[dependencies.anyhow]
version = "1.0.97"
features = ["std"]
default-features = false
[dependencies.arc-swap]
version = "1.7.1"
[dependencies.clap]
version = "4.5.35"
features = [
"cargo",
"color",
"derive",
"error-context",
"help",
"std",
"usage",
]
default-features = false
[dependencies.memmap2]
version = "0.9.5"
[dependencies.nusb]
version = "0.2.0"
features = ["tokio"]
default-features = false
[dependencies.thiserror]
version = "2.0.12"
[dependencies.tokio]
version = "1.48.0"
features = ["full"]
[dependencies.tokio-util]
version = "0.7.17"
[dependencies.tracing]
version = "0.1.41"
features = [
"log",
"std",
]
default-features = false
[dependencies.tracing-log]
version = "0.2.0"
features = ["std"]
default-features = false
[dependencies.tracing-subscriber]
version = "0.3.19"
features = [
"std",
"alloc",
"fmt",
"env-filter",
"ansi",
"tracing-log",
]
default-features = false
[dependencies.vfio-bindings]
version = "0.6.0"
default-features = false
[dependencies.vfio_user]
version = "0.1.1"
[dependencies.vmm-sys-util]
version = "0.15.0"
[dev-dependencies.libc]
version = "0.2.172"
[dev-dependencies.proptest]
version = "1.6.0"
[lints.clippy]
all = "deny"
assertions_on_result_states = "deny"
cargo = "deny"
complexity = "deny"
correctness = "deny"
if_not_else = "deny"
manual_string_new = "deny"
map_unwrap_or = "deny"
must_use_candidate = "deny"
nursery = "deny"
perf = "deny"
redundant_else = "deny"
semicolon_if_nothing_returned = "deny"
style = "deny"
suspicious = "deny"
undocumented_unsafe_blocks = "deny"
uninlined_format_args = "deny"
unnecessary_semicolon = "deny"
[lints.clippy.multiple_crate_versions]
level = "allow"
priority = 1
[lints.rust]
missing_debug_implementations = "deny"
[lints.rustdoc]
all = "deny"