Fix RAND_(pseudo_)?_bytes returns
[openssl.git] / ssl / tls_srp.c
index d36cfa0a5c2d20f847a08e15eb8aa4aa6905d714..6bdf7f32f86fd4d26dc0bcc388013fdaf2ab0dd0 100644 (file)
@@ -454,7 +454,8 @@ int SRP_Calc_A_param(SSL *s)
 {
     unsigned char rnd[SSL_MAX_MASTER_KEY_LENGTH];
 
-    RAND_bytes(rnd, sizeof(rnd));
+    if(RAND_bytes(rnd, sizeof(rnd)) <= 0)
+        return -1;
     s->srp_ctx.a = BN_bin2bn(rnd, sizeof(rnd), s->srp_ctx.a);
     OPENSSL_cleanse(rnd, sizeof(rnd));