Mac OS X support

* update my copyright to include the year 2013

* Mac OS X support from Mecca on Efnet. I tweaked this a little so that it compiles against MacPorts Berkeley DB 4.8. Also I reflected the change in the README. compiles on Mac OS X does not run but could be due to sandboxing/ACL's? I could really need someone good with Mac OS X to look over this and fix it and send patches to me. -pjp

* bump copyright to include 2012

* bump copyright to include 2012

* It's August 14, 2012, I decided to leave Going to continue on with a new alias "pjp".

* typo

* check ftok() for errors

* Add TTL support for IPv6. Before an IPv6 address would have a ttl of 0 at all times, well I finally put the code in. It compiles on OpenBSD and Linux and works on OpenBSD. Currently I can't get Linux to work with this and it'll take some time to debug this :-(. compiled and works on OpenBSD

* add NOTIFY (rfc 1996) could this RFC be written any more WTF style?

* remove SRV RR support as a nice to have / TODO

* SRV RR support mention

* SRV RR support The srv configfile sample would look like this: ; srv record test,srv,3600,0,0,0,. The first three values after the TTL are in order, priority, weight and port followed by a domain name. Much of this code is based on reply_mx() so any bugs carried over would be carried over. Tested and compiled on OpenBSD/amd64

* document the fix just committed

* in dns.h add a TSIG type, something on what's to come perhaps * in parse.c fix a nasty bug that popped up on OpenBSD/macppc basically the ns and rp entries in the SOA were 0 due to an integer overflow in the parsing, this caused erroneous ANY packets and AXFR's which use the same code. compiles and tested on OpenBSD/macppc and OpenBSD/i386

* rudamentary IXFR support. Now bind9 doesn't need any options telling it to use only AXFR. Basically hardly any code change, we never increment change anyhow (yet) so we dump the entire zone when it's requested.

* fixed a bug that would close STDIN_FILENO, basically i should be j

* close more descriptors, not needed.

* an fstat showed that the descriptors for the udp dgram sockets are inherited with the AXFR engine. This is unwanted. So close these.

* reflect on changes just put in..

* remove AXFR as a nice to have / TODO.

* forgot the example for using axfr code, from last commit.

Change to berkeley db 4.6+, this allows us to use shared sysv memory needed to have multiple server instances that do recursing. The database is now on disk with this change, with a 260KB (default) SYSV shared memory cache. The cache size can be tweaked with the newly added -c flag. The OS has upper limits for SYSV shared memory though and the -c value must account for 25% more for internal purposes. Revert db.h struct domain to static arrays instead of pointers, this is necessary because we want to use shared memory between the database. This reverts revision 1.13 of db.h which was commited on Sun Mar 28 20:18:26 2010 UTC. So far wildcarddnsd has been extremely stable with the pointers, I'm hoping we'll get this much stability back. Added passive AXFR code. The axfr server does NOT bind to port 53 but rather another port, luckily that is configurable with other nameservers like BIND9. BIND nameservers wanting to make use of a wildcarddnsd master should turn IXFR queries off. Fix a small error that would bring wildcarddnsd to a SIGSEGV due to doing an FD_ISSET() on a non-descriptor. This only happens when one doesn't have the logging system turned on so it took a while for me to find it. Added the -n flag which allows multiple forked copies of wdnsd to be started. This is similar to how apache 1.3 web server does it.

* updated TODO

* update version on examples now that logging support is in