FFI Bindings to MacOS's CoreWLAN framework.
You can either read the docs at docs.rs or apple.com. A small example is provided below.
extern crate corewlan-sys;
fn main() -> Result<(), ()> {
let client = CWWiFiClient::sharedWiFiClient();
let interface = client.interface();
let networks = interface.scanForNetworksWithName(None)?;
for network in networks {
println!("SSID: {}", network.ssid());
}
}
This crate does not have every interface in Apple's documentation perfectly implimented 1:1. Some things will be missing, some things will have bugs.
If you find a bug or need a feature, open an issue. I'll try to resolve it as best and quick as I can. Better yet, make a PR!