Subject: [PATCH v2] send-email: pass smtp hostname and port to Authen::SASL

From: Aditya Garg <[email-masked]>
Date: Thu, 5 Mar 2026 17:01:15 +0000

Starting from version 2.2000, Authen::SASL supports passing the SMTP
server hostname and port to the OAUTHBEARER string passed via SMTP AUTH.
Add support for the same in git-send-email.

It's safe to add the new parameters unconditionally as older versions of
Authen::SASL will simply ignore them without any error. Something
similar is already being done for the authname parameter, which is not
supported by every authentication mechanism. This can be understood as
declaring a variable but not using at all.

Link: https://metacpan.org/pod/Authen::SASL::Perl::OAUTHBEARER

Signed-off-by: Aditya Garg <[email-masked]>
---
 git-send-email.perl | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/git-send-email.perl b/git-send-email.perl
index eed5420882..0ac4d634e8 100755
--- a/git-send-email.perl
+++ b/git-send-email.perl
@@ -1474,6 +1474,8 @@ sub smtp_auth_maybe {
 						user     => $cred->{'username'},
 						pass     => $cred->{'password'},
 						authname => $cred->{'username'},
+						host     => $smtp_server,
+						(defined $smtp_server_port ? (port => $smtp_server_port) : ()),
 					}
 				);
 				$result = $smtp->auth($sasl);

Range-diff against v1:
1:  9b48ca57ae ! 1:  5befaa626d send-email: pass smtp hostname and port to Authen::SASL
    @@ Commit message
         server hostname and port to the OAUTHBEARER string passed via SMTP AUTH.
         Add support for the same in git-send-email.
     
    +    It's safe to add the new parameters unconditionally as older versions of
    +    Authen::SASL will simply ignore them without any error. Something
    +    similar is already being done for the authname parameter, which is not
    +    supported by every authentication mechanism. This can be understood as
    +    declaring a variable but not using at all.
    +
         Link: https://metacpan.org/pod/Authen::SASL::Perl::OAUTHBEARER
     
         Signed-off-by: Aditya Garg <[email-masked]>
-- 
2.52.0