diff options
author | Werner Koch <wk@gnupg.org> | 2011-12-01 13:55:06 +0100 |
---|---|---|
committer | Werner Koch <wk@gnupg.org> | 2011-12-01 13:59:38 +0100 |
commit | 5a1b2784cc1a718fd44d551b7ec018ef4614ce30 (patch) | |
tree | 94c27e5523a3ec115ed773a261b70a3f14a0bca8 /cipher/primegen.c | |
parent | 37810e520dba6fcb9da5a13bc6fdba9076cfe0f2 (diff) | |
download | libgcrypt-5a1b2784cc1a718fd44d551b7ec018ef4614ce30.tar.gz |
Completed switch to a simpler thread model.
This is only a first step. We will need to either implement
pthread_atfork or - better - make use use POSIX RT semaphores.
Diffstat (limited to 'cipher/primegen.c')
-rw-r--r-- | cipher/primegen.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/cipher/primegen.c b/cipher/primegen.c index 2788e349..d0cf20c1 100644 --- a/cipher/primegen.c +++ b/cipher/primegen.c @@ -141,9 +141,20 @@ struct primepool_s }; struct primepool_s *primepool; /* Mutex used to protect access to the primepool. */ -static ath_mutex_t primepool_lock = ATH_MUTEX_INITIALIZER; +static ath_mutex_t primepool_lock; +gcry_err_code_t +_gcry_primegen_init (void) +{ + gcry_err_code_t ec; + + ec = ath_mutex_init (&primepool_lock); + if (ec) + return gpg_err_code_from_errno (ec); + return ec; +} + /* Save PRIME which has been generated at RANDOMLEVEL for later use. Needs to be called while primepool_lock is being hold. Note @@ -195,7 +206,7 @@ save_pool_prime (gcry_mpi_t prime, gcry_random_level_t randomlevel) /* Return a prime for the prime pool or NULL if none has been found. The prime needs to match NBITS and randomlevel. This function needs - to be called why the primepool_look is being hold. */ + to be called with the primepool_look is being hold. */ static gcry_mpi_t get_pool_prime (unsigned int nbits, gcry_random_level_t randomlevel) { |