aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2018-05-16 12:11:45 -0400
committerNick Mathewson <nickm@torproject.org>2018-05-16 12:11:45 -0400
commitd3a972561aeb38d7b346be1826054c60bf3adfaa (patch)
treeac429bb8d542305b5b68032933600e0792792cb8
parent502d2c00625501f312496d842aeb16a840d4d7b0 (diff)
parentd1e4ffc710fd6620614d4f7f20f6ed5d1c266ae4 (diff)
downloadtor-d3a972561aeb38d7b346be1826054c60bf3adfaa.tar.gz
tor-d3a972561aeb38d7b346be1826054c60bf3adfaa.zip
Merge branch 'maint-0.2.9' into maint-0.3.1
-rw-r--r--changes/bug260725
-rw-r--r--src/or/relay.c1
2 files changed, 6 insertions, 0 deletions
diff --git a/changes/bug26072 b/changes/bug26072
new file mode 100644
index 0000000000..2489e4fbb5
--- /dev/null
+++ b/changes/bug26072
@@ -0,0 +1,5 @@
+ o Minor bugfixes (correctness, client):
+ - Upon receiving a malformed connected cell, stop processing the cell
+ immediately. Previously we would mark the connection for close, but
+ continue processing the cell as if the connection were open. Fixes bug
+ 26072; bugfix on 0.2.4.7-alpha.
diff --git a/src/or/relay.c b/src/or/relay.c
index 7a074d63da..2451f45c79 100644
--- a/src/or/relay.c
+++ b/src/or/relay.c
@@ -1461,6 +1461,7 @@ connection_edge_process_relay_cell_not_open(
"Got a badly formatted connected cell. Closing.");
connection_edge_end(conn, END_STREAM_REASON_TORPROTOCOL);
connection_mark_unattached_ap(entry_conn, END_STREAM_REASON_TORPROTOCOL);
+ return 0;
}
if (tor_addr_family(&addr) != AF_UNSPEC) {
const sa_family_t family = tor_addr_family(&addr);