aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2018-05-16 12:11:40 -0400
committerNick Mathewson <nickm@torproject.org>2018-05-16 12:11:40 -0400
commitd1e4ffc710fd6620614d4f7f20f6ed5d1c266ae4 (patch)
treec1c71107fff0efdb9d97c81bfa81c0bc16f82132
parent033e4723f3651062779ff64a619ec526950857f5 (diff)
parent5eb2d5888065420b44ad237d000dfb7c3656c2ef (diff)
downloadtor-d1e4ffc710fd6620614d4f7f20f6ed5d1c266ae4.tar.gz
tor-d1e4ffc710fd6620614d4f7f20f6ed5d1c266ae4.zip
Merge branch 'bug26072_029' into maint-0.2.9
-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 22ce767523..1c791e02cc 100644
--- a/src/or/relay.c
+++ b/src/or/relay.c
@@ -1323,6 +1323,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);