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

Re: [PATCH] credential: ignore SIGPIPE when writing to credential helpers

From
Junio C Hamano <gitster@pobox.com>
Date
Mar 29, 2018, 22:35 UTC
Message-ID
<xmqqzi2q4ijf.fsf@gitster-ct.c.googlers.com>
In-Reply-To
<20180329215153.GJ2939@sigill.intra.peff.net>
Jeff King <peff@peff.net> writes:
Show 25 quoted lines
> On Thu, Mar 29, 2018 at 11:00:56AM -0700, Erik E Brady wrote:
>
>> The credential subsystem can trigger SIGPIPE when writing to an
>> external helper if that helper closes its stdin before reading the
>> whole input. Normally this is rare, since helpers would need to read
>> that input to make a decision about how to respond, but:
>> 
>> 1. It's reasonable to configure a helper which only handles "get"
>>    while ignoring "store".  Such a handler might not read stdin
>>    for "store", thereby rapidly closing stdin upon helper exit.
>> 
>> 2. A broken or misbehaving helper might exit immediately. That's an
>>    error, but it's not reasonable for it to take down the parent Git
>>    process with SIGPIPE.
>> 
>> Even with such a helper, seeing this problem should be rare. Getting
>> SIGPIPE requires the helper racily exiting before we've written the
>> fairly small credential output.
>> 
>> Signed-off-by: Erik E Brady <brady@cisco.com>
>> ---
>>  credential.c | 3 +++
>>  1 file changed, 3 insertions(+)
>
> This version looks good to me. Thanks!
Yup, looks good.  Thanks, both.
Previous: Jeff King
Message 9 of 9 in “credential: cred helper fast exit can cause SIGPIPE, crash”
  1. credential: cred helper fast exit can cause SIGPIPE, crashErik E Brady, Mar 28, 2018
  2. Jeff KingMar 29, 2018
  3. Erik Brady -X (brady - ROBERT HALF INTERNATIONAL INC at Cisco)Mar 29, 2018
  4. Jeff KingMar 29, 2018
  5. credential: ignore SIGPIPE when writing to credential helpersErik E Brady, Mar 29, 2018
  6. Jeff KingMar 29, 2018
  7. Erik Brady -X (brady - ROBERT HALF INTERNATIONAL INC at Cisco)Mar 29, 2018
  8. Jeff KingMar 29, 2018
  9. Junio C HamanoMar 29, 2018

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.