NAME
CRYPTO_lock
,
CRYPTO_w_lock
,
CRYPTO_w_unlock
,
CRYPTO_r_lock
,
CRYPTO_r_unlock
, CRYPTO_add
— thread support
SYNOPSIS
#include
<openssl/crypto.h>
void
CRYPTO_lock
(int mode,
int type, const char *file,
int line);
int
CRYPTO_add
(int *p,
int amount, int type);
#define CRYPTO_w_lock(type) \ CRYPTO_lock(CRYPTO_LOCK|CRYPTO_WRITE, type, __FILE__, __LINE__) #define CRYPTO_w_unlock(type) \ CRYPTO_lock(CRYPTO_UNLOCK|CRYPTO_WRITE, type, __FILE__, __LINE__) #define CRYPTO_r_lock(type) \ CRYPTO_lock(CRYPTO_LOCK|CRYPTO_READ, type, __FILE__, __LINE__) #define CRYPTO_r_unlock(type) \ CRYPTO_lock(CRYPTO_UNLOCK|CRYPTO_READ, type, __FILE__, __LINE__)
DESCRIPTION
These functions are obsolete.
CRYPTO_lock
()
locks or unlocks a mutex lock.
mode is a bitfield describing what should be
done with the lock. For each call, either
CRYPTO_LOCK
or CRYPTO_UNLOCK
must be included. In the LibreSSL implementation,
CRYPTO_READ
and CRYPTO_WRITE
are ignored.
type is a number in the range 0 <=
type <
CRYPTO_NUM_LOCKS
identifying a particular lock.
Currently, the value of CRYPTO_NUM_LOCKS
is 41.
The file and line arguments are ignored.
In the LibreSSL implementation,
CRYPTO_lock
()
is a wrapper around
pthread_mutex_lock(3) and
pthread_mutex_unlock(3).
CRYPTO_add
()
locks the lock number type, adds
amount to *p, and unlocks the
lock number type again.
RETURN VALUES
CRYPTO_add
() returns the new value of
*p.
SEE ALSO
HISTORY
CRYPTO_lock
(),
CRYPTO_w_lock
(),
CRYPTO_w_unlock
(),
CRYPTO_r_lock
(), and
CRYPTO_r_unlock
() first appeared in SSLeay 0.6.0.
CRYPTO_add
() first appeared in SSLeay 0.6.2. These
functions have been available since OpenBSD 2.4.