8 releases (4 breaking)

0.5.1 Sep 7, 2024
0.5.0 Dec 22, 2021
0.5.0-rc.1 Aug 7, 2020
0.4.1 Aug 7, 2020
0.1.0 Jun 19, 2017

#975 in Network programming

Download history 3277/week @ 2024-10-30 2442/week @ 2024-11-06 3268/week @ 2024-11-13 2420/week @ 2024-11-20 2239/week @ 2024-11-27 2981/week @ 2024-12-04 3265/week @ 2024-12-11 1961/week @ 2024-12-18 1105/week @ 2024-12-25 1692/week @ 2025-01-01 2286/week @ 2025-01-08 2852/week @ 2025-01-15 2744/week @ 2025-01-22 2411/week @ 2025-01-29 2420/week @ 2025-02-05 2127/week @ 2025-02-12

10,418 downloads per month
Used in 16 crates (2 directly)

MIT license

120KB
3K SLoC

Rust CI crates.io MIT licensed

This library wraps C libraries implementing the dnssd:

Discover, publish, and resolve network services on a local area or wide area network.

It integrates into the asynchronous tokio framework.

The documentation is located at https://stbuehler.github.io/rustdocs/async-dnssd/async_dnssd/.

Documentation for released versions available at https://docs.rs/crate/async-dnssd/.


lib.rs:

Asynchronous wrapper for DNS-SD C libraries

Interesting entry points:

Also the following things might be interesting:

Porting from dnssd C API

C API functionality in this crate
DNSServiceAddRecord Registration::add_record, Register::add_record
DNSServiceBrowse browse
DNSServiceConstructFullName FullName::construct
DNSServiceCreateConnection connect
DNSServiceEnumerateDomains enumerate_domains
DNSServiceQueryRecord query_record
DNSServiceReconfirmRecord reconfirm_record
DNSServiceRegister register
DNSServiceRegisterRecord Connection::register_record
DNSServiceResolve resolve
DNSServiceUpdateRecord Record::update_record, RegisterRecord::update_record

The following functions are called automatically when needed:

The TXTRecord* "TXT Record Construction Functions" are not wrapped; TxtRecord provides a native rust implementation with similar functionality.

Dependencies

~3–11MB
~112K SLoC