- $message = 'DNS lookup failure';
- printf(" > Address is INVALID (%s).\n",$message) if !($options{'q'});
- $log .= $message . '.';
+ } else {
+ my $domain = Mail::Address->new('',$address)->host;
+ printf(" * Testing %s ...\n",$address) if !($options{'q'});
+ $log .= "\n===== BEGIN $address =====\n";
+ # get list of target hosts or take host forced via -m
+ if (!$options{'m'}) {
+ %targets = %{gettargets($domain,\$log)};
+ } else {
+ $message = sprintf("Connection to %s forced by -m.\n",$options{'m'});
+ $log .= $message;
+ print " $message" if !($options{'q'});
+ # just one target host with preference 0
+ $targets{$options{'m'}} = 0;
+ };
+ if (%targets) {
+ $curstat = checkaddress($address,\%targets,\$log);
+ } else {
+ $curstat = 2;
+ $message = 'DNS lookup failure';
+ printf(" > Address is INVALID (%s).\n",$message) if !($options{'q'});
+ $log .= $message . '.';
+ };
+ $log .= "====== END $address ======\n";