From 1337133b489f02e5cbde81a87051abaf6e1a2799 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timo=20Ter=C3=A4s?= Date: Fri, 18 Mar 2011 10:57:31 +0200 Subject: [PATCH 5/8] stdlib: fix arc4random return type to u_int32_t MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 Signed-off-by: Natanael Copa --- include/stdlib.h | 4 ++-- libc/stdlib/arc4random.c | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/include/stdlib.h b/include/stdlib.h index 352e58a..37e0248 100644 --- a/include/stdlib.h +++ b/include/stdlib.h @@ -910,8 +910,8 @@ extern int getloadavg (double __loadavg[], int __nelem) #endif #ifdef __UCLIBC_HAS_ARC4RANDOM__ -#include -extern uint32_t arc4random(void); +# include +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 c7aed66..7b9b12d 100644 --- a/libc/stdlib/arc4random.c +++ b/libc/stdlib/arc4random.c @@ -30,6 +30,7 @@ #include #include #include +#include #include #include #include @@ -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) -- 1.7.8.4