git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: git send-email doesn't work with IPv6 and STARTTLS

From
Jonathan Nieder <jrnieder@gmail.com>
Date
May 1, 2014, 20:55 UTC
Message-ID
<20140501205509.GC9218@google.com>
In-Reply-To
<20140501204814.GA31294@genua.de>
Hi,
Steffen Ullrich wrote:
Show 11 quoted lines
> git-send-mail does not use Net::SMTP directly for SSL support, but:
> - for direct connections (port 465) it uses Net::SMTP::SSL which just
>   replaces the superclass if Net::SMTP with IO::Socket::SSL and thus
>   implicitly supports IPv6 (because IO::Socket::SSL does)
> - for plain connections with SSL upgrade git-send-mail uses Net::SMTP for
>   the initial connect and then does Net::SMTP::SSL->start_SSL (e.g.
>   inherited from IO::Socket::SSL) to upgrade the socket to SSL.
>
> The problem here is that Net::SMTP does not support IPv6, but this
> should be solvable by using Net::INETGlue::INET_is_INET6 before loading
> Net::SMTP.

Sounds like a good change, fwiw. Even after Net::SMTP is fixed, it would be useful as a way to make sure git works well with old versions of Net::SMTP too.

Show 11 quoted lines
> But all these tricks are just workarounds for missing IPv6 and SSL support
> directly in the Net::SMTP, Net::FTP and Net::POP3.
> I therefore repeat my proposal from RT#93823 (no response yet) to add
> transparent support for IPv6 and SSL into these modules. By transparent I
> mean that the features are available if the necessary modules are installed
> (e.g. IO::Socket::SSL for SSL and IO::Socket::INET6 or IO::Socket::IP for
> IPv6), but that it works like before if they are not installed.
>
> I don't have these patches yet, but most of the necessary code is already
> there in Net::SSLGlue and Net::INET6Glue.
> Would you accept and incorporate such patches?

Thanks for a kind offer. I am not Net::SMTP upstream, but I'd be happy to work with upstream to get such patches applied.

Thanks for your work, Jonathan

Previous: Steffen Ullrich
Message 5 of 5 in “git send-email doesn't work with IPv6 and STARTTLS”
  1. Matthias-Christian OttApr 30, 2014
  2. Jonathan NiederMay 1, 2014
  3. Matthias-Christian OttMay 1, 2014
  4. Steffen UllrichMay 1, 2014
  5. Jonathan NiederMay 1, 2014

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.