Change to use arc4random_buf(3) if available

Signed-off-by: OBATA Akio <obache@wizdas.com>
(cherry picked from commit 027c45db6f)
pull/182/head
OBATA Akio 5 years ago committed by Slávek Banko
parent fafd412d64
commit eb6fecd543
No known key found for this signature in database
GPG Key ID: 608F5293A04BE668

@ -185,6 +185,7 @@
#cmakedefine HAVE_ARC4RANDOM 1 #cmakedefine HAVE_ARC4RANDOM 1
#cmakedefine DEV_RANDOM "@DEV_RANDOM@" #cmakedefine DEV_RANDOM "@DEV_RANDOM@"
#cmakedefine HAVE_ARC4RANDOM_BUF 1
#cmakedefine USE_PAM 1 #cmakedefine USE_PAM 1
#cmakedefine TDM_PAM_SERVICE "@TDM_PAM_SERVICE@" #cmakedefine TDM_PAM_SERVICE "@TDM_PAM_SERVICE@"

@ -98,6 +98,7 @@ if( NOT HAVE_ARC4RANDOM )
set( DEV_RANDOM "/dev/random" CACHE INTERNAL "" FORCE ) set( DEV_RANDOM "/dev/random" CACHE INTERNAL "" FORCE )
endif( ) endif( )
endif (NOT HAVE_ARC4RANDOM) endif (NOT HAVE_ARC4RANDOM)
check_function_exists( arc4random_buf HAVE_ARC4RANDOM_BUF )
# Xau # Xau
pkg_search_module( XAU xau ) pkg_search_module( XAU xau )

@ -432,7 +432,10 @@ AddPreGetEntropy( void )
int int
GenerateAuthData( char *auth, int len ) GenerateAuthData( char *auth, int len )
{ {
#ifdef HAVE_ARC4RANDOM #ifdef HAVE_ARC4RANDOM_BUF
arc4random_buf((void*)auth, (size_t)len);
return 1;
#elif defined(HAVE_ARC4RANDOM)
int i; int i;
unsigned *rnd = (unsigned *)auth; unsigned *rnd = (unsigned *)auth;
if (sizeof(unsigned) == 4) if (sizeof(unsigned) == 4)

Loading…
Cancel
Save