summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Perry <mikeperry-git@torproject.org>2023-04-18 16:51:07 +0000
committerMike Perry <mikeperry-git@torproject.org>2023-04-18 16:51:07 +0000
commit61aa4c3657b43e11414f8c607aadfad87eea40fd (patch)
treebe7229c94e11c39eec8389d5de11b60afb9863e3
parent2bb8988629b6d7ddb5a15d5490154c9a92e0c866 (diff)
downloadtor-61aa4c3657b43e11414f8c607aadfad87eea40fd.tar.gz
tor-61aa4c3657b43e11414f8c607aadfad87eea40fd.zip
Actually count exits with conflux support, rather than relays.
-rw-r--r--src/core/or/conflux_params.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/core/or/conflux_params.c b/src/core/or/conflux_params.c
index f149e3356c..dbf4ae5272 100644
--- a/src/core/or/conflux_params.c
+++ b/src/core/or/conflux_params.c
@@ -100,19 +100,28 @@ static void
count_exit_with_conflux_support(const networkstatus_t *ns)
{
double supported = 0.0;
+ int total_exits = 0;
if (!ns || smartlist_len(ns->routerstatus_list) == 0) {
return;
}
SMARTLIST_FOREACH_BEGIN(ns->routerstatus_list, const routerstatus_t *, rs) {
+ if (!rs->is_exit || rs->is_bad_exit) {
+ continue;
+ }
if (rs->pv.supports_conflux) {
supported++;
}
+ total_exits++;
} SMARTLIST_FOREACH_END(rs);
- exit_conflux_ratio =
- supported / smartlist_len(ns->routerstatus_list);
+ if (total_exits > 0) {
+ exit_conflux_ratio =
+ supported / total_exits;
+ } else {
+ exit_conflux_ratio = 0.0;
+ }
log_info(LD_GENERAL, "Consensus has %.2f %% Exit relays supporting Conflux",
exit_conflux_ratio * 100.0);