Update copyright information in the LICENSE file and executable.
Drop the "-s" option. With all due respect to the original authors, the behavior of the "-s" flag is trivial to implement with the POSIX "find" command. The benefit of having it reimplemented in valtz itself is small.
Show only a usage summary when -h is passed. There was a long "usage" string contained within the program itself that is now contained within the man page. The long usage would be shown with "valtz -h", and a shorter one would be shown with simply "valtz", which is an error by itself. This commit also unifies those two: if you try to run valtz with no arguments, the "valtz -h" output is shown but the exit code will be non-zero.
Update some copyright, version, and contact information.
Drop the "-x" flag. The "-x" flag used to set the exit code non-zero on error, thus making it easier to detect errors in shell scripts. But I can imagine no situation where returning zero unconditionally is preferable; and so, I've removed the flag and enabled the "-x" behavior by default.
Warn about IP addresses in hostname fields. A common error is to specify an IP address as the result of an MX lookup. The RFCs (974, 1035, 2181...) state that the result should be a "domain name," which in this context, means "host name." This commit adds a check on "hostname" fields that rejects a dotted-quad contained therein. In particular, it catches the aforementioned MX record error.
Whitespace cleanup. Remove some trailing whitespace and empty comments where it should (ha ha) have no effect on the behavior of the program.
Add support for SRV records. There is a patch for djbdns that adds support for SRV records to both tinydns-data and axfr-get: From: Michael Handler <handler@sub-rosa.com> To: dns@list.cr.yp.to Subject: tinydns-data SRV & axfr-get SRV/PTR patches Date: Thu, 14 Sep 2000 20:37:50 -040 Many distributions carry the patch, but valtz rejects the SRV records because it doesn't recognize the "S" indicator or know how to validate the port, weight, or priority fields. This commit adds support for the new record type, and adds validation routines for the three new fields. All of them are the same: ports, weights, and priorities are all integers between 0 and 65536.
Allow underscore characters in FQDNs and pointers. Modern DNS records can contain underscores for a number of reasons. In particular, DKIM records involve a "_domainkey" part, https://tools.ietf.org/html/rfc6376 that is rejected by the current "fqdn" and "p" validation routines. Moreover, any SRV records will have a service name prefixed with an underscore: https://tools.ietf.org/html/rfc2782 To recognize these tokens as valid, this commit expands the "fqdn" and "p" regular expressions to allow underscores as the first character in each component of an FQDN.
Fix support for generic records
Initial commit Forked from http://x42.com/software/valtz