compute_weighted_bandwidths() broken for dirauths
-
- View options
Closed
compute_weighted_bandwidths() broken for dirauths
Copy reference -
Report abuse
- View options
- Truncate descriptions
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_ts 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).