diff --git a/src/modules/tls/tls_rand.c b/src/modules/tls/tls_rand.c index 71d8de7bacf..2cdb2ec0efe 100644 --- a/src/modules/tls/tls_rand.c +++ b/src/modules/tls/tls_rand.c @@ -209,42 +209,38 @@ void ksr_kxlibssl_init(void) } } -#ifdef __OS_darwin -int ksr_kxlibssl_seed(const void *buf, int num) -#else +#ifdef KSRTLSVOID void ksr_kxlibssl_seed(const void *buf, int num) -#endif { -#ifdef __OS_darwin + ksr_kxlibssl_init(); + if(_ksr_kxlibssl_local_lock == 0 || _ksr_kxlibssl_local_method == 0) { + return; + } + if(_ksr_kxlibssl_local_method->seed == NULL) { + return; + } + lock_get(_ksr_kxlibssl_local_lock); + _ksr_kxlibssl_local_method->seed(buf, num); + lock_release(_ksr_kxlibssl_local_lock); +} +#else +int ksr_kxlibssl_seed(const void *buf, int num) +{ int ret; -#endif ksr_kxlibssl_init(); if(_ksr_kxlibssl_local_lock == 0 || _ksr_kxlibssl_local_method == 0) { -#ifdef __OS_darwin return 0; -#else - return; -#endif } if(_ksr_kxlibssl_local_method->seed == NULL) { -#ifdef __OS_darwin return 0; -#else - return; -#endif } lock_get(_ksr_kxlibssl_local_lock); -#ifdef __OS_darwin ret = _ksr_kxlibssl_local_method->seed(buf, num); -#else - _ksr_kxlibssl_local_method->seed(buf, num); -#endif lock_release(_ksr_kxlibssl_local_lock); -#ifdef __OS_darwin return ret; -#endif } +#endif int ksr_kxlibssl_bytes(unsigned char *buf, int num) { @@ -277,42 +273,39 @@ void ksr_kxlibssl_cleanup(void) lock_release(_ksr_kxlibssl_local_lock); } -#ifdef __OS_darwin -int ksr_kxlibssl_add(const void *buf, int num, double randomness) -#else +#ifdef KSRTLSVOID void ksr_kxlibssl_add(const void *buf, int num, int randomness) -#endif { -#ifdef __OS_darwin + ksr_kxlibssl_init(); + if(_ksr_kxlibssl_local_lock == 0 || _ksr_kxlibssl_local_method == 0) { + return; + } + if(_ksr_kxlibssl_local_method->add == NULL) { + return; + } + lock_get(_ksr_kxlibssl_local_lock); + _ksr_kxlibssl_local_method->add(buf, num, randomness); + lock_release(_ksr_kxlibssl_local_lock); +} +#else +int ksr_kxlibssl_add(const void *buf, int num, double randomness) +{ int ret; -#endif ksr_kxlibssl_init(); if(_ksr_kxlibssl_local_lock == 0 || _ksr_kxlibssl_local_method == 0) { -#ifdef __OS_darwin return 0; -#else - return; -#endif } if(_ksr_kxlibssl_local_method->add == NULL) { -#ifdef __OS_darwin return 0; -#else - return; -#endif } lock_get(_ksr_kxlibssl_local_lock); -#ifdef __OS_darwin ret = _ksr_kxlibssl_local_method->add(buf, num, randomness); -#else - _ksr_kxlibssl_local_method->add(buf, num, randomness); -#endif lock_release(_ksr_kxlibssl_local_lock); -#ifdef __OS_darwin + return ret; -#endif } +#endif int ksr_kxlibssl_pseudorand(unsigned char *buf, int num) {