Richard Levitte
1beca67688
CRYPTO_atomic_add(): check that the object is lock free
...
If not, fall back to our own code, using the given mutex
Reviewed-by: Andy Polyakov <appro@openssl.org>
2016-08-24 14:37:48 +01:00
Richard Levitte
11fc6c7611
CRYPTO_atomic_add(): use acquire release memory order rather than relaxed
...
For increments, the relaxed model is fine. For decrements, it's
recommended to use the acquire release model. We therefore go for the
latter.
Reviewed-by: Andy Polyakov <appro@openssl.org>
2016-08-24 14:37:40 +01:00
Richard Levitte
cb4b54c23b
Check for __GNUC__ to use GNU C atomic buildins
...
Note: we trust any other compiler that fully implements GNU extension
to define __GNUC__
RT#4642
Reviewed-by: Andy Polyakov <appro@openssl.org>
2016-08-24 14:37:30 +01:00
Rich Salz
b1322259d9
Copyright consolidation 09/10
...
Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-05-17 14:53:16 -04:00
Viktor Dukhovni
5c4328f04f
Fold threads.h into crypto.h making API public
...
Document thread-safe lock creation
Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-05-16 12:16:26 -04:00
FdaSilvaYY
0b2fc9286f
GH773: Possible leak on CRYPTO_THREAD_lock_new failure
...
Signed-off-by: Rich Salz <rsalz@akamai.com>
Reviewed-by: Matt Caswell <matt@openssl.org>
2016-03-03 19:47:01 -05:00
Alessandro Ghedini
71a04cfca0
Implement new multi-threading API
...
Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
2016-02-26 10:00:36 +00:00