Less than ideal messages in syslog for corrupt iodef records.
Environment
Operating system: Debian 9.0 Linux
Software version: pdns4.0.4
Software source: PowerDNS repository
Steps to reproduce
create a CAA record using PowerAdmin containing 0 iodef mailto:root@example.com
try to perform a dig axfr query against the server
read syslog
change the record to "0 iodef mailto:root@example.com"
try to perform a dig axfr query against the server
read syslog
Expected behaviour
Don't use "start" to mean "insert", use "insert"
So, instead of:
Data field in DNS should start with quote (") at position 8 of '0 iodef mailto:root@example.com'
Suggest:
Insert quote (") at position 8 of '0 iodef mailto:root@example.com' to start string
(It probably should suggest a trailing quote (") too.)
Consistently use leading caps or not (above there's a leading caps, below there isn't):
expected digits at position 0 in '"0 iodef mailto:root@example.com"'
You probably want singular digit instead of digits in this message (it isn't practical to have multiple digits at a single position):
expected digits at position 0 in '"0 iodef mailto:root@example.com"'
As in:
Expected digit at position 0 in '"0 iodef mailto:root@example.com"'
It would be nicer if the parser could suggest moving the quotation mark to where it belongs, as in:
Move quote (") from position 0 to after 'iodef ' in '"0 iodef mailto:root@example.com"'
Actual behaviour
dig yields:
;; communications error to dnsserver#53: end of file
after the SOA record.
syslog yields:
pdns_server[31183]: Jul 25 14:40:34
Exception: Parsing record content (try 'pdnsutil check-zone'):
Data field in DNS should start with quote (") at position 8 of '0 iodef mailto:root@example.com'
syslog yields:
pdns_server[31183]: Jul 25 14:43:00
Exception: Parsing record content (try 'pdnsutil check-zone'):
expected digits at position 0 in '"0 iodef mailto:root@example.com"'
pdnsutil check-zone yields:
[Error] Following record had a problem: example.com IN CAA 0 iodef mailto:root@example.com
[Error] Error was: Parsing record content (try 'pdnsutil check-zone'):
Data field in DNS should start with quote (") at position 8 of '0 iodef mailto:root@example.com'
Other information
The correct record format is:
0 iodef "mailto:root@example.com"
Usecase
Trying to add iodef record based on random web articles w/o understanding how to do things.
Description
The reason for this CAA record is that I want CAs to send me email when they're inappropriately asked to generate Certificates for domains I control.
But this issue is about improving pdns's error reporting to make my life easier.
Short description
Less than ideal messages in syslog for corrupt iodef records.
Environment
Steps to reproduce
0 iodef mailto:root@example.com
dig axfr
query against the server"0 iodef mailto:root@example.com"
dig axfr
query against the serverExpected behaviour
Data field in DNS should start with quote (") at position 8 of '0 iodef mailto:root@example.com'
Suggest:Insert quote (") at position 8 of '0 iodef mailto:root@example.com' to start string
(It probably should suggest a trailing quote (") too.)expected digits at position 0 in '"0 iodef mailto:root@example.com"'
digit
instead ofdigits
in this message (it isn't practical to have multiple digits at a single position):expected digits at position 0 in '"0 iodef mailto:root@example.com"'
As in:Expected digit at position 0 in '"0 iodef mailto:root@example.com"'
Move quote (") from position 0 to after 'iodef ' in '"0 iodef mailto:root@example.com"'
Actual behaviour
dig
yields:after the SOA record.
syslog yields:
syslog yields:
pdnsutil check-zone
yields:Other information
The correct record format is:
0 iodef "mailto:root@example.com"
Usecase
Trying to add iodef record based on random web articles w/o understanding how to do things.
Description
The reason for this CAA record is that I want CAs to send me email when they're inappropriately asked to generate Certificates for domains I control.
But this issue is about improving pdns's error reporting to make my life easier.