diff options
author | Roger Dingledine <arma@torproject.org> | 2012-07-06 08:57:29 -0400 |
---|---|---|
committer | Roger Dingledine <arma@torproject.org> | 2012-07-06 08:57:29 -0400 |
commit | 27ec0248d2460cdfc52462d313272c206ab46f02 (patch) | |
tree | f39707c07e960c0f8c72903a1f3384f66282964e /src/or/relay.c | |
parent | 62c1311b3ab57c61488ecfc8c94fabb5f2c70e6e (diff) | |
parent | 419f541aa737d3ab230ec2595d0614e2d94a5e44 (diff) | |
download | tor-27ec0248d2460cdfc52462d313272c206ab46f02.tar.gz tor-27ec0248d2460cdfc52462d313272c206ab46f02.zip |
Merge remote-tracking branch 'nickm/bug6271_part_a' into maint-0.2.3
Diffstat (limited to 'src/or/relay.c')
-rw-r--r-- | src/or/relay.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/or/relay.c b/src/or/relay.c index 3f894bfe1f..3e418ea13f 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); |