mdnsd v0.11
Multiple interface support, and a lot of fixes again from the team at
devolo AG.
Changes
- Add support for multiple interfaces. Similar to running one
mdnsd v0.10 per interface, sharing the same .conf files, issue #8 - Drop
-a ADDR
command line option, not applicable anymore - Drop
-p
command line option, not needed anymore - The
-i IFACE
option now limits mdnsd to run on one interface - Add support for query type ANY, by Peter Fleer, issue #34
- The libmdnsd function
mdnsd_step()
is now always non-blocking by
employingMSG_DONTWAIT
for itssendto()
andrecvfrom()
ops - Create PID file when starting up, and touch on .conf reload. This
is used by process supervisors like Finit to acknowledge that the
process (mdnsd) is done and ready to serve requests again - Updated mquery tool to behave a bit more like mdns-scan(1), except
with more command line options. mquery still only runs on one
interface, unlike mdnsd itself
Fixes
- Fix #33: multiple code cleanups and minor fixes by Wolfgang Rösler
- Fix #35: validate port number in .conf file
- Fix #38: possible NULL pointer dereference and memory leaks when
reading .conf files, by Wolfgang Rösler - Fix #39: multiple fixes by Peter Fleer
- Fix conflict detection
- If a conflict is detected, append
-index
suffix to hostname
to uniqify the name -- this happens in multi-deploy scenarios - When reloading .conf files, delete previously published records
- Drop own, looped back, multicast packets -- only if we detect
it as our own published records - Send publish records only if probes have gone unanswered
- Fix #43: _ldecomp() breaking on long name offsets, by Chris Beaumont