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
SUSteffen Ullrich <steffen_ullrich@genua.de>
Date
May 1, 2014, 20:48 UTC
Message-ID
<20140501204814.GA31294@genua.de>
In-Reply-To
<20140501180546.GA9218@google.com>
Hi,
Net::SMTP does neither supports SSL nor IPv6.
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.

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?

Regards, Steffen

On Thu, May 01, 2014 at 11:05:46AM -0700, Jonathan Nieder <jrnieder@gmail.com> wrote:
Show 22 quoted lines
> Hi,
> 
> Matthias-Christian Ott wrote[1]:
> 
> > git send-email uses Net::SMTP connections that use STARTTLS. Net::SMTP
> > does not support IPv6. I patched Net:SMTP to use IO::Socket::INET6 and
> > it worked.
> 
> Thanks for reporting.
> 
>  1. What version of Net::SMTP do you use?
> 
>  2. Would you be willing to contribute your patch to Net::SMTP upstream,
>     for example by mailing it to bug-libnet@rt.cpan.org with
>     the string "[rt.cpan.org #93823]" somewhere in the subject line[2]?
> 
> Hope that helps,
> Jonathan
> 
> [1] http://thread.gmane.org/gmane.comp.version-control.git/247769
> [2] https://rt.cpan.org/Public/Bug/Display.html?id=93823
> https://rt.cpan.org/NoAuth/RT/CPAN/Usage.html
-- 
genua
Gesellschaft fuer Netzwerk- und Unix-Administration mbH
Domagkstrasse 7, 85551 Kirchheim bei Muenchen
tel +49 89 991950-0, fax -999, www.genua.de
Geschaeftsfuehrer: Dr. Magnus Harlander, Dr. Michaela Harlander,
Bernhard Schneck. Amtsgericht Muenchen HRB 98238
Previous: Matthias-Christian OttNext: Jonathan Nieder
Message 4 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.