"brian m. carlson" <sand...@crustytoothpaste.net> writes:

> If SSL verification is enabled in git send-email, we could attempt to call a
> method on an undefined value if the verification failed, since $smtp would end
> up being undef.  Look up the error string in a way that will produce a helpful
> error message and not cause further errors.
>
> Signed-off-by: brian m. carlson <sand...@crustytoothpaste.net>
> ---
>  git-send-email.perl | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/git-send-email.perl b/git-send-email.perl
> index 2162478..3782c3b 100755
> --- a/git-send-email.perl
> +++ b/git-send-email.perl
> @@ -1234,7 +1234,7 @@ X-Mailer: git-send-email $gitversion
>                               if ($smtp->code == 220) {
>                                       $smtp = Net::SMTP::SSL->start_SSL($smtp,
>                                                                         
> ssl_verify_params())
> -                                             or die "STARTTLS failed! 
> ".$smtp->message;
> +                                             or die "STARTTLS failed! 
> ".IO::Socket::SSL::errstr();

I agree that $smtp->message may be bogus at this point, but could
"require IO::Socket::SSL" have failed on us in ssl_verify_params?
In that degraded mode, we do not do SSL peer verification, but
otherwise we would still attempt to talk with the peer, and in such
a case, IO::Socket::SSL would not be available to us at this point,
no?

>                                       $smtp_encryption = '';
>                                       # Send EHLO again to receive fresh
>                                       # supported commands
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to