summaryrefslogtreecommitdiffstats
path: root/providers
diff options
context:
space:
mode:
authorTomas Mraz <tomas@openssl.org>2023-06-07 13:22:19 +0200
committerTodd Short <todd.short@me.com>2023-06-10 19:23:59 -0400
commit7efc073dd7ddaed732c35e84efc865463db7ffbc (patch)
tree4dbb9cf5a85254f0f4f511ac198502c570034754 /providers
parent4bcbf8d4445e763857563d9ca016972e095c622d (diff)
Coverity 1531836: Check return value of CRYPTO_atomic_add()
Diffstat (limited to 'providers')
-rw-r--r--providers/implementations/rands/drbg.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/providers/implementations/rands/drbg.c b/providers/implementations/rands/drbg.c
index 4690d73cca..7a4854f0d7 100644
--- a/providers/implementations/rands/drbg.c
+++ b/providers/implementations/rands/drbg.c
@@ -335,8 +335,9 @@ static size_t prov_drbg_get_nonce(PROV_DRBG *drbg, unsigned char **pout,
/* Use the built in nonce source plus some of our specifics */
memset(&data, 0, sizeof(data));
data.drbg = drbg;
- CRYPTO_atomic_add(&dngbl->rand_nonce_count, 1, &data.count,
- dngbl->rand_nonce_lock);
+ if (!CRYPTO_atomic_add(&dngbl->rand_nonce_count, 1, &data.count,
+ dngbl->rand_nonce_lock))
+ return 0;
return ossl_prov_get_nonce(drbg->provctx, pout, min_len, max_len,
&data, sizeof(data));
}