pub struct NetworkManager { /* private fields */ }Expand description
Network interface manager
Implementations§
Source§impl NetworkManager
impl NetworkManager
pub fn new() -> Self
Sourcepub fn register_interface(
&self,
name: String,
device: Arc<Mutex<dyn NetworkDevice>>,
) -> Result<(), KernelError>
pub fn register_interface( &self, name: String, device: Arc<Mutex<dyn NetworkDevice>>, ) -> Result<(), KernelError>
Register a network interface
Sourcepub fn unregister_interface(&self, name: &str) -> Result<(), KernelError>
pub fn unregister_interface(&self, name: &str) -> Result<(), KernelError>
Unregister a network interface
Sourcepub fn get_interface(&self, name: &str) -> Option<Arc<Mutex<dyn NetworkDevice>>>
pub fn get_interface(&self, name: &str) -> Option<Arc<Mutex<dyn NetworkDevice>>>
Get interface by name
Sourcepub fn list_interfaces(&self) -> Vec<String>
pub fn list_interfaces(&self) -> Vec<String>
List all interfaces
Sourcepub fn set_default_route(&self, interface: String)
pub fn set_default_route(&self, interface: String)
Set default route
Sourcepub fn get_global_stats(&self) -> NetworkStats
pub fn get_global_stats(&self) -> NetworkStats
Get network statistics for all interfaces