aboutsummaryrefslogtreecommitdiffstats
path: root/crypto
diff options
authorEric Biggers <ebiggers@kernel.org>2026-04-19 23:33:45 -0700
committerHerbert Xu <herbert@gondor.apana.org.au>2026-05-07 16:09:59 +0800
commit39a31ad9e2a5ed7e9c9c6f711dca96c8c8f5f26b (patch)
treeba75723ce69557357957de9d1c1d5160dd4e1c26 /crypto
parentedcc5d486ac69d019d32e694c83e7f24a1003123 (diff)
downloadlinux-next-history-39a31ad9e2a5ed7e9c9c6f711dca96c8c8f5f26b.tar.gz
crypto: drbg - Fix returning success on failure in CTR_DRBG
drbg_ctr_generate() sometimes returns success when it fails, leaving the output buffer uninitialized. Fix it. Fixes: cde001e4c3c3 ("crypto: rng - RNGs must return 0 in success case") Cc: stable@vger.kernel.org Signed-off-by: Eric Biggers <ebiggers@kernel.org> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'crypto')
-rw-r--r--crypto/drbg.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/crypto/drbg.c b/crypto/drbg.c
index 9204e6edb4268..e4eb78ed222b9 100644
--- a/crypto/drbg.c
+++ b/crypto/drbg.c
@@ -377,7 +377,7 @@ static int drbg_ctr_generate(struct drbg_state *drbg,
if (addtl && !list_empty(addtl)) {
ret = drbg_ctr_update(drbg, addtl, 2);
if (ret)
- return 0;
+ return ret;
}
/* 10.2.1.5.2 step 4.1 */