Wednesday, May 12, 2010

New MaraDNS snapshot: NAPTR record bugfix; IPv6 examples changed

You know, it’s always a little embarrassing for me to have a bug in my code. A part of me wishes I was perfect and did not make mistakes, and has the notion it reflects poorly on me if a piece of code has a bug in it — even though it plain simply is not humanly possible to make a program as complex as a DNS server without any bugs.[1]

There was a bug in the code that parses NAPTR records that makes it impossible to parse NAPTR records unless the ~ is not used to separate records. The workaround is to not use the ~ to separate records in zone files with NAPTR records; the fix is available here:

In addition, today’s snapshot of MaraDNS now uses fecf:aff0 as the prefix for all example IPv6 addresses instead of 3ffe:ffff; fec0::/10 was once assigned to “Site-Local scoped” addresses and there is no way the IANA is ever going to use this space for IPv6 Unicast addresses; I use fecf:aff0 for loopback IPv6 addresses for Deadwood testing (why they didn’t assign an entire /16 or /32 to loopback in IPv6 is a mystery to me; multiple loopback addresses are useful).

- Sam

[1] If you’re an ignorant DJB fanboy who still thinks DjbDNS is perfectly secure and has no bugs, you’re wrong.