View Issue Details

IDProjectCategoryView StatusLast Update
0001289libmicrohttpdotherpublic2026-11-04 20:05
Reporterjimstudt Assigned ToChristian Grothoff Due Date
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Product Version0.1.1 
Summary0001289: Broken connections cause SIGPIPE killing host application.
DescriptionWhen a client aborts a connection it causes an EPIPE on a send() call but also raises a SIGPIPE unless you use the MSG_NOPIPE flag in the send() call. libmicrohttpd does not have this flag set so the SIGPIPE rises up through the unsuspecting application and kills it.

There are many causes of broken connections, but I noticed it from the Safari browser.
You can cause this to happen by making a response that takes a half second or so to respond, accessing it from Safari, and clicking the 'reload' button very quickly.
Additional InformationPerhaps on any platform that defines MSG_NOPIPE you should use it in the flags.
I suspect this can also happen in the receive, but that would be tricky to make a test case.
TagsNo tags attached.

Activities

Christian Grothoff

2007-11-16 23:56

manager   ~0003198

Fixed in SVN 5732 (at least for Linux/OS X and modern BSD).

Issue History

Date ModifiedUsernameFieldChange
2007-11-16 11:36jimstudtNew Issue
2007-11-16 23:55Christian GrothoffStatusnew => assigned
2007-11-16 23:55Christian GrothoffAssigned To => Christian Grothoff
2007-11-16 23:56Christian GrothoffStatusassigned => resolved
2007-11-16 23:56Christian GrothoffResolutionopen => fixed
2007-11-16 23:56Christian GrothoffNote Added: 0003198
2007-12-05 21:27Christian GrothoffStatusresolved => closed