Segfault less during consensus generation without params

If no authority votes on any params, Tor authorities segfault when
trying to make a new consensus from the votes. Let's change that.
This commit is contained in:
Sebastian Hahn 2010-03-21 06:03:13 +01:00
parent 28cda33299
commit cae769d646
2 changed files with 11 additions and 4 deletions

View File

@ -0,0 +1,5 @@
o Minor bugfixes:
- When none of the authorities vote on any params, Tor segfaults when
trying to make the consensus from the votes. This is currently
not critical, because authorities do include params in their votes.
Bugfix on 0.2.2.10-alpha, fixes bug 1322.

View File

@ -1757,10 +1757,12 @@ networkstatus_compute_consensus(smartlist_t *votes,
// Parse params, extract BW_WEIGHT_SCALE if present // Parse params, extract BW_WEIGHT_SCALE if present
// DO NOT use consensus_param_bw_weight_scale() in this code! // DO NOT use consensus_param_bw_weight_scale() in this code!
// The consensus is not formed yet! // The consensus is not formed yet!
if (params) {
if (strcmpstart(params, "bwweightscale=") == 0) if (strcmpstart(params, "bwweightscale=") == 0)
bw_weight_param = params; bw_weight_param = params;
else else
bw_weight_param = strstr(params, " bwweightscale="); bw_weight_param = strstr(params, " bwweightscale=");
}
if (bw_weight_param) { if (bw_weight_param) {
int ok=0; int ok=0;