mdnsd v1.0
Full IPv6 transport, RFC 6763 compliant browsing, and multiple addresses
per interface. Contributions from Thom Nichols, Florian La Roche, et al.
Changes
libmdnsd,mdnsd, andmquery: full IPv6 support, querying and
answering over theff02::fbgroup, not just advertising AAAA records
over IPv4, which was introduced in v0.12, issue #10libmdnsd: API and ABI break; the soname is nowlibmdnsd.so.2
(-version-info 2:0:0) for the IPv6 and multiple-address changes, so
dependent programs must be rebuiltmdnsd: support multiple IPv4/IPv6 addresses per interface, with all
services sharing one host name, by Thom Nichols, VoltServer, issue #77mdnsd: track interface and address changes over netlink, instead of
polling, on Linuxmquery: add device discovery modemquery: browse by service type or host name (.local.implied),
resolve any record type directly, decodeTXTrecords, and print the
-D/-ddevice table on Ctrl-C- RFC 6763 compliance: the service
PTRnow points at the service
instance, and query responses carry the matchingSRV,TXT, and
address records in the additional section, issues #76 and #80 - mdnsd: keep key-only
TXTattributes (boolean flags) instead of
dropping them, issue #58 - Document resolving
.localnames on the host withlibnss-mdns, in
the README and manuals, issue #19 libmdnsd: installed headers no longer pull in the build'sconfig.h,
so programs can build against the library again, issue #75mdnsd: send goodbye packets when an interface is removed, issue #91- Unify the shell and unit tests under one Automake harness, issue #66
- Cleanups of const/static/unused and
-Wformat, by Florian La Roche
Fixes
- Fix #37:
_lmatch()read one byte past the root label - Fix #79:
mquerysent malformed packets when known-answer suppression
kicked in - Fix #84: use-after-free of a freed record in
uanswers - Fix #92: use-after-free in
mdnsd_set_interface_addresses - Fix #93: memory leak in
records_clear()on config reload - Fix #94: undefined behavior when caching records with empty rdata
- Fix conflict detection to consider all of an interface's addresses, by
Thom Nichols, VoltServer, issue #82 - Fix a one-byte over-read in
txt2sd()on well-formed input - Fix a memory overflow, by Hans Baumgartner
- Update the cached records when an interface changes, by Zhu Yongjian