Re: [PATCH] send-email: pass smtp hostname and port to Authen::SASL
Show 10 quoted lines
> On 5 Mar 2026, at 8:15 PM, Junio C Hamano <gitster@pobox.com> wrote:
>
> Aditya Garg <gargaditya08@live.com> writes:
>
> [administrivia]
>
> Please do not send patch e-mails directly at me, unless you know
> that I am the area authority. Initial submissions are better
> sent to the list on To: list, with area experts on Cc: if you
> know or found out who they are.
Oh sorry. I just did whatever I did in my previous contributions. I didn't know the rules changed.
Will mail just the mailing list next time.
Show 9 quoted lines
>
>> 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.
>
> The proposed log message should answer these questions as well:
>
> What happens with version before 2.2000? Is it safe to
> unconditionally add parameters like this patch does, and why?
It's safe to add parameters unconditionally because the library will simply reject them without any error. It's basically like declaring a variable and not using it anywhere for older versions. I have tested this with old libraries as well.
Consider the fact that the authname variable is also not in every authentication method used by Authen SASL, still its declared unconditionally before.
Show 23 quoted lines
>
>> Link: https://metacpan.org/pod/Authen::SASL::Perl::OAUTHBEARER
>>
>> Signed-off-by: Aditya Garg <gargaditya08@live.com>
>> ---
>> 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);
>
> Thanks.