Skip to content

In router_is_active, don't require non-zero bandwidthcapacity

This check was originally added in 962765a3, with the intent of preventing relays with 0 measured bandwidth from being listed in the consensus (part of fixing #13000 (closed)).

Currently, that decision and other relevant places effectively use dirserv_get_credible_bandwidth_kb, which prefers bwauth-measured bandwidth over the self-reported bandwidthcapacity, making this check mostly redundant.

i.e. this change should only affect behavior when the relay has uploaded a descriptor with bandwidthcapacity=0 and we have a non-zero measured bandwidth, in which case we'll still trust the measured bandwidth. This is what we want when bootstrapping a network (e.g. for testing), since it allows us to initialize bandwidths using a bandwidth authority file.

A relay can still cause router_is_active to return false by setting the hibernate flag.

Also see discussion in #40917 (closed).

Fixes #40917 (closed).

Merge request reports