Source tarball available at: https://github.com/gdnsd/gdnsd/releases/
2.1.0 - 2014-10-14
*** Bugfixes:
* Fixed JSON stats output (was malformed; missing commas
in the service state portion of the output).
* Several relatively-benign deficiencies related to
daemonization, logging, and/or process control were fixed
throughout the source tree.
* Path MTU Discovery is now properly disabled on UDPv6 sockets
* Syslog output was not being generated if compiled using
--with-systemd, but not actually running under systemd.
(obviated/fixed by the changes below)
*** Systemd build/install changes:
* The --with-systemd configure flag no longer exists,
there is no dependency on systemd libraries or headers,
and all Linux builds inherently support detecting systemd
and being compatible with it.
* Support for systemd watchdog timers was removed as the
gdnsd implementation served zero functional purpose
other than to add more systemd-related code bloat.
* A (path-templated) unit file for gdnsd is now generated
and installed on applicable systems. If gdnsd will be
run as a systemd service, this unit file *must* be used!
Some of the settings within are critical to the proper
operation of gdnsd under systemd. The installation
path can be overriden from the pkg-config-based default
via --with-systemdsystemunitdir=DIR. Generation and
installation can be avoided on systems which have
systemd installed via --without-systemdsystemunitdir.
*** syslog/stdio behavior (relevant mostly for initscripts):
* New commandline flag "-x" suppresses syslog output completely.
(This is intended for testsuites and linting invocations of
checkconf and such, not for runtime use).
* When the gdnsd binary hasn't fully daemonized yet (meaning the
initial process has not yet exited, regardless of command/mode),
Info- and Debug- level messages are output to stdout, while
messages of severity Warning and higher are output to stderr
(unless we're running under systemd, in which case we stop using
stdio as soon as syslog is open to avoid journal duplicates).
Everything is mirrored to syslog regardless unless the -x cmdline
flag is used.
* If you don't want any gdnsd command output interfering with e.g.
your consistent ANSI-colored init system output, redirect both to
/dev/null. If you'd rather not have "normal" noise, but would
still like errors and serious issues to show through to the user,
just direct stdout to /dev/null.
* (The previous behavior was nothing to stdout, warning+ to stderr
and sometimes info and debug to stderr as well, but sometimes
nothing was output to any stdio anywhere, and was inconsistent
depending on flags/command/situation).
*** Misc changes:
* Documentation added for log_stats option
* Final stats output at daemon shutdown restored; was removed during a
refactor some time ago and I forgot to get it working again.
* Lots of misc improvements to the build and qa stuff. Notably the
default build will now use aggressive security-hardening flags on
modern GNU(-like) toolchains which support them.
*** The canonical HTTP and git-clone URL locations for the project
have changed to http://github.com/gdnsd/gdnsd . The old URLs
and git remotes will work correctly for some time, but not
indefinitely.