-const char miscutil_rcs[] = "$Id: miscutil.c,v 1.54 2007/09/19 20:28:37 fabiankeil Exp $";
+const char miscutil_rcs[] = "$Id: miscutil.c,v 1.56 2007/12/01 12:59:05 fabiankeil Exp $";
/*********************************************************************
*
* File : $Source: /cvsroot/ijbswa/current/miscutil.c,v $
*
* Revisions :
* $Log: miscutil.c,v $
+ * Revision 1.56 2007/12/01 12:59:05 fabiankeil
+ * Some sanity checks for pick_from_range().
+ *
+ * Revision 1.55 2007/11/03 17:34:49 fabiankeil
+ * Log the "weak randomization factor" warning only
+ * once for mingw32 and provide some more details.
+ *
* Revision 1.54 2007/09/19 20:28:37 fabiankeil
* If privoxy_strlcpy() is called with a "buffer" size
* of 0, don't touch whatever destination points to.
{
return(1);
}
- for(i = lastchar; i <= *pat; i++)
+ for (i = lastchar; i <= *pat; i++)
{
- charmap[i / 8] |= (1 << (i % 8));
+ charmap[i / 8] |= (unsigned char)(1 << (i % 8));
}
}
else
{
- charmap[*pat / 8] |= (1 << (*pat % 8));
+ charmap[*pat / 8] |= (unsigned char)(1 << (*pat % 8));
lastchar = *pat;
}
}
long int pick_from_range(long int range)
{
long int number;
+
+ assert(range != 0);
+ assert(range > 0);
+
+ if (range <= 0) return 0;
+
#ifdef HAVE_RANDOM
number = random() % range + 1;
#elif defined(FEATURE_PTHREAD)
#endif /* (def HAVE_RANDOM) */
- return (number);
+ return number;
}