summaryrefslogtreecommitdiffstats
path: root/ssl/ssl_sess.c
diff options
context:
space:
mode:
authorNils Larsch <nils@openssl.org>2005-04-29 20:10:06 +0000
committerNils Larsch <nils@openssl.org>2005-04-29 20:10:06 +0000
commit7c7667b86b481c7516d147cd50ece203d3eb58ab (patch)
tree8deb77933dbb0e2839b3270bfee9a7a3b3571cf1 /ssl/ssl_sess.c
parent38be5db93ba435df8d2fbb1caee608ff2266de24 (diff)
check return value of RAND_pseudo_bytes; backport from the stable branch
Diffstat (limited to 'ssl/ssl_sess.c')
-rw-r--r--ssl/ssl_sess.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/ssl/ssl_sess.c b/ssl/ssl_sess.c
index 6ca808331f..5d00a98a74 100644
--- a/ssl/ssl_sess.c
+++ b/ssl/ssl_sess.c
@@ -148,7 +148,8 @@ static int def_generate_session_id(const SSL *ssl, unsigned char *id,
{
unsigned int retry = 0;
do
- RAND_pseudo_bytes(id, *id_len);
+ if (RAND_pseudo_bytes(id, *id_len) <= 0)
+ return 0;
while(SSL_has_matching_session_id(ssl, id, *id_len) &&
(++retry < MAX_SESS_ID_ATTEMPTS));
if(retry < MAX_SESS_ID_ATTEMPTS)