Rust bindings to Avahi's libavahi-client for zero-configuration networking with mDNS/DNS-SD.
For API documentation refer to http://www.avahi.org/doxygen/html/index.html
These bindings use bindgen
to parse the library's C headers, which
requires that Clang be available at build-time. Refer to the bindgen
documentation for more information.
The Avahi library headers must also be available in your C compiler's default include search path. In most situations this should be a simple matter of installing it with your system's package manager.
Because the Avahi API exposes some types that are not primitives but are part of
the C library, functions and types in the bindings are whitelisted where they
should be exposed. Others like pollfd
or timeval
are explicitly referenced
from libc
so a common type can be used in API consumers rather than
translating to an internal instance of the C library types.