mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-24 20:54:10 +08:00
crypto: drbg - fix failure of generating multiple of 2**16 bytes
The function drbg_generate_long slices the request into 2**16 byte or smaller chunks. However, the loop, however invokes the random number generation function with zero bytes when the request size is a multiple of 2**16 bytes. The fix prevents zero bytes requests. Signed-off-by: Stephan Mueller <smueller@chronox.de> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
6391723293
commit
ce5481d01f
@ -1500,7 +1500,7 @@ static int drbg_generate_long(struct drbg_state *drbg,
|
||||
if (0 >= tmplen)
|
||||
return tmplen;
|
||||
len += tmplen;
|
||||
} while (slice > 0);
|
||||
} while (slice > 0 && (len < buflen));
|
||||
return len;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user