--- a/lib/DNS/Vi.pm Sat May 24 23:16:42 2014 +0200
+++ b/lib/DNS/Vi.pm Fri May 30 14:44:16 2014 +0200
@@ -69,7 +69,8 @@
}
# bei einigen RRs müssen wir die Daten korrigieren
- when ([qw/MX NS PTR/]) {
+ when ([qw/CNAME MX NS PTR SOA/]) {
+ $rrset{data} =~ s/\@/$origin/g;
$rrset{data} .= ".$origin"
unless substr($rrset{data}, -1) eq '.';
}
@@ -145,7 +146,8 @@
$r{label} = '@' if $r{label} eq $origin;
$r{label} =~ s{\.\Q$origin\E$}{};
- $r{data} =~ s{\.\Q$origin\E$}{} if $r{rrtype} ~~ [qw(MX SOA PTR)];
+ $r{data} =~ s{\.\Q$origin\E$}{} if $r{rrtype} ~~ [qw(CNAME MX SOA PTR)];
+ $r{data} =~ s{\Q$origin\E$}{\@} if $r{rrtype} ~~ [qw(CNAME MX)];
$r{ttl} = $r{ttl} == $ttl ? '' : ttl2h($r{ttl});
$r{label} = do {
if (defined $last_label and $r{label} eq $last_label) { '' }