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

#982 in Network programming

Download history 1318/week @ 2024-09-22 2566/week @ 2024-09-29 2677/week @ 2024-10-06 2104/week @ 2024-10-13 2420/week @ 2024-10-20 3160/week @ 2024-10-27 2847/week @ 2024-11-03 3277/week @ 2024-11-10 2334/week @ 2024-11-17 1890/week @ 2024-11-24 3236/week @ 2024-12-01 3270/week @ 2024-12-08 2686/week @ 2024-12-15 856/week @ 2024-12-22 1555/week @ 2024-12-29 2089/week @ 2025-01-05

7,351 downloads per month
Used in 14 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–12MB
~115K SLoC