[package]
edition = "2021"
name = "if-watch"
version = "3.2.2"
authors = [
"David Craven <david@craven.ch>",
"Parity Technologies Limited <admin@parity.io>",
]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "crossplatform asynchronous network watcher"
readme = "README.md"
keywords = [
"asynchronous",
"routing",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/libp2p/if-watch"
[features]
smol = [
"dep:smol",
"rtnetlink/smol_socket",
]
tokio = [
"dep:tokio",
"rtnetlink/tokio_socket",
]
[lib]
name = "if_watch"
crate-type = [
"cdylib",
"lib",
]
path = "src/lib.rs"
[[example]]
name = "if_watch"
path = "examples/if_watch.rs"
required-features = ["smol"]
[dependencies.fnv]
version = "1.0.7"
[dependencies.futures]
version = "0.3.19"
[dependencies.ipnet]
version = "2.3.1"
[dependencies.log]
version = "0.4.14"
[dev-dependencies.env_logger]
version = "0.10.0"
[dev-dependencies.smol]
version = "2"
[dev-dependencies.tokio]
version = "1.21.2"
features = [
"rt",
"macros",
]
[target.'cfg(any(target_os = "macos", target_os = "ios"))'.dependencies.core-foundation]
version = "0.9.4"
[target.'cfg(any(target_os = "macos", target_os = "ios"))'.dependencies.if-addrs]
version = "0.15.0"
[target.'cfg(any(target_os = "macos", target_os = "ios"))'.dependencies.smol]
version = "2"
optional = true
[target.'cfg(any(target_os = "macos", target_os = "ios"))'.dependencies.system-configuration]
version = "0.7.0"
[target.'cfg(any(target_os = "macos", target_os = "ios"))'.dependencies.tokio]
version = "1.21.2"
features = ["rt"]
optional = true
[target.'cfg(not(any(target_os = "ios", target_os = "linux", target_os = "macos", target_os = "windows")))'.dependencies.async-io]
version = "2.0.0"
[target.'cfg(not(any(target_os = "ios", target_os = "linux", target_os = "macos", target_os = "windows")))'.dependencies.if-addrs]
version = "0.15.0"
[target.'cfg(target_os = "linux")'.dependencies.netlink-packet-core]
version = "0.8.1"
default-features = false
[target.'cfg(target_os = "linux")'.dependencies.netlink-packet-route]
version = "0.28.0"
default-features = false
[target.'cfg(target_os = "linux")'.dependencies.netlink-proto]
version = "0.12.0"
default-features = false
[target.'cfg(target_os = "linux")'.dependencies.netlink-sys]
version = "0.8.8"
default-features = false
[target.'cfg(target_os = "linux")'.dependencies.rtnetlink]
version = "0.20.0"
default-features = false
[target.'cfg(target_os = "windows")'.dependencies.if-addrs]
version = "0.15.0"
[target.'cfg(target_os = "windows")'.dependencies.windows]
version = "0.62.0"
features = [
"Win32_NetworkManagement_IpHelper",
"Win32_Foundation",
"Win32_NetworkManagement_Ndis",
"Win32_Networking_WinSock",
]