diff options
author | Tomas Mraz <tomas@openssl.org> | 2023-06-07 13:22:19 +0200 |
---|---|---|
committer | Todd Short <todd.short@me.com> | 2023-06-10 19:23:59 -0400 |
commit | 7efc073dd7ddaed732c35e84efc865463db7ffbc (patch) | |
tree | 4dbb9cf5a85254f0f4f511ac198502c570034754 /providers | |
parent | 4bcbf8d4445e763857563d9ca016972e095c622d (diff) |
Coverity 1531836: Check return value of CRYPTO_atomic_add()
Diffstat (limited to 'providers')
-rw-r--r-- | providers/implementations/rands/drbg.c | 5 |
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)); } |