From 84ed086d4858ed14de4a4a8bfc3283a73b7c4657 Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Tue, 3 Jun 2014 18:19:08 -0400 Subject: Fix ancient code that only checked circ_id, not circ_id and chan This code mis-handled the case where a circuit got the same circuit ID in both directions. I found three instances of it in the codebase, by grepping for [pn]_circ_id. Because of the issue in command_process_relay_cell(), this would have made roughly one circuit in a million completely nonfunctional. Fixes bug 12195. --- changes/bug12195 | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 changes/bug12195 (limited to 'changes') diff --git a/changes/bug12195 b/changes/bug12195 new file mode 100644 index 000000000..f798129e6 --- /dev/null +++ b/changes/bug12195 @@ -0,0 +1,7 @@ + o Major bugfixes: + - When a circuit accidentally has the same circuit ID for its + forward and reverse direction, correctly detect the direction of + cells using that circuit. Previously, this would have made + roughly one circuit in a million non-functional. Fixes bug + 12195; this is a bugfix on every version of Tor. + -- cgit v1.2.3