diff options
author | Timo Teräs <timo.teras@iki.fi> | 2011-03-18 10:57:31 +0200 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2011-12-23 15:49:01 +0100 |
commit | 8f71a37896be4ce64c009b369117b252eb4de366 (patch) | |
tree | d1732f240df4555e6a87285972b118b4ebba07ac | |
parent | b1aea0b3872b246cf17f04d5442a94e39e45203e (diff) | |
download | uClibc-alpine-8f71a37896be4ce64c009b369117b252eb4de366.tar.bz2 uClibc-alpine-8f71a37896be4ce64c009b369117b252eb4de366.tar.xz |
stdlib: fix arc4random return type to u_int32_t
It's documented to be u_int32_t and not uint32_t:
http://www.manpagez.com/man/3/arc4random/
This also fixes a major bug that stdlib.h includes stdint.h. Things
might go very wrong because stdint.h has conditional defines and
if stdlib.h is included before #define's for stdint.h we end up
missing things and breaking builds (e.g. openjdk).
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
-rw-r--r-- | include/stdlib.h | 4 | ||||
-rw-r--r-- | libc/stdlib/arc4random.c | 3 |
2 files changed, 4 insertions, 3 deletions
diff --git a/include/stdlib.h b/include/stdlib.h index e9a8b84c2..7b35840d8 100644 --- a/include/stdlib.h +++ b/include/stdlib.h @@ -902,8 +902,8 @@ extern int getloadavg (double __loadavg[], int __nelem) #endif #ifdef __UCLIBC_HAS_ARC4RANDOM__ -#include <stdint.h> -extern uint32_t arc4random(void); +# include <sys/types.h> +extern u_int32_t arc4random(void); extern void arc4random_stir(void); extern void arc4random_addrandom(unsigned char *, int); #endif diff --git a/libc/stdlib/arc4random.c b/libc/stdlib/arc4random.c index c7aed66b6..7b9b12d6f 100644 --- a/libc/stdlib/arc4random.c +++ b/libc/stdlib/arc4random.c @@ -30,6 +30,7 @@ #include <fcntl.h> #include <stdlib.h> #include <unistd.h> +#include <stdint.h> #include <sys/types.h> #include <sys/param.h> #include <sys/time.h> @@ -175,7 +176,7 @@ arc4random_addrandom(u_char *dat, int datlen) arc4_addrandom(&rs, dat, datlen); } -uint32_t +u_int32_t arc4random(void) { if (!rs_initialized) |