diff options
author | Nick Mathewson <nickm@torproject.org> | 2017-10-23 08:53:14 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2017-10-23 08:53:14 -0400 |
commit | 6f87a85897ca82fac9fc132e0f0cf41eacab20d4 (patch) | |
tree | e2709e42d8dd689f7a41ae866f4c1f5c1604dcf3 | |
parent | 91c17ffbd61348e63cac81e90583f0b22b3c17d4 (diff) | |
parent | f7222e6d8cf31ce0e2a4653477ab42645c045db6 (diff) | |
download | tor-6f87a85897ca82fac9fc132e0f0cf41eacab20d4.tar.gz tor-6f87a85897ca82fac9fc132e0f0cf41eacab20d4.zip |
Merge remote-tracking branch 'public/bug23690_028' into maint-0.2.8
-rw-r--r-- | changes/bug23690 | 5 | ||||
-rw-r--r-- | src/or/circuitlist.c | 1 |
2 files changed, 6 insertions, 0 deletions
diff --git a/changes/bug23690 b/changes/bug23690 new file mode 100644 index 0000000000..36ff32e499 --- /dev/null +++ b/changes/bug23690 @@ -0,0 +1,5 @@ + o Major bugfixes (relay, crash, assertion failure): + - Fix a timing-based assertion failure that could occur when the + circuit out-of-memory handler freed a connection's output buffer. + Fixes bug 23690; bugfix on 0.2.6.1-alpha. + diff --git a/src/or/circuitlist.c b/src/or/circuitlist.c index d7dbfe5744..b710485908 100644 --- a/src/or/circuitlist.c +++ b/src/or/circuitlist.c @@ -1939,6 +1939,7 @@ single_conn_free_bytes(connection_t *conn) if (conn->outbuf) { result += buf_allocation(conn->outbuf); buf_clear(conn->outbuf); + conn->outbuf_flushlen = 0; } if (conn->type == CONN_TYPE_DIR) { dir_connection_t *dir_conn = TO_DIR_CONN(conn); |