Investigating the bug that Domenico Rotondi reported, I discovered that there have been some issues with RD (recursion desired) being incorrectly set when both upstream_servers and root_servers are set. I have updated the code and hopefully RD will now always have the correct value in DNS queries sent upstream.
In addition, I have updated Deadwood's parser:
This is OK:
recursive_acl = "127.0.0.1/16, 192.168.1.1/24"But this will raise an error:
recursive_acl = "127.0.0.1/16, 192.168.1.1/24"(Observe the extra space in the left of the second example)
upstream_servers = {} upstream_servers["example.com."] = "127.0.0.1" root_servers = {} root_servers["example.com."] = "192.168.1.1"
upstream_servers = {} upstream_servers["example.net."] = "10.1.2.3" upstream_servers["example.net."] = "192.168.1.1"I was tempted to make this fatal, but decided not to because making this fatal would make it more difficult to manage large anti-phish/malware blacklists.
upstream_servers = {} upstream_servers["example.net."] = "10.1.2.3" upstream_servers = {} upstream_servers["example.com."] = "192.168.1.1"
root_servers = {} root_servers["."] = "foo"
In addition, I want to ensure that any valid dwood3rc file is also a valid Python 2 script to make it much easier to use Deadwood configuration files in Python scripts.
I have also updated the SQA tests; they now run in both Scientific Linux 6 and in CentOS 5. Two new tests have been added: sqa_server_fail and sqa_root_upstream
Whew! This was a lot of work; I spent most of Saturday and a couple of hours this morning making all of these improvements. This will be all of the work I do with MaraDNS/Deadwood this month unless I can get more sponsorship.
It can be downloaded here:
http://www.maradns.org/deadwood/snap/The next day I plan to work on MaraDNS/Deadwood without being compensated for my time is on October 5, 2011.
To post a comment about an entry, send me an email and I may or may not post your comment (with or without editing)