summaryrefslogtreecommitdiff
path: root/crypto/x509/v3_purp.c
diff options
context:
space:
mode:
authorPauli <ppzgs1@gmail.com>2021-03-23 10:33:15 +1000
committerPauli <pauli@openssl.org>2021-03-26 08:41:32 +1000
commit96a68f21c305d33f89e1e0bc9c45b6afb0de7654 (patch)
tree911f6fb19551d5f4c6350bb05b5f04cd2e4ed701 /crypto/x509/v3_purp.c
parent4f0831b837e97504d4cfbfecfca069c527be4a2b (diff)
downloadopenssl-new-96a68f21c305d33f89e1e0bc9c45b6afb0de7654.tar.gz
x509: fix coverity 1461225: data race condition
Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/14651)
Diffstat (limited to 'crypto/x509/v3_purp.c')
-rw-r--r--crypto/x509/v3_purp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/crypto/x509/v3_purp.c b/crypto/x509/v3_purp.c
index b98fc584ff..5b13fd7445 100644
--- a/crypto/x509/v3_purp.c
+++ b/crypto/x509/v3_purp.c
@@ -681,7 +681,10 @@ static int check_ca(const X509 *x)
void X509_set_proxy_flag(X509 *x)
{
- x->ex_flags |= EXFLAG_PROXY;
+ if (CRYPTO_THREAD_write_lock(x->lock)) {
+ x->ex_flags |= EXFLAG_PROXY;
+ CRYPTO_THREAD_unlock(x->lock);
+ }
}
void X509_set_proxy_pathlen(X509 *x, long l)