diff options
Diffstat (limited to 'src/lib/libssl/s3_srvr.c')
-rw-r--r-- | src/lib/libssl/s3_srvr.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/lib/libssl/s3_srvr.c b/src/lib/libssl/s3_srvr.c index 903522ab59..398ce469d6 100644 --- a/src/lib/libssl/s3_srvr.c +++ b/src/lib/libssl/s3_srvr.c | |||
@@ -1172,13 +1172,13 @@ int ssl3_send_server_hello(SSL *s) | |||
1172 | *(d++)=SSL3_MT_SERVER_HELLO; | 1172 | *(d++)=SSL3_MT_SERVER_HELLO; |
1173 | l2n3(l,d); | 1173 | l2n3(l,d); |
1174 | 1174 | ||
1175 | s->state=SSL3_ST_CW_CLNT_HELLO_B; | 1175 | s->state=SSL3_ST_SW_SRVR_HELLO_B; |
1176 | /* number of bytes to write */ | 1176 | /* number of bytes to write */ |
1177 | s->init_num=p-buf; | 1177 | s->init_num=p-buf; |
1178 | s->init_off=0; | 1178 | s->init_off=0; |
1179 | } | 1179 | } |
1180 | 1180 | ||
1181 | /* SSL3_ST_CW_CLNT_HELLO_B */ | 1181 | /* SSL3_ST_SW_SRVR_HELLO_B */ |
1182 | return(ssl3_do_write(s,SSL3_RT_HANDSHAKE)); | 1182 | return(ssl3_do_write(s,SSL3_RT_HANDSHAKE)); |
1183 | } | 1183 | } |
1184 | 1184 | ||
@@ -1202,7 +1202,7 @@ int ssl3_send_server_done(SSL *s) | |||
1202 | s->init_off=0; | 1202 | s->init_off=0; |
1203 | } | 1203 | } |
1204 | 1204 | ||
1205 | /* SSL3_ST_CW_CLNT_HELLO_B */ | 1205 | /* SSL3_ST_SW_SRVR_DONE_B */ |
1206 | return(ssl3_do_write(s,SSL3_RT_HANDSHAKE)); | 1206 | return(ssl3_do_write(s,SSL3_RT_HANDSHAKE)); |
1207 | } | 1207 | } |
1208 | 1208 | ||
@@ -1540,6 +1540,8 @@ int ssl3_send_server_key_exchange(SSL *s) | |||
1540 | j=0; | 1540 | j=0; |
1541 | for (num=2; num > 0; num--) | 1541 | for (num=2; num > 0; num--) |
1542 | { | 1542 | { |
1543 | EVP_MD_CTX_set_flags(&md_ctx, | ||
1544 | EVP_MD_CTX_FLAG_NON_FIPS_ALLOW); | ||
1543 | EVP_DigestInit_ex(&md_ctx,(num == 2) | 1545 | EVP_DigestInit_ex(&md_ctx,(num == 2) |
1544 | ?s->ctx->md5:s->ctx->sha1, NULL); | 1546 | ?s->ctx->md5:s->ctx->sha1, NULL); |
1545 | EVP_DigestUpdate(&md_ctx,&(s->s3->client_random[0]),SSL3_RANDOM_SIZE); | 1547 | EVP_DigestUpdate(&md_ctx,&(s->s3->client_random[0]),SSL3_RANDOM_SIZE); |