Commit b6891e9c authored by Ulf Möller's avatar Ulf Möller
Browse files

CRYPTO_num_locks()

parent d7f0ab5f
Loading
Loading
Loading
Loading
+9 −1
Original line number Diff line number Diff line
@@ -13,6 +13,8 @@ CRYPTO_set_locking_callback, CRYPTO_set_id_callback - OpenSSL thread support

 void CRYPTO_set_id_callback(unsigned long (*id_function)(void));

 int CRYPTO_num_locks(void);

=head1 DESCRIPTION

OpenSSL can safely be used in multi-threaded applications provided
@@ -22,7 +24,7 @@ locking_function(int mode, int type, const char *file, int line) is
needed to perform locking on shared data stuctures. Multi-threaded
applications will crash at random if it is not set.

locking_function() must be able to handle up to B<CRYPTO_NUM_LOCKS>
locking_function() must be able to handle up to CRYPTO_num_locks()
different mutex locks. It sets the B<n>th lock if B<mode> &
B<CRYPTO_LOCK>, and releases it otherwise.

@@ -33,6 +35,11 @@ id_function(void) is a function that returns a thread ID. It is not
needed on Windows nor on platforms where getpid() returns a different
ID for each thread.

=RETURN VALUES

CRYPTO_num_locks() returns the required number of locks.
The other functions return no values.

=NOTE

You can find out if OpenSSL was configured with thread support:
@@ -54,6 +61,7 @@ Solaris, Irix and Win32.

CRYPTO_set_locking_callback() and CRYPTO_set_id_callback() are
available in all versions of SSLeay and OpenSSL.
CRYPTO_num_locks() was added in OpenSSL 0.9.4.

=head1 SEE ALSO