aboutsummaryrefslogtreecommitdiff
path: root/src/util/crypto_random.c
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2014-03-05 12:47:52 +0000
committerChristian Grothoff <christian@grothoff.org>2014-03-05 12:47:52 +0000
commitbfa9a1100ed42addaf6c56a818c226a5fd9c6342 (patch)
tree06e3bd675d326866322ab081fc1da800cfef3f14 /src/util/crypto_random.c
parent80ba505bf6d8da52dd4fb371ed0f8578565260e5 (diff)
downloadgnunet-bfa9a1100ed42addaf6c56a818c226a5fd9c6342.tar.gz
gnunet-bfa9a1100ed42addaf6c56a818c226a5fd9c6342.zip
-fix ftbfs with older libgcrypt
Diffstat (limited to 'src/util/crypto_random.c')
-rw-r--r--src/util/crypto_random.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/util/crypto_random.c b/src/util/crypto_random.c
index b477f8e2f..1b3367d58 100644
--- a/src/util/crypto_random.c
+++ b/src/util/crypto_random.c
@@ -145,7 +145,7 @@ GNUNET_CRYPTO_random_block (enum GNUNET_CRYPTO_Quality mode, void *buffer, size_
145 * @return a random value in the interval [0,i[. 145 * @return a random value in the interval [0,i[.
146 */ 146 */
147uint32_t 147uint32_t
148GNUNET_CRYPTO_random_u32 (enum GNUNET_CRYPTO_Quality mode, 148GNUNET_CRYPTO_random_u32 (enum GNUNET_CRYPTO_Quality mode,
149 uint32_t i) 149 uint32_t i)
150{ 150{
151#ifdef gcry_fast_random_poll 151#ifdef gcry_fast_random_poll
@@ -270,6 +270,9 @@ GNUNET_CRYPTO_random_u64 (enum GNUNET_CRYPTO_Quality mode, uint64_t max)
270} 270}
271 271
272 272
273/**
274 * Initialize libgcrypt.
275 */
273void __attribute__ ((constructor)) 276void __attribute__ ((constructor))
274GNUNET_CRYPTO_random_init () 277GNUNET_CRYPTO_random_init ()
275{ 278{
@@ -302,11 +305,16 @@ GNUNET_CRYPTO_random_init ()
302} 305}
303 306
304 307
308/**
309 * Nicely shut down libgcrypt.
310 */
305void __attribute__ ((destructor)) 311void __attribute__ ((destructor))
306GNUNET_CRYPTO_random_fini () 312GNUNET_CRYPTO_random_fini ()
307{ 313{
308 gcry_set_progress_handler (NULL, NULL); 314 gcry_set_progress_handler (NULL, NULL);
315#ifdef GCRYCTL_CLOSE_RANDOM_DEVICE
309 (void) gcry_control (GCRYCTL_CLOSE_RANDOM_DEVICE, 0); 316 (void) gcry_control (GCRYCTL_CLOSE_RANDOM_DEVICE, 0);
317#endif
310} 318}
311 319
312 320