diff options
author | Nick Mathewson <nickm@torproject.org> | 2013-04-02 10:36:15 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2013-04-02 10:36:15 -0400 |
commit | 2c155064aaa77d5a59169388c89723b8dd53d589 (patch) | |
tree | acd91c80fcfc02050a0c4d3ebc10b9a7117d1650 | |
parent | 8e05001dc60f6dc1e803f19e33cc2ccad12efc82 (diff) | |
parent | 16f2e4aa8ce76387c19687dd0c78c97929a852d6 (diff) | |
download | tor-2c155064aaa77d5a59169388c89723b8dd53d589.tar.gz tor-2c155064aaa77d5a59169388c89723b8dd53d589.zip |
Merge remote-tracking branch 'public/bug8427' into maint-0.2.4
-rw-r--r-- | changes/bug8427 | 5 | ||||
-rw-r--r-- | src/or/connection.c | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/changes/bug8427 b/changes/bug8427 new file mode 100644 index 0000000000..22b003fc38 --- /dev/null +++ b/changes/bug8427 @@ -0,0 +1,5 @@ + o Minor bugfixes: + - If we encounter a write failure on a SOCKS connection before we + finish our SOCKS handshake, don't warn that we closed the + connection before we could send a SOCKS reply. Fixes bug 8427; + bugfix on 0.1.0.1-rc. diff --git a/src/or/connection.c b/src/or/connection.c index 622eadcff9..2cc3d7486b 100644 --- a/src/or/connection.c +++ b/src/or/connection.c @@ -3439,6 +3439,10 @@ connection_handle_write_impl(connection_t *conn, int force) if (result < 0) { if (CONN_IS_EDGE(conn)) connection_edge_end_errno(TO_EDGE_CONN(conn)); + if (conn->type == CONN_TYPE_AP) { + /* writing failed; we couldn't send a SOCKS reply if we wanted to */ + TO_ENTRY_CONN(conn)->socks_request->has_finished = 1; + } connection_close_immediate(conn); /* Don't flush; connection is dead. */ connection_mark_for_close(conn); |