Enforces originally intended usage of rand_r()'s API.
Mostly just paranoia, maybe.
struct rpki_uri *mft_uri, struct rpp **pp)
{
char const *tal;
- int i, j;
+ unsigned int i, j;
struct FileAndHash *fah, *tmpfah;
struct rpki_uri *uri;
int error;
- unsigned int rnd;
+ unsigned int seed, rnd;
- rnd = time(NULL) ^ getpid();
+ seed = time(NULL) ^ getpid();
*pp = rpp_create();
/* Fisher-Yates shuffle with modulo bias */
for (i = 0; i < mft->fileList.list.count - 1; i++) {
- rnd = rand_r(&rnd);
+ rnd = rand_r(&seed);
j = i + rnd % (mft->fileList.list.count - i);
tmpfah = mft->fileList.list.array[j];
mft->fileList.list.array[j] = mft->fileList.list.array[i];