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

Re: git send-email Connection Closed

From
Stefan Agner <stefan@agner.ch>
Date
Jul 24, 2015, 14:26 UTC
Message-ID
<66194061e3b38a203af399ba4fd8e4be@agner.ch>
In-Reply-To
<91a8d8eb8767d29a4ed0a96d7a633c37@agner.ch>
On 2015-07-24 14:59, Stefan Agner wrote:
Show 46 quoted lines
> Hi Juston,
> 
> On 2015-07-15 07:11, Juston Li wrote:
>> Recently, I have had trouble using git send-email to send a patchset.
>> After the confirmation to send the email I get the following:
>> Send this email? ([y]es|[n]o|[q]uit|[a]ll): y
>> [Net::SMTP::SSL] Connection closed at /usr/lib/git-core/git-send-email
>> line 1320.
>> fatal: 'send-email' appears to be a git command, but we were not
>> able to execute it. Maybe git-send-email is broken?
>>
>> This message first appeared when I tried to send a 19 commit patchset
>> via 'git send-email HEAD~19'. It also fails when I try to format-patch
>> and send the patchset separately via 'git send-email 0001...'
>> Oddly enough, it works when I send anything other than 19 commits
>> for example 'git send-email HEAD~1' or 'git send-email HEAD~20'
> 
> Just got a similar message here, without the fatal part, just:
> [Net::SMTP::SSL] Connection closed at /usr/lib/git-core/git-send-email
> line 1320.
> 
> It seems that only one patch is causing the problem (in my case the
> first after the cover letter). I use TLS too and send it over a postfix
> SMTP server I maintain myself. The postfix log shows this:
> 
> postfix/smtpd[8535]: lost connection after DATA (16357 bytes) from
> unknown[x.y.z.z]
> postfix/smtpd[8535]: disconnect from unknown[x.y.z.z]
> 
> So it seems that the client side disconnects?
> 
> I rerun the command with --smtp-debug=1
> 
> ...
> Net::SMTP::SSL=GLOB(0x1fb3558)>>> +MODULE_LICENSE("GPL");
> Net::SMTP::SSL=GLOB(0x1fb3558)>>> -- 
> Net::SMTP::SSL=GLOB(0x1fb3558)>>> 2.4.5
> Net::SMTP::SSL: Net::Cmd::datasend(): unexpected EOF on command channel:
>  at /usr/lib/git-core/git-send-email line 1320.
> [Net::SMTP::SSL] Connection closed at /usr/lib/git-core/git-send-email
> line 1320.
> 
> It seems to me that there is a size limit, after cutting down the patch
> to ~16K, sending started to work. I cut it twice, once by removing lines
> from the head and once from the bottom, in both cases at the size of
> around 16K I could send the patch.

I found a work-around by using datasend line by line, which did the job for me:

Altering /usr/lib/git-core/git-send-email, around line 1320:
                $smtp->datasend("$header\n") or die $smtp->message;
                my @lines = split /^/, $message;
                foreach my $line (@lines) {
                        $smtp->datasend("$line") or die $smtp->message;
                }

-- Stefan

Previous: Stefan Agner
Message 5 of 5 in “git send-email Connection Closed”
  1. Juston LiJul 15, 2015
  2. Mike RappazzoJul 15, 2015
  3. Juston LiJul 16, 2015
  4. Stefan AgnerJul 24, 2015
  5. Stefan AgnerJul 24, 2015

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.