CC: | felipe [...] felipegasper.com |
The following (character-string encoded) rdata breaks the TXT parser:
"\\";"
Show quoted text
> perl -MData::Dumper -MNet::DNS::ZoneFile::Fast -e'print
Data::Dumper::Dumper Net::DNS::ZoneFile::Fast::parse(qq{foo IN TXT "\\";"})'
$VAR1 = [
bless( {
'ttl' => 0,
'name' => 'foo',
'rdata' => '',
'rdlength' => 0,
'Line' => 1,
'Lines' => 1,
'type' => 'TXT',
'class' => 'IN'
}, 'Net::DNS::RR::TXT' )
];
Note that Net::DNS::RR parses this correctly:
Show quoted text> perl -MData::Dumper -MNet::DNS::RR -e'print Dumper(
Net::DNS::RR->new(qq{foo IN TXT "\\";"}))'
$VAR1 = bless( {
'rdlength' => 0,
'ttl' => 0,
'name' => 'foo',
'class' => 'IN',
'type' => 'TXT',
'char_str_list' => [
'";'
],
'rdata' => ''
}, 'Net::DNS::RR::TXT' );