Monday, November 12, 2007

MaraDNS snapshot update: Another bug fixed

I didn't have any time to work on Deadwood this weekend because:
  1. Jan Hrdonka reported another bug which I had to find and fix (details below)
  2. I was working on a new version of my tiny live CD distribution of Linux (Firefox had to be updated, etc.)
  3. I spent some time with my girlfriend this weekend
The bug fixed in MaraDNS is that the CSV2 parser could not handle "blank" zone files--zone files with only SOA and NS records. I have fixed this bug in MaraDNS 1.3, complete with adding a regression to make sure the bug stays fixed, and have added a FAQ entry describing the bug and a workaround.

The reason for the bug is this: The CSV2 parser doesn't actually add the SOA record to memory until after all of the NS records, since the SOA record needs the NS records. The code adds the SOA records before adding the first non-NS entry. I forgot to add the SOA record after reading all of the zone in the case of having a zone with no records except SOA and NS records. I have added code to do this.

Since this is not a critical fix (there's a workaround for 1.2 users), this bug will not be fixed in MaraDNS 1.2