aboutsummaryrefslogtreecommitdiff
path: root/changes/bug20203
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2016-09-21 19:01:12 -0400
committerNick Mathewson <nickm@torproject.org>2016-09-22 15:16:07 -0400
commite4aaf7666028c30866ad63053ad9f6eb6bf16bf7 (patch)
tree55bef18ed302697fe3e52f59c2ef66e188c38dce /changes/bug20203
parent11edbf480870975a354ec13ee67958492a0fd690 (diff)
downloadtor-e4aaf7666028c30866ad63053ad9f6eb6bf16bf7.tar.gz
tor-e4aaf7666028c30866ad63053ad9f6eb6bf16bf7.zip
When clearing cells from a circuit for OOM reasons, tell cmux we did so.
Not telling the cmux would sometimes cause an assertion failure in relay.c when we tried to get an active circuit and found an "active" circuit with no cells. Additionally, replace that assert with a test and a log message. Fix for bug 20203. This is actually probably a bugfix on 0.2.8.1-alpha, specifically my code in 8b4e5b7ee902fb7fa0776 where I made circuit_mark_for_close_() do less in order to simplify our call graph. Thanks to "cypherpunks" for help diagnosing.
Diffstat (limited to 'changes/bug20203')
-rw-r--r--changes/bug202036
1 files changed, 6 insertions, 0 deletions
diff --git a/changes/bug20203 b/changes/bug20203
new file mode 100644
index 0000000000..b4809ffbd6
--- /dev/null
+++ b/changes/bug20203
@@ -0,0 +1,6 @@
+ o Major bugfixes (relay, OOM handler)
+ - Fix a timing-dependent assertion failure that could occur when we
+ tried to flush from a circuit after having freed its cells because
+ of an out-of-memory condition. Fixes bug 20203; bugfix on
+ 0.2.8.1-alpha. Thanks to "cypherpunks" for help diagnosing this
+ one.