[Pdns-dev] "news letter": license version clarification, regression tests + more

bert hubert ahu at ds9a.nl
Sun Feb 13 22:23:57 CET 2005

Hi everybody,

This is a small newsletter on what we've been up to lately, plus an important
update for any PowerDNS contributors out there.

All updates referenced below can currently only be found in subversion, for
which instructions are on http://wiki.powerdns.com ('Access to the Source').

Also, I can secretly confirm that our previous '1 million domains' estimate
was way wrong, for which we apologise. 

The current best estimate is at least 5 million domains.

If you are a big (>10.000 domains or so) PowerDNS user and you haven't
previously contacted me, feel free to drop me a line. I'll keep your numbers
secret, but they'll help us determine our current use more accurately.

On another small note, current SVN version should work again on Opteron and
FreeBSD Ultrasparc.

Table of contents:
	Regression tests
	new DNS packet parser and generator
	License: GPL version 2 only


This has been languishing in the tree for a while. One of the version 3
release goals is for PowerDNS to be 'a better bind than bind', see:

This means that we have to get rid of the current bind backend, which has
some fundamental problems. I'm currently getting the bind2backend ready for
prime time. To do so, I've revived...

The regression tests
These have been unused for over 3 years.. But they are back! There are 22
tests and you are welcome to write more, many more!

Running these tests in fact caught three problems in the bind2backend, which
proves they are a good thing. 

To add tests, head on to pdns/regression-tests and study the contents of the
22 test directories. To add a new one, simply generate a directory for it, a
'command' file and a 'description' file. 

To run the regression tests, run the following in the regression-tests

nameserver= port=5300 ./runtests

You'll now find a 'real_result' file in your new directory. Check if the
results are ok, and if so, copy this file to expected_result. Run the tests
again, and you'll see them reported as a success this time.

The syntax above expects a powerdns running on port 5300, btw. You need to
start powerdns with the named.conf as found in the regression-tests
directory, or feed it through zone2sql if you want to test the sql backends.

We need new tests for LOC, HINFO, RP and all other 'rare' records.

The regression tests used to depend on a very specific version of 'dig',
which is no longer easily available, so I've written..


'sdig' is not a 'dig' replacement, but it does always generate the exact
same output, even if the bind people add new features or change their
layout. I have no beef with them, my and their needs are just different.

To compile 'sdig', run 'make sdig', but do note that this requires the
'boost' c++ header files. These are available for debian, red hat, etc etc.

To write sdig, I wanted to use..

The new DNS Parser and Generator code
In the PowerDNS 3.1 timeframe, we'll be moving PowerDNS over from the
current old dnspacket.cc 'packet slicer and dicer' to a leaner, meaner and
more orthogonal DNS packet parser and generator. This has arrived in
dnsparser.cc and dnsrecords.cc, as used by sdig.

License: GPL version 2 only

For a long time, I think since open sourcing in fact, PowerDNS has been
displaying this message on startup:

 PowerDNS comes with ABSOLUTELY NO WARRANTY. This is free software, and you
 are welcome to redistribute it according to the terms of the GPL version 2.

However, many parts of the code in fact show the boilerplate code the FSF
suggests, which says:

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

I'm busy changing this over to being precise and stating that the license is
in fact only version *2*, and no later.

If anybody who in the past contributed code to powerdns feels upset by this,
please let me know so I can redo your work, or remove it from PowerDNS. Also
I may be able to convince you that this isn't a big deal. It is not that I
distrust the FSF, I like to see any later version first.


http://www.PowerDNS.com      Open source, database driven DNS Software 
http://netherlabs.nl              Open and Closed source services

More information about the Pdns-dev mailing list