compute_weighted_bandwidths() broken for dirauths
I suspect that compute_weighted_bandwidths()
is broken for dirauths. All the booleans is_guard
, is_exit
, etc. are populated according to the node_t
.
However, nodelist_set_consensus()
which creates those node_t
s does not fill in those fields if we are a dirauth:
if (!authdir) {
node->is_valid = rs->is_valid;
node->is_running = rs->is_flagged_running;
node->is_fast = rs->is_fast;
node->is_stable = rs->is_stable;
node->is_possible_guard = rs->is_possible_guard;
...
I don't think this has any big implications, but dirauths are probably doing the wrong path selection. Maybe it's more important if someone is doing bwauth measurements using the dirauth code (if that even makes sense).