Crate async_dnssd
source ·Expand description
Asynchronous wrapper for DNS-SD C libraries
Interesting entry points:
- Browse for available services
- Create Connection to register records with
- Enumerate domains that are recommended for registration or browsing
- Query for an arbitrary DNS record
- Register a service
- Add a record to a registered service
- Register record
- Find hostname and port (and more) for a service
Also the following things might be interesting:
Porting from dnssd C API
The following functions are called automatically when needed:
DNSServiceProcessResult
driving callbacks (event loop)DNSServiceRefDeallocate
called when dropping various resource handlesDNSServiceRefSockFD
used for integration with tokio (event loop)DNSServiceRemoveRecord
called when droppingRecord
The TXTRecord*
“TXT Record Construction Functions” are not
wrapped; TxtRecord
provides a native rust implementation with
similar functionality.
Structs
Pending browse request
Optional data when browsing for a service; either use its default
value or customize it like:
Browse result
Flags for
BrowseResult
DNS CLASS
Connection to register records with
Pending domain enumeration
Domain enumeration result
Flags for
EnumerateDomains
Full name consiting of (up to) three parts
Network interface index
Flags for
QueryRecordResult
Pending query
Optional data when querying for a record; either use its default
value or customize it like:
Flags used to query for a record
Query result
A successful record registration
Pending registration
Optional data when registering a service; either use its default
value or customize it like:
Flags used to register service
Pending record registration
Optional data when registering a record; either use its default
value or customize it like:
Flags used to register a record
Service registration result
Successful registration
Pending resolve request
Resolve result
Add a timeout to a stream; each time an item is received the timer
is reset
Key-Value container that uses DNS
TXT
RDATA as representationIterator for entries in
TxtRecord
DNS (RR)TYPE
Enums
Whether to enumerate domains which are browsed or domains for which
registrations can be made.
API Error
Network interface
Error produces by
TimeoutStream
Error returned when inserting new entries failed
Constants
Maximum length of full name including trailing dot and terminating NULL
Traits
Access
Remote
handle of Future
s and Stream
s supporting itfutures::Stream
extension to simplify building
TimeoutStream
Functions
Browse for available services
Browse for available services
Create
Connection
to register records
withEnumerate domains that are recommended for registration or browsing
Query for an arbitrary DNS record
Query for an arbitrary DNS record
Purge record from cache
Register a service
Register a service
Find hostname and port (and more) for a service