aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2012-07-06 08:59:26 -0400
committerRoger Dingledine <arma@torproject.org>2012-07-06 08:59:26 -0400
commit1fee920999bb51e2831b03faff7dabbcf20355e7 (patch)
treedfecae67e5df8298223b4806cb31281a928c23f4 /src
parent7e1a0bb24e40bbb02a458b5a903703c065792ddc (diff)
parent27ec0248d2460cdfc52462d313272c206ab46f02 (diff)
downloadtor-1fee920999bb51e2831b03faff7dabbcf20355e7.tar
tor-1fee920999bb51e2831b03faff7dabbcf20355e7.tar.gz
Merge branch 'maint-0.2.3'
Diffstat (limited to 'src')
-rw-r--r--src/or/relay.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/or/relay.c b/src/or/relay.c
index 3f894bfe1..3e418ea13 100644
--- a/src/or/relay.c
+++ b/src/or/relay.c
@@ -1263,7 +1263,7 @@ connection_edge_process_relay_cell(cell_t *cell, circuit_t *circ,
"'connected' received, no conn attached anymore. Ignoring.");
return 0;
case RELAY_COMMAND_SENDME:
- if (!conn) {
+ if (!rh.stream_id) {
if (layer_hint) {
layer_hint->package_window += CIRCWINDOW_INCREMENT;
log_debug(LD_APP,"circ-level sendme at origin, packagewindow %d.",
@@ -1278,6 +1278,11 @@ connection_edge_process_relay_cell(cell_t *cell, circuit_t *circ,
}
return 0;
}
+ if (!conn) {
+ log_info(domain,"sendme cell dropped, unknown stream (streamid %d).",
+ rh.stream_id);
+ return 0;
+ }
conn->package_window += STREAMWINDOW_INCREMENT;
log_debug(domain,"stream-level sendme, packagewindow now %d.",
conn->package_window);