# 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 = "route_manager"
version = "0.2.10"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Cross-platform route management interface"
readme = "README.md"
keywords = [
    "route",
    "network",
    "ip",
]
license = "Apache-2.0"
repository = "https://github.com/tun-rs/route_manager"

[package.metadata.docs.rs]
all-features = true
targets = [
    "x86_64-unknown-linux-gnu",
    "x86_64-pc-windows-msvc",
    "aarch64-apple-darwin",
    "x86_64-apple-darwin",
    "x86_64-unknown-freebsd",
]

[features]
async = ["tokio"]
async_io = ["async-io"]
bindgen = ["dep:bindgen"]
default = []
shutdown = []

[lib]
name = "route_manager"
crate-type = [
    "staticlib",
    "cdylib",
    "lib",
]
path = "src/lib.rs"

[[example]]
name = "add"
path = "examples/add.rs"

[[example]]
name = "delete"
path = "examples/delete.rs"

[[example]]
name = "find_route"
path = "examples/find_route.rs"

[[example]]
name = "list"
path = "examples/list.rs"

[[example]]
name = "listen"
path = "examples/listen.rs"

[[example]]
name = "listen_async"
path = "examples/listen_async.rs"

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

[dependencies.libc]
version = "0.2"

[dependencies.tokio]
version = "1"
features = [
    "net",
    "macros",
    "io-util",
    "rt",
]
optional = true

[dev-dependencies.tokio]
version = "1.43.0"
features = ["full"]

[build-dependencies.bindgen]
version = "0.72"
optional = true

[target.'cfg(target_os = "linux")'.dependencies.netlink-packet-core]
version = "0.8"

[target.'cfg(target_os = "linux")'.dependencies.netlink-packet-route]
version = "0.28"

[target.'cfg(target_os = "linux")'.dependencies.netlink-sys]
version = "0.8"

[target.'cfg(target_os = "windows")'.dependencies.flume]
version = "0.12"

[target.'cfg(target_os = "windows")'.dependencies.windows-sys]
version = "0.61"
features = [
    "Win32_System_Diagnostics_Debug",
    "Win32_System_SystemServices",
    "Win32_Security_Cryptography",
    "Win32_NetworkManagement_IpHelper",
    "Win32_NetworkManagement_Ndis",
    "Win32_Networking_WinSock",
    "Win32_System_Threading",
    "Win32_System_Com",
    "Win32_System_Rpc",
    "Win32_Security",
    "Win32_Foundation",
    "Win32_System_Ioctl",
    "Win32_System_IO",
    "Win32_System_LibraryLoader",
    "Win32_Security_WinTrust",
]
