-
-
-#ifndef HAVE_RANDOM
-/* For the systems without random: a really simple congruential RNG,
- only good enough for what Wget uses it for. Before you panic: this
- is not used for any kind of cryptography. */
-
-static long random_seed;
-
-#define RANDOM_A 9301
-#define RANDOM_C 49297
-#define RANDOM_M 233280
-
-static int
-random_1 (void)
-{
- if (!random_seed)
- random_seed = time (NULL);
- random_seed = (random_seed * RANDOM_A + RANDOM_C) % RANDOM_M;
- return random_seed;
-}
-
-long
-random (void)
-{
- /* Upper bits of random() are a bit more random. Compose random()
- from higher bits of three call to random(). */
- unsigned r1 = random_1 () >> 8;
- unsigned r2 = random_1 () >> 4;
- unsigned r3 = random_1 ();
- long result = r1 ^ r2 ^ r3;
-
- return result;
-}
-#endif /* not HAVE_RANDOM */