systemconfiguration-rs 0.2.1

Safe Rust bindings for Apple's SystemConfiguration framework via a Swift bridge on macOS
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use systemconfiguration::{NetworkInterface, NetworkSet, Preferences};

#[test]
fn network_sets_can_be_enumerated() -> Result<(), Box<dyn std::error::Error>> {
    let prefs = Preferences::new("systemconfiguration-rs.network-sets-tests", None)?;
    let sets = NetworkSet::copy_all(&prefs);
    if let Some(set) = sets.first() {
        let _ = set.name();
        let _ = set.set_id();
        let _ = set.service_order();
        let _ = set.copy_services();
        if let Some(interface) = NetworkInterface::copy_all()?.first() {
            let _ = set.contains_interface(interface);
        }
    }
    let _ = NetworkSet::copy_current(&prefs);
    Ok(())
}