summaryrefslogtreecommitdiff
path: root/src/gw_backend.c
diff options
context:
space:
mode:
authorGlenn Strauss <gstrauss@gluelogic.com>2022-03-25 02:13:54 -0400
committerGlenn Strauss <gstrauss@gluelogic.com>2022-03-25 08:43:42 -0400
commitb0e43f3bf7607598fd87197d3f8cce90efb95175 (patch)
treef19177249562144f3cc56eab374f9825909ea438 /src/gw_backend.c
parent38a01d98fff1c5fe096a833a6ec2922d9653548f (diff)
downloadlighttpd-git-b0e43f3bf7607598fd87197d3f8cce90efb95175.tar.gz
[core] reduce trace on Upgrade backend connection
reduce trace on Upgrade'd backend connection when ECONNRESET received, which, for example, apparently might occur if a backend calls close() on socket without first calling shutdown(fd, SHUT_WR) -- seen on Linux kernel 5.16.15 where lighttpd received ECONNRESET when trying to read() (instead of receiving EOF).
Diffstat (limited to 'src/gw_backend.c')
-rw-r--r--src/gw_backend.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gw_backend.c b/src/gw_backend.c
index 83b77460..b125e050 100644
--- a/src/gw_backend.c
+++ b/src/gw_backend.c
@@ -2412,7 +2412,8 @@ static handler_t gw_recv_response_error(gw_handler_ctx * const hctx, request_st
"socket: %s for %s?%.*s, closing connection",
(long long)hctx->wb.bytes_out, proc->connection_name->ptr,
r->uri.path.ptr, BUFFER_INTLEN_PTR(&r->uri.query));
- } else if (!light_btst(r->resp_htags, HTTP_HEADER_UPGRADE)) {
+ } else if (!light_btst(r->resp_htags, HTTP_HEADER_UPGRADE)
+ && !r->h2_connect_ext) {
log_error(r->conf.errh, __FILE__, __LINE__,
"response already sent out, but backend returned error on "
"socket: %s for %s?%.*s, terminating connection",