BUG/MINOR: tools: fix statistical_prng_range()'s output range

This function was added by commit 84ebfabf7 ("MINOR: tools: add
statistical_prng_range() to get a random number over a range") but it
contains a bug on the range, since mul32hi() covers the whole input
range, we must pass it range-1. For now it didn't have any impact, but
if used to find an array's index it will cause trouble.

This should be backported to 2.4.
diff --git a/include/haproxy/tools.h b/include/haproxy/tools.h
index 90d46a6..3059fa8 100644
--- a/include/haproxy/tools.h
+++ b/include/haproxy/tools.h
@@ -1063,7 +1063,7 @@
  */
 static inline uint statistical_prng_range(uint range)
 {
-	return mul32hi(statistical_prng(), range);
+	return mul32hi(statistical_prng(), range ? range - 1 : 0);
 }
 
 /* Update array <fp> with the character transition <prev> to <curr>. If <prev>