Skip to content

Commit

Permalink
Merge pull request #5 from bigio/lookup_ENoAcceptableRecord
Browse files Browse the repository at this point in the history
error out if the lookup fails
  • Loading branch information
marcbradshaw authored Jun 11, 2024
2 parents 7476f22 + a7be350 commit 58f723f
Showing 1 changed file with 7 additions and 2 deletions.
9 changes: 7 additions & 2 deletions lib/Mail/SPF/Server.pm
Original file line number Diff line number Diff line change
Expand Up @@ -570,11 +570,16 @@ sub dns_lookup {

$domain =~ s/^(.*?)\.?$/\L$1/; # Normalize domain.

my $packet = $self->dns_resolver->send($domain, $rr_type);
try {
$packet = $self->dns_resolver->send($domain, $rr_type);
}
otherwise {
throw Mail::SPF::ENoAcceptableRecord($self->dns_resolver->errorstring);
};

# Throw DNS exception unless an answer packet with RCODE 0 or 3 (NXDOMAIN)
# was received (thereby treating NXDOMAIN as an acceptable but empty answer packet):
$self->dns_resolver->errorstring !~ /^(timeout|query timed out)$/
defined $self->dns_resolver->errorstring and $self->dns_resolver->errorstring !~ /^(timeout|query timed out)$/
or throw Mail::SPF::EDNSTimeout(
"Time-out on DNS '$rr_type' lookup of '$domain'");
defined($packet)
Expand Down

0 comments on commit 58f723f

Please sign in to comment.