diff options
author | David Goulet <dgoulet@torproject.org> | 2017-09-12 11:02:40 -0400 |
---|---|---|
committer | David Goulet <dgoulet@torproject.org> | 2017-09-12 11:03:13 -0400 |
commit | 98953b1fc29a693aa797989402f7205523448408 (patch) | |
tree | 0c3e832034461a7b8cf18e7db9569ab4020bf45a | |
parent | 184bd2258673f9e33e43cfc1264da78f74ad78a4 (diff) | |
download | tor-98953b1fc29a693aa797989402f7205523448408.tar.gz tor-98953b1fc29a693aa797989402f7205523448408.zip |
hs-v3: Rate limit some log statements
Also fix an indentation issue.
Closes #23480
Signed-off-by: David Goulet <dgoulet@torproject.org>
-rw-r--r-- | src/or/hs_service.c | 10 | ||||
-rw-r--r-- | src/or/nodelist.c | 6 |
2 files changed, 12 insertions, 4 deletions
diff --git a/src/or/hs_service.c b/src/or/hs_service.c index 5759aa8127..a8883e03a0 100644 --- a/src/or/hs_service.c +++ b/src/or/hs_service.c @@ -2978,8 +2978,14 @@ hs_service_lists_fnames_for_sandbox(smartlist_t *file_list, void hs_service_dir_info_changed(void) { - log_info(LD_REND, "New dirinfo arrived: consider reuploading descriptor"); - consider_republishing_hs_descriptors = 1; + if (hs_service_get_num_services() > 0) { + /* New directory information usually goes every consensus so rate limit + * every 30 minutes to not be too conservative. */ + static struct ratelim_t dir_info_changed_ratelim = RATELIM_INIT(30 * 60); + log_fn_ratelim(&dir_info_changed_ratelim, LOG_INFO, LD_REND, + "New dirinfo arrived: consider reuploading descriptor"); + consider_republishing_hs_descriptors = 1; + } } /* Called when we get an INTRODUCE2 cell on the circ. Respond to the cell and diff --git a/src/or/nodelist.c b/src/or/nodelist.c index 01a0e9e856..df735a9d24 100644 --- a/src/or/nodelist.c +++ b/src/or/nodelist.c @@ -300,14 +300,16 @@ node_set_hsdir_index(node_t *node, const networkstatus_t *ns) tor_assert(ns); if (!networkstatus_is_live(ns, now)) { - log_info(LD_GENERAL, "Not setting hsdir index with a non-live consensus."); + static struct ratelim_t live_consensus_ratelim = RATELIM_INIT(30 * 60); + log_fn_ratelim(&live_consensus_ratelim, LOG_INFO, LD_GENERAL, + "Not setting hsdir index with a non-live consensus."); goto done; } node_identity_pk = node_get_ed25519_id(node); if (node_identity_pk == NULL) { log_debug(LD_GENERAL, "ed25519 identity public key not found when " - "trying to build the hsdir indexes for node %s", + "trying to build the hsdir indexes for node %s", node_describe(node)); goto done; } |