zond_engine/system/interface.rs
1// Copyright (c) 2026 Erik Lening (hollowpointer) and Contributors
2//
3// This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0.
4// If a copy of the MPL was not distributed with this file, You can obtain one at
5// https://mozilla.org/MPL/2.0/.
6//! # Network Interfaces
7//!
8//! This module resolves, validates, and routes the network hardware interfaces attached
9//! to the host. It provides capabilities like classifying local hardware
10//! connections (wired vs wireless), fetching network IPv4 assignments,
11//! and routing an arbitrary set of network targets securely out of the host boundaries.
12//!
13//! Exposes a clean facade for all interface management logic to consumers.
14pub mod ext;
15pub mod lan;
16pub mod os;
17pub mod resolve;
18pub mod routing;
19pub mod utils;
20
21pub use ext::NetworkInterfaceExtension;
22pub use lan::{ViabilityError, get_lan_network};
23pub use routing::map_ips_to_interfaces;
24pub use utils::{get_prioritized_interfaces, is_layer_2_capable, is_on_link};