diff options
author | OBATA Akio <obache@wizdas.com> | 2019-08-18 18:28:04 +0900 |
---|---|---|
committer | Slávek Banko <slavek.banko@axis.cz> | 2019-08-18 15:39:32 +0200 |
commit | eb6fecd543a67412b06971162b37611631f1e0fc (patch) | |
tree | 4e77e9b07190aa9652d7a4f93df0049f49c01885 /tdm | |
parent | fafd412d640a738313f6a435fbc344ce482e8108 (diff) | |
download | tdebase-eb6fecd543a67412b06971162b37611631f1e0fc.tar.gz tdebase-eb6fecd543a67412b06971162b37611631f1e0fc.zip |
Change to use arc4random_buf(3) if available
Signed-off-by: OBATA Akio <obache@wizdas.com>
(cherry picked from commit 027c45db6f63a04eb31eac481f9264ab9760dce1)
Diffstat (limited to 'tdm')
-rw-r--r-- | tdm/ConfigureChecks.cmake | 1 | ||||
-rw-r--r-- | tdm/backend/genauth.c | 5 |
2 files changed, 5 insertions, 1 deletions
diff --git a/tdm/ConfigureChecks.cmake b/tdm/ConfigureChecks.cmake index cb333aa61..cb5615243 100644 --- a/tdm/ConfigureChecks.cmake +++ b/tdm/ConfigureChecks.cmake @@ -98,6 +98,7 @@ if( NOT HAVE_ARC4RANDOM ) set( DEV_RANDOM "/dev/random" CACHE INTERNAL "" FORCE ) endif( ) endif (NOT HAVE_ARC4RANDOM) +check_function_exists( arc4random_buf HAVE_ARC4RANDOM_BUF ) # Xau pkg_search_module( XAU xau ) diff --git a/tdm/backend/genauth.c b/tdm/backend/genauth.c index 6da95cce0..1bde2fc85 100644 --- a/tdm/backend/genauth.c +++ b/tdm/backend/genauth.c @@ -432,7 +432,10 @@ AddPreGetEntropy( void ) int 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; unsigned *rnd = (unsigned *)auth; if (sizeof(unsigned) == 4) |