git-send-email: Fix authenticating on some servers when using TLS.
authorRobert Shearman <robertshearman@gmail.com>
Wed, 9 Jul 2008 21:39:40 +0000 (22:39 +0100)
committerJunio C Hamano <gitster@pobox.com>
Wed, 9 Jul 2008 22:53:10 +0000 (15:53 -0700)
Send HELO again after a successful STARTTLS command to refresh the list of
extensions. These may be different to what is returned over a clear
connection (for example the AUTH command may be accepted over a secure
connection, but not over a clear connection).

Furthermore, this behaviour is recommended by RFC 2487
(http://www.ietf.org/rfc/rfc2487.txt).

Signed-off-by: Robert Shearman <robertshearman@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-send-email.perl

index 3564419e81694d84f4ebf036fe0df70277a81a98..6adb66947279e290d90be7da154f49e696894528 100755 (executable)
@@ -773,6 +773,9 @@ X-Mailer: git-send-email $gitversion
                                        $smtp = Net::SMTP::SSL->start_SSL($smtp)
                                                or die "STARTTLS failed! ".$smtp->message;
                                        $smtp_encryption = '';
+                                       # Send EHLO again to receive fresh
+                                       # supported commands
+                                       $smtp->hello();
                                } else {
                                        die "Server does not support STARTTLS! ".$smtp->message;
                                }