- Notifications
You must be signed in to change notification settings - Fork5
Simple Rust wrapper around DNS-SD
License
Apache-2.0, MIT licenses found
Licenses found
Apache-2.0
LICENSE-APACHEMIT
LICENSE-MITNotificationsYou must be signed in to change notification settings
AstroHQ/astro-dnssd
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Minimal but friendly safe wrapper around dns-sd(Bonjour, mDNS, Zeroconf DNS) APIs.
- Service registration
- TXTRecord support for service registration via HashMap
- Service browsing
- Record creation
- Name resolution
- Port map
- Tests
- Documentation
astro-dnssd
requires the Bonjour SDK (as of 0.3 on windows, it's optional, see win-bonjour feature flag)
- Windows: Download the SDKhere
- Linux: Install
avahi-compat-libdns_sd
for your distro of choice.
Thiswebsite provides a good overview of the DNS-SD protocol.
use astro_dnssd::DNSServiceBuilder;use env_logger::Env;use std::thread::sleep;use std::time::Duration;fnmain(){ env_logger::from_env(Env::default().default_filter_or("trace")).init();println!("Registering service...");let service =DNSServiceBuilder::new("_http._tcp",8080).with_key_value("status".into(),"open".into()).register();{match service{Ok(service) =>{println!("Registered... waiting 20s");sleep(Duration::from_secs(20));println!("Dropping... {:?}", service);}Err(e) =>{println!("Error registering: {:?}", e);}}} log::info!("Drop should have happened");sleep(Duration::from_secs(5));}
Licensed under either of
- Apache License, Version 2.0(LICENSE-APACHE orhttp://www.apache.org/licenses/LICENSE-2.0)
- MIT license(LICENSE-MIT orhttp://opensource.org/licenses/MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submittedfor inclusion in the work by you, as defined in the Apache-2.0 license, shall bedual licensed as above, without any additional terms or conditions.
About
Simple Rust wrapper around DNS-SD
Topics
Resources
License
Apache-2.0, MIT licenses found
Licenses found
Apache-2.0
LICENSE-APACHEMIT
LICENSE-MITStars
Watchers
Forks
Packages0
No packages published