summaryrefslogtreecommitdiff
path: root/src/or/connection_edge.c
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2018-05-14 14:25:07 -0400
committerNick Mathewson <nickm@torproject.org>2018-05-14 14:25:07 -0400
commita394a2dd86579495797432114f62ea3265ed5ed0 (patch)
tree90da2ee5c31e850fb59ba978dcfaab1865f1945d /src/or/connection_edge.c
parenta9ef335c1b220ad632aad1d75f671a2fcd2b0863 (diff)
parentfd504587d56d4062bccb0d815f4fd925fb8eb33c (diff)
downloadtor-a394a2dd86579495797432114f62ea3265ed5ed0.tar.gz
tor-a394a2dd86579495797432114f62ea3265ed5ed0.zip
Merge branch 'bug25903_v5_squashed'
Diffstat (limited to 'src/or/connection_edge.c')
-rw-r--r--src/or/connection_edge.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/or/connection_edge.c b/src/or/connection_edge.c
index 28e18aa853..046369af60 100644
--- a/src/or/connection_edge.c
+++ b/src/or/connection_edge.c
@@ -3527,10 +3527,17 @@ connection_exit_begin_conn(cell_t *cell, circuit_t *circ)
n_stream->deliver_window = STREAMWINDOW_START;
if (circ->purpose == CIRCUIT_PURPOSE_S_REND_JOINED) {
+ int ret;
tor_free(address);
/* We handle this circuit and stream in this function for all supported
* hidden service version. */
- return handle_hs_exit_conn(circ, n_stream);
+ ret = handle_hs_exit_conn(circ, n_stream);
+
+ if (ret == 0) {
+ /* This was a valid cell. Count it as delivered + overhead. */
+ circuit_read_valid_data(origin_circ, rh.length);
+ }
+ return ret;
}
tor_strlower(address);
n_stream->base_.address = address;