Although Net::Domain::domainname attempts to be very thorough, the
host's configuration can still refuse to give a FQDN. Check to see if
what we receive contains a dot as a basic sanity check.
Signed-off-by: Brian Gernhardt <redacted>
---
My OS X machine doesn't add ".local" to it's hostname for some reason.
Since a FQDN requires at least one . between the TLD and hostname,
we can check for it to avoid nonsense results like "My-Computer".
git-send-email.perl | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/git-send-email.perl b/git-send-email.perl
index ce569a9..85fe374 100755
--- a/git-send-email.perl
+++ b/git-send-email.perl
@@ -870,7 +870,8 @@ sub maildomain_net
if (eval { require Net::Domain; 1 }) {
my $domain = Net::Domain::domainname();
$maildomain = $domain
- unless $^O eq 'darwin' && $domain =~ /\.local$/;
+ unless $^O eq 'darwin' && $domain =~ /\.local$/
+ or $domain !~ /\./;
}
return $maildomain;@@ -888,7 +889,8 @@ sub maildomain_mta
$smtp->quit;
$maildomain = $domain
- unless $^O eq 'darwin' && $domain =~ /\.local$/;
+ unless $^O eq 'darwin' && $domain =~ /\.local$/
+ or $domain !~ /\./;
last if $maildomain;
}
--
1.7.1.rc0.210.ge6da