Quellcode durchsuchen

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.
Roger Dingledine vor 13 Jahren
Ursprung
Commit
e50fa0d6cb
2 geänderte Dateien mit 7 neuen und 1 gelöschten Zeilen
  1. 6 0
      changes/bug7037
  2. 1 1
      src/or/command.c

+ 6 - 0
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.

+ 1 - 1
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.");