--- lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm (revision 1694052) +++ lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm (working copy) @@ -942,9 +942,8 @@ next unless (defined($str) && defined($dom)); dbg("uridnsbl: got($j) NS for $dom: $str"); - if ($str =~ /IN\s+NS\s+(\S+)/) { - my $nsmatch = lc $1; - $nsmatch =~ s/\.$//; + if ($rr->type eq 'NS') { + my $nsmatch = lc $rr->nsdname; # available since at least Net::DNS 0.14 my $nsrhblstr = $nsmatch; my $fullnsrhblstr = $nsmatch; @@ -1025,9 +1024,9 @@ } dbg("uridnsbl: complete_a_lookup got(%d) A for %s: %s", $j,$hname,$str); - local $1; - if ($str =~ /IN\s+A\s+(\S+)/) { - $self->lookup_dnsbl_for_ip($pms, $ent->{obj}, $1); + if ($rr->type eq 'A') { + my $ip_address = $rr->rdatastr; + $self->lookup_dnsbl_for_ip($pms, $ent->{obj}, $ip_address); } } }