[tor-commits] [tor/master] Restore 8093 log messages to WARN severity, but rate limit

nickm at torproject.org nickm at torproject.org
Tue May 21 18:00:54 UTC 2013


commit f5820a1bf1447299d4dc0c0f1d7daf4b29863b8b
Author: Nick Mathewson <nickm at torproject.org>
Date:   Tue May 21 14:00:30 2013 -0400

    Restore 8093 log messages to WARN severity, but rate limit
    
    See #8093 for discussion
---
 changes/bug8093.part2 |    3 +++
 src/or/relay.c        |    6 ++++--
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/changes/bug8093.part2 b/changes/bug8093.part2
new file mode 100644
index 0000000..263c7e8
--- /dev/null
+++ b/changes/bug8093.part2
@@ -0,0 +1,3 @@
+  o Minor features:
+    - Return the "unexpected sendme" warnings to a warn severity, but make
+      them rate limited. Related to ticket #8093.
diff --git a/src/or/relay.c b/src/or/relay.c
index d57ceaa..cef138e 100644
--- a/src/or/relay.c
+++ b/src/or/relay.c
@@ -1494,7 +1494,8 @@ connection_edge_process_relay_cell(cell_t *cell, circuit_t *circ,
         if (layer_hint) {
           if (layer_hint->package_window + CIRCWINDOW_INCREMENT >
                 CIRCWINDOW_START_MAX) {
-            log_fn(LOG_PROTOCOL_WARN, LD_PROTOCOL,
+            static struct ratelim_t exit_warn_ratelim = RATELIM_INIT(600);
+            log_fn_ratelim(&exit_warn_ratelim, LOG_WARN, LD_PROTOCOL,
                    "Unexpected sendme cell from exit relay. "
                    "Closing circ.");
             return -END_CIRC_REASON_TORPROTOCOL;
@@ -1506,7 +1507,8 @@ connection_edge_process_relay_cell(cell_t *cell, circuit_t *circ,
         } else {
           if (circ->package_window + CIRCWINDOW_INCREMENT >
                 CIRCWINDOW_START_MAX) {
-            log_fn(LOG_PROTOCOL_WARN, LD_PROTOCOL,
+            static struct ratelim_t client_warn_ratelim = RATELIM_INIT(600);
+            log_fn_ratelim(&client_warn_ratelim, LOG_WARN, LD_PROTOCOL,
                    "Unexpected sendme cell from client. "
                    "Closing circ (window %d).",
                    circ->package_window);



More information about the tor-commits mailing list