[tor-commits] [tor/master] Add an assertion to try to please coverity.

nickm at torproject.org nickm at torproject.org
Fri Jul 28 14:23:15 UTC 2017


commit decb9276852b4cb7f9f2472c81cd47fbab60845f
Author: Nick Mathewson <nickm at torproject.org>
Date:   Fri Jul 28 10:17:14 2017 -0400

    Add an assertion to try to please coverity.
    
    Coverity, for some reason, thought that weight_scale might be 0,
    leading to a divide-by-zero error.
---
 src/or/routerparse.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/or/routerparse.c b/src/or/routerparse.c
index f4e87a00d..8823c0b53 100644
--- a/src/or/routerparse.c
+++ b/src/or/routerparse.c
@@ -2854,7 +2854,6 @@ compare_vote_routerstatus_entries(const void **_a, const void **_b)
 int
 networkstatus_verify_bw_weights(networkstatus_t *ns, int consensus_method)
 {
-  int64_t weight_scale;
   int64_t G=0, M=0, E=0, D=0, T=0;
   double Wgg, Wgm, Wgd, Wmg, Wmm, Wme, Wmd, Weg, Wem, Wee, Wed;
   double Gtotal=0, Mtotal=0, Etotal=0;
@@ -2862,7 +2861,8 @@ networkstatus_verify_bw_weights(networkstatus_t *ns, int consensus_method)
   int valid = 1;
   (void) consensus_method;
 
-  weight_scale = networkstatus_get_weight_scale_param(ns);
+  const int64_t weight_scale = networkstatus_get_weight_scale_param(ns);
+  tor_assert(weight_scale >= 1);
   Wgg = networkstatus_get_bw_weight(ns, "Wgg", -1);
   Wgm = networkstatus_get_bw_weight(ns, "Wgm", -1);
   Wgd = networkstatus_get_bw_weight(ns, "Wgd", -1);



More information about the tor-commits mailing list