From f154ae9de36eb11480e56ae793105a10aefeb37e Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Mon, 26 Apr 2021 09:58:23 +0200 Subject: [PATCH] easy: ignore sigpipe in curl_easy_send Closes #6965 --- lib/easy.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/easy.c b/lib/easy.c index 3deb69a9a..8983dbcce 100644 --- a/lib/easy.c +++ b/lib/easy.c @@ -1171,6 +1171,7 @@ CURLcode curl_easy_send(struct Curl_easy *data, const void *buffer, CURLcode result; ssize_t n1; struct connectdata *c = NULL; + SIGPIPE_VARIABLE(pipe_st); if(Curl_is_in_callback(data)) return CURLE_RECURSIVE_API_CALL; @@ -1185,7 +1186,9 @@ CURLcode curl_easy_send(struct Curl_easy *data, const void *buffer, Curl_attach_connnection(data, c); *n = 0; + sigpipe_ignore(data, &pipe_st); result = Curl_write(data, sfd, buffer, buflen, &n1); + sigpipe_restore(&pipe_st); if(n1 == -1) return CURLE_SEND_ERROR;