From: Tyson Smith <[email protected]>

Removed the block at the beginning of rand32() that just basically |s and ^s
rand() with rand() or a more interesting number to basically get rand again.
This is just an expensive way of getting a random number. Merged the small
switch case from __rand32() in to rand32() now that there is room.
---
 random.c | 31 ++-----------------------------
 1 file changed, 2 insertions(+), 29 deletions(-)

diff --git a/random.c b/random.c
index bf32648..ec20656 100644
--- a/random.c
+++ b/random.c
@@ -106,10 +106,9 @@ static unsigned long rept_byte(void)
 }
 
 /*
- * "selector" function for 32bit random.
- * only called from rand32()
+ * Generate, and munge a 32bit number.
  */
-static unsigned int __rand32(void)
+unsigned int rand32(void)
 {
        unsigned long r = 0;
 
@@ -125,32 +124,6 @@ static unsigned int __rand32(void)
        case 4: return get_interesting_value();
        }
 
-       return r;
-}
-
-/*
- * Generate, and munge a 32bit number.
- */
-unsigned int rand32(void)
-{
-       unsigned long r = 0;
-
-       r = __rand32();
-
-       if (rand_bool()) {
-               unsigned int i;
-               unsigned int rounds;
-
-               /* mangle it. */
-               rounds = rand() % 3;
-               for (i = 0; i < rounds; i++) {
-                       if (rand_bool())
-                               r |= __rand32();
-                       else
-                               r ^= __rand32();
-               }
-       }
-
        /* Sometimes deduct it from INT_MAX */
        if (rand_bool())
                r = INT_MAX - r;
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe trinity" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to