Fix verify random bytes filling

Shawn Lewis <shawnlewis@google.com> reports:

---

verify.c: fill_random_bytes() doesn't work as intended.

drand48 on linux returns a double whose value is evenly distributed between
0.0 and 0.1. This is not the same as having an 8-byte value where each bit
has the same chance of being 0 as it does of being 1.

I'd fix this but it should probably be done in a cross-platformish way and
I'm not quite sure how to do it. Maybe just use smaller randoms? Have an
os_random_uint32?

---

I just got rid of os_random_double() and used os_random_long(),
truncating that to an unsigned integer.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
diff --git a/verify.c b/verify.c
index 32e7a04..794244a 100644
--- a/verify.c
+++ b/verify.c
@@ -12,10 +12,10 @@
 			      unsigned char *p, unsigned int len)
 {
 	unsigned int todo;
-	double r;
+	int r;
 
 	while (len) {
-		r = os_random_double(&td->verify_state);
+		r = os_random_long(&td->verify_state);
 
 		/*
 		 * lrand48_r seems to be broken and only fill the bottom