[package]
edition = "2021"
rust-version = "1.85.0"
name = "getifs"
version = "0.6.0"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Cross-platform enumeration of network interfaces and their MTU, gateway, multicast, and local/private/public IP addresses."
homepage = "https://github.com/al8n/getifs"
documentation = "https://docs.rs/getifs"
readme = "README.md"
keywords = [
"getifaddrs",
"network-interface",
"local-ip-address",
"gateway",
"mtu",
]
categories = ["network-programming"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/al8n/getifs"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
default = []
[lib]
name = "getifs"
path = "src/lib.rs"
[[example]]
name = "addrs"
path = "examples/addrs.rs"
[[example]]
name = "filter_by_rfc"
path = "examples/filter_by_rfc.rs"
[[example]]
name = "gateway"
path = "examples/gateway.rs"
[[example]]
name = "interfaces"
path = "examples/interfaces.rs"
[[example]]
name = "local_ip_addrs"
path = "examples/local_ip_addrs.rs"
[[example]]
name = "multicast_addrs"
path = "examples/multicast_addrs.rs"
[[example]]
name = "route"
path = "examples/route.rs"
[[test]]
name = "filter_variants"
path = "tests/filter_variants.rs"
[[test]]
name = "interfaces"
path = "tests/interfaces.rs"
[[bench]]
name = "gateway"
path = "benches/gateway.rs"
harness = false
[[bench]]
name = "interfaces"
path = "benches/interfaces.rs"
harness = false
[[bench]]
name = "local_ip_address"
path = "benches/local_ip_address.rs"
harness = false
[[bench]]
name = "route"
path = "benches/route.rs"
harness = false
[dependencies.bitflags]
version = "2"
[dependencies.cfg-if]
version = "1"
[dependencies.hardware-address]
version = "0.3"
[dependencies.ipnet]
version = "2"
[dependencies.iprfc]
version = "0.2"
[dependencies.iprobe]
version = "0.1"
[dependencies.paste]
version = "1"
[dependencies.smallvec-wrapper]
version = "0.4"
[dependencies.smol_str]
version = "0.3"
[dependencies.triomphe]
version = "0.1"
[dev-dependencies.criterion]
version = ">=0.7, <0.9"
[dev-dependencies.local-ip-address]
version = "0.6"
[dev-dependencies.network-interface]
version = "2"
[dev-dependencies.scopeguard]
version = "1"
[dev-dependencies.which]
version = "8"
[target.'cfg(all(any(target_os = "android", target_os = "linux")))'.dependencies.linux-raw-sys]
version = "0.12"
features = [
"if_arp",
"net",
"netlink",
]
[target.'cfg(all(any(target_os = "android", target_os = "linux")))'.dependencies.rustix]
version = "1.1"
features = [
"net",
"param",
]
[target.'cfg(all(any(target_os = "android", target_os = "linux")))'.dev-dependencies.rustix]
version = "1.1"
features = [
"net",
"param",
"process",
]
[target.'cfg(all(not(windows), not(any(target_os = "android", target_os = "linux"))))'.dependencies.libc]
version = "0.2"
[target."cfg(windows)".dependencies.widestring]
version = "1"
[target."cfg(windows)".dependencies.windows-sys]
version = "0.61"
features = [
"Win32_Networking_WinSock",
"Win32_NetworkManagement",
"Win32_NetworkManagement_IpHelper",
"Win32_NetworkManagement_Ndis",
]
[lints.rust]
rust_2018_idioms = "warn"
single_use_lifetimes = "warn"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = [
"cfg(apple)",
"cfg(bsd_like)",
"cfg(freebsdlike)",
"cfg(netbsdlike)",
"cfg(linux_like)",
]