summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Bühler <stbuehler@web.de>2010-04-07 15:54:28 +0000
committerStefan Bühler <stbuehler@web.de>2010-04-07 15:54:28 +0000
commit221af3d59d32b1947baabb7a495f1100caa2b4aa (patch)
tree5fdbcb657a1b7cc3852e676bc965c4be362fc690
parente789ea231f6930736cc02272968dd97f0ddb0607 (diff)
downloadlighttpd-git-221af3d59d32b1947baabb7a495f1100caa2b4aa.tar.gz
mod_proxy: close connection on write error (fixes #2114)
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@2719 152afb58-edef-0310-8abb-c4023f1b3aa9
-rw-r--r--NEWS1
-rw-r--r--src/mod_proxy.c4
2 files changed, 3 insertions, 2 deletions
diff --git a/NEWS b/NEWS
index cb214b2e..2353c9e7 100644
--- a/NEWS
+++ b/NEWS
@@ -6,6 +6,7 @@ NEWS
- 1.4.27 -
* Fix handling return value of SSL_CTX_set_options (fixes #2157, thx mlcreech)
* Fix mod_proxy HUP handling (send final chunk, fix usage counter)
+ * mod_proxy: close connection on write error (fixes #2114)
- 1.4.26 - 2010-02-07
* Fix request parser to handle packets with splitted \r\n\r\n (fixes #2105)
diff --git a/src/mod_proxy.c b/src/mod_proxy.c
index 93a65cbd..257dd390 100644
--- a/src/mod_proxy.c
+++ b/src/mod_proxy.c
@@ -852,11 +852,11 @@ static handler_t proxy_write_request(server *srv, handler_ctx *hctx) {
if (-1 == ret) { /* error on our side */
log_error_write(srv, __FILE__, __LINE__, "ssd", "write failed:", strerror(errno), errno);
- return HANDLER_WAIT_FOR_EVENT;
+ return HANDLER_ERROR;
} else if (-2 == ret) { /* remote close */
log_error_write(srv, __FILE__, __LINE__, "ssd", "write failed, remote connection close:", strerror(errno), errno);
- return HANDLER_WAIT_FOR_EVENT;
+ return HANDLER_ERROR;
}
if (hctx->wb->bytes_out == hctx->wb->bytes_in) {