summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2012-10-03 20:17:37 -0400
committerRoger Dingledine <arma@torproject.org>2012-10-03 20:17:37 -0400
commite50fa0d6cb467e8f6d41995eb6d03d74e9f64e04 (patch)
tree9e98a27655f05e3a61b5a6565700835cfc509f9a
parentc88a4c51b4cd2d6d584231a44a6e4ea4ac7396a0 (diff)
downloadtor-e50fa0d6cb467e8f6d41995eb6d03d74e9f64e04.tar.gz
tor-e50fa0d6cb467e8f6d41995eb6d03d74e9f64e04.zip
Refuse extra create cells with reason "resource limit"
In the past we had used reason "internal", which is more vague than it needs to be. Resolves bug 7037.
-rw-r--r--changes/bug70376
-rw-r--r--src/or/command.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/changes/bug7037 b/changes/bug7037
new file mode 100644
index 0000000000..fc3a1ad1c5
--- /dev/null
+++ b/changes/bug7037
@@ -0,0 +1,6 @@
+ o Minor bugfixes:
+ - When relays refuse a "create" cell because their queue of pending
+ create cells is too big (typically because their cpu can't keep up
+ with the arrival rate), send back reason "resource limit" rather
+ than reason "internal", so network measurement scripts can get a
+ more accurate picture. Bugfix on 0.1.1.11-alpha; fixes bug 7037.
diff --git a/src/or/command.c b/src/or/command.c
index abf664c1e2..d8a409bc27 100644
--- a/src/or/command.c
+++ b/src/or/command.c
@@ -428,7 +428,7 @@ command_process_create_cell(cell_t *cell, or_connection_t *conn)
log_warn(LD_GENERAL,"Failed to hand off onionskin. Closing.%s",m);
tor_free(m);
}
- circuit_mark_for_close(TO_CIRCUIT(circ), END_CIRC_REASON_INTERNAL);
+ circuit_mark_for_close(TO_CIRCUIT(circ), END_CIRC_REASON_RESOURCELIMIT);
return;
}
log_debug(LD_OR,"success: handed off onionskin.");