fcnet 0.13.0

An in-process Firecracker microVM networking backend based on fcnet-types.
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
name = "fcnet"
version = "0.13.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "An in-process Firecracker microVM networking backend based on fcnet-types."
readme = "README.md"
keywords = [
    "firecracker",
    "microvm",
    "networking",
]
categories = ["network-programming"]
license = "MIT"
repository = "https://github.com/rust-firecracker/fcnet"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
    "--cfg",
    "docsrs",
]

[features]
default = ["simple"]
full = [
    "simple",
    "namespaced",
    "tokio-backend",
    "smol-backend",
]
namespaced = [
    "fcnet-types/namespaced",
    "dep:nix",
    "dep:futures-channel",
]
simple = ["fcnet-types/simple"]
smol-backend = [
    "dep:async-executor",
    "dep:async-io",
    "netlink-proto/smol_socket",
    "nftables-async/async-process-driver",
]
tokio-backend = [
    "dep:tokio",
    "netlink-proto/tokio_socket",
    "nftables-async/tokio-driver",
]

[lib]
name = "fcnet"
path = "src/lib.rs"

[dependencies.async-executor]
version = "1.14.0"
optional = true

[dependencies.async-io]
version = "2.6.0"
optional = true

[dependencies.cidr]
version = "0.3.2"

[dependencies.fcnet-types]
version = "0.1.1"

[dependencies.futures-channel]
version = "0.3.32"
optional = true
default-features = false

[dependencies.futures-util]
version = "0.3.32"
default-features = false

[dependencies.netlink-proto]
version = "0.12.0"
default-features = false

[dependencies.nftables]
version = "0.6.3"

[dependencies.nftables-async]
version = "0.4.1"

[dependencies.nix]
version = "0.31.3"
features = [
    "mount",
    "sched",
    "process",
]
optional = true
default-features = false

[dependencies.rtnetlink]
version = "0.21.0"
default-features = false

[dependencies.serde_json]
version = "1.0.149"

[dependencies.tokio]
version = "1.52.3"
features = ["rt"]
optional = true
default-features = false

[dependencies.tokio-tun]
version = "0.15.2"

[dev-dependencies]