From: Roger Dingledine Date: Wed, 13 Jan 2010 04:10:45 +0000 (-0500) Subject: resolve path weighting edge case; fixes bug 1203 X-Git-Tag: tor-0.2.2.7-alpha~12 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=045081322730e87df61cc1749575e3ec4d7955a8;p=thirdparty%2Ftor.git resolve path weighting edge case; fixes bug 1203 --- diff --git a/src/or/routerlist.c b/src/or/routerlist.c index 72b890b9fd..d7546a7a8b 100644 --- a/src/or/routerlist.c +++ b/src/or/routerlist.c @@ -1752,6 +1752,8 @@ smartlist_choose_by_bandwidth(smartlist_t *sl, bandwidth_weight_rule_t rule, /* Almost done: choose a random value from the bandwidth weights. */ rand_bw = crypto_rand_uint64(total_bw); + rand_bw++; /* crypto_rand_uint64() counts from 0, and we need to count + * from 1 below. See bug 1203 for details. */ /* Last, count through sl until we get to the element we picked */ tmp = 0;