diff options
author | Nick Mathewson <nickm@torproject.org> | 2018-08-21 10:12:04 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2018-08-21 10:12:04 -0400 |
commit | ff0be080598a8719032fd8c57aed9a42888b97b0 (patch) | |
tree | 388d39ad291022c7916d15a3369377ee41e7bf8f | |
parent | c798957b5925b637896bf162f58aca806235c2a5 (diff) | |
download | tor-ff0be080598a8719032fd8c57aed9a42888b97b0.tar.gz tor-ff0be080598a8719032fd8c57aed9a42888b97b0.zip |
Fix a bug warning when sending an error on an HTTPTunnelPort conn
Fixes bug 26470; bugfix on 0.3.2.1-alpha.
-rw-r--r-- | changes/bug26470 | 4 | ||||
-rw-r--r-- | src/or/connection_edge.c | 6 |
2 files changed, 8 insertions, 2 deletions
diff --git a/changes/bug26470 b/changes/bug26470 new file mode 100644 index 0000000000..854ec7ea72 --- /dev/null +++ b/changes/bug26470 @@ -0,0 +1,4 @@ + o Minor bugfixes (HTTP tunnel): + - Fix a bug warning when closing an HTTP tunnel connection due to + an HTTP request we couldn't handle. Fixes bug 26470; bugfix on + 0.3.2.1-alpha. diff --git a/src/or/connection_edge.c b/src/or/connection_edge.c index f178917f0b..b4e544c8f6 100644 --- a/src/or/connection_edge.c +++ b/src/or/connection_edge.c @@ -2537,8 +2537,11 @@ connection_ap_process_http_connect(entry_connection_t *conn) err: if (BUG(errmsg == NULL)) errmsg = "HTTP/1.0 400 Bad Request\r\n\r\n"; - log_warn(LD_EDGE, "Saying %s", escaped(errmsg)); + log_info(LD_EDGE, "HTTP tunnel error: saying %s", escaped(errmsg)); connection_buf_add(errmsg, strlen(errmsg), ENTRY_TO_CONN(conn)); + /* Mark it as "has_finished" so that we don't try to send an extra socks + * reply. */ + conn->socks_request->has_finished = 1; connection_mark_unattached_ap(conn, END_STREAM_REASON_HTTPPROTOCOL| END_STREAM_REASON_FLAG_ALREADY_SOCKS_REPLIED); @@ -4162,4 +4165,3 @@ connection_edge_free_all(void) smartlist_free(pending_entry_connections); pending_entry_connections = NULL; } - |