Skip to content

Commit

Permalink
use "try" instead of "eval"
Browse files Browse the repository at this point in the history
  • Loading branch information
bigio committed May 22, 2024
1 parent 4f647f2 commit a7be350
Showing 1 changed file with 6 additions and 4 deletions.
10 changes: 6 additions & 4 deletions lib/Mail/SPF/Server.pm
Original file line number Diff line number Diff line change
Expand Up @@ -570,14 +570,16 @@ sub dns_lookup {

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

my $packet = eval { $self->dns_resolver->send($domain, $rr_type); };
if($@) {
throw Mail::SPF::ENoAcceptableRecord($@);
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 a7be350

Please sign in to comment.