TODO list for rbldnsd, in no particular order.

 * implement TCP mode (in separate process, to reduce number of syscalls)
   probably never.

 * implement AXFR query - stupid idea but AXFR is widely used.
   probably never.

 * control socket for reloads (so that reload may be triggered by
   writing something to a socket).  This may be done in a separate
   process which will listen for requests on control socket and
   send signal to it's child.  This will also give us an ability
   to monitor and restart failed child (ala supervise)

 * add `fnmatch' (or dnpat) type, to handle shell-style wildcards
   (no regexps please).

 * It would be nice if queries to name-based datasets will be
   resolved in one lookup instead of several (by query dn labels)
   as now.  How?
   
 * two last TODO entries may be done by implementing sort of lex-like
   thing (DFA/NFA), in runtime.  Probably too much for such simple (?)
   program, unless someone will write good multi-regex-matching library
   (many applications will benefit from it).  I have no expirience
   with all those DFA/NFA things - at all.

 * document plugins/extensions internals (-x option).  For now, the
   only "reference" is a stub plugin in hooks.c.

 * implement 'noip' "dataset", to match queries made for IP-based blocklist
   (which expects an IP number as a query) which are NOT of IP numbers, ie,
   to detect wrong usage (as RHSBL, or just stupid) of a DNSBL.  Too many
   systems uses DNSBLs in various incorrect ways (improperly written software,
   querying for rDNS name in an IP-based list, wrong setup like using some
   additional suffixes and so on), generating extra unnecessary traffic and
   never noticying their queries does not help.
