From: Junio C Hamano Date: Thu, 13 Feb 2014 21:38:19 +0000 (-0800) Subject: Merge branch 'rk/send-email-ssl-cert' into maint X-Git-Tag: v1.8.5.5~5 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/7c9b668b83c68f14d7249170a0609554a7b4a0fe?ds=inline;hp=-c Merge branch 'rk/send-email-ssl-cert' into maint A recent update to "git send-email" broke platforms where /etc/ssl/certs/ directory exists but cannot be used as SSL_ca_path (e.g. Fedora rawhide). * rk/send-email-ssl-cert: send-email: /etc/ssl/certs/ directory may not be usable as ca_path --- 7c9b668b83c68f14d7249170a0609554a7b4a0fe diff --combined git-send-email.perl index 2016d9c619,689944f71b..fdb0029b59 --- a/git-send-email.perl +++ b/git-send-email.perl @@@ -291,7 -291,7 +291,7 @@@ my $rc = GetOptions("h" => \$help "smtp-pass:s" => \$smtp_authpass, "smtp-ssl" => sub { $smtp_encryption = 'ssl' }, "smtp-encryption=s" => \$smtp_encryption, - "smtp-ssl-cert-path" => \$smtp_ssl_cert_path, + "smtp-ssl-cert-path=s" => \$smtp_ssl_cert_path, "smtp-debug:i" => \$debug_net_smtp, "smtp-domain:s" => \$smtp_domain, "identity=s" => \$identity, @@@ -1095,7 -1095,8 +1095,8 @@@ sub ssl_verify_params } if (!defined $smtp_ssl_cert_path) { - $smtp_ssl_cert_path = "/etc/ssl/certs"; + # use the OpenSSL defaults + return (SSL_verify_mode => SSL_VERIFY_PEER()); } if ($smtp_ssl_cert_path eq "") { @@@ -1214,14 -1215,10 +1215,14 @@@ X-Mailer: git-send-email $gitversio $smtp_server_port ||= 465; # ssmtp require Net::SMTP::SSL; $smtp_domain ||= maildomain(); + require IO::Socket::SSL; + # Net::SMTP::SSL->new() does not forward any SSL options + IO::Socket::SSL::set_client_defaults( + ssl_verify_params()); $smtp ||= Net::SMTP::SSL->new($smtp_server, Hello => $smtp_domain, Port => $smtp_server_port, - ssl_verify_params()); + Debug => $debug_net_smtp); } else { require Net::SMTP;