Check SRP parameters early.
[openssl.git] / ssl / s3_clnt.c
index 0a006a75342893fd4f2fdd30f930ec220b7694fa..09fe64e8349f163542fe7621a11904b8f85e547f 100644 (file)
@@ -1570,6 +1570,12 @@ int ssl3_get_key_exchange(SSL *s)
                p+=i;
                n-=param_len;
 
+               if (!srp_verify_server_param(s, &al))
+                       {
+                       SSLerr(SSL_F_SSL3_GET_KEY_EXCHANGE,SSL_R_BAD_SRP_PARAMETERS);
+                       goto f_err;
+                       }
+
 /* We must check if there is a certificate */
 #ifndef OPENSSL_NO_RSA
                if (alg_a & SSL_aRSA)