]> git.ipfire.org Git - thirdparty/openssl.git/blobdiff - crypto/x509/v3_purp.c
Always check CRYPTO_LOCK_{read,write}_lock
[thirdparty/openssl.git] / crypto / x509 / v3_purp.c
index 1149e83780def9e5511eeec8a281ae13e06682b8..ee2d3c72896885cb191bee7b1bb2d98b4b0b6758 100644 (file)
@@ -411,7 +411,8 @@ int x509v3_cache_extensions(X509 *x)
         return (x->ex_flags & EXFLAG_INVALID) == 0;
 #endif
 
-    CRYPTO_THREAD_write_lock(x->lock);
+    if (!CRYPTO_THREAD_write_lock(x->lock))
+        return 0;
     if (x->ex_flags & EXFLAG_SET) { /* Cert has already been processed */
         CRYPTO_THREAD_unlock(x->lock);
         return (x->ex_flags & EXFLAG_INVALID) == 0;