diff --git a/libmisc/salt.c b/libmisc/salt.c index 0aeff738..9c5ca006 100644 --- a/libmisc/salt.c +++ b/libmisc/salt.c @@ -114,12 +114,6 @@ static long read_random_bytes (void) { long randval = 0; -#ifdef HAVE_ARC4RANDOM_BUF - /* arc4random_buf, if it exists, can never fail. */ - arc4random_buf (&randval, sizeof (randval)); - goto end; -#endif - #ifdef HAVE_GETENTROPY /* getentropy may exist but lack kernel support. */ if (getentropy (&randval, sizeof (randval)) == 0) { @@ -134,6 +128,12 @@ static long read_random_bytes (void) } #endif +#ifdef HAVE_ARC4RANDOM_BUF + /* arc4random_buf, if it exists, can never fail. */ + arc4random_buf (&randval, sizeof (randval)); + goto end; +#endif + /* Use /dev/urandom as a last resort. */ FILE *f = fopen ("/dev/urandom", "r"); if (NULL == f) {