diff options
Diffstat (limited to 'src/lib/libssl/s23_srvr.c')
-rw-r--r-- | src/lib/libssl/s23_srvr.c | 44 |
1 files changed, 0 insertions, 44 deletions
diff --git a/src/lib/libssl/s23_srvr.c b/src/lib/libssl/s23_srvr.c index ca95d4e636..a6062667a0 100644 --- a/src/lib/libssl/s23_srvr.c +++ b/src/lib/libssl/s23_srvr.c | |||
@@ -121,10 +121,6 @@ int ssl23_get_client_hello(SSL *s); | |||
121 | static const SSL_METHOD | 121 | static const SSL_METHOD |
122 | *ssl23_get_server_method(int ver) | 122 | *ssl23_get_server_method(int ver) |
123 | { | 123 | { |
124 | #ifndef OPENSSL_NO_SSL2 | ||
125 | if (ver == SSL2_VERSION) | ||
126 | return (SSLv2_server_method()); | ||
127 | #endif | ||
128 | if (ver == SSL3_VERSION) | 124 | if (ver == SSL3_VERSION) |
129 | return (SSLv3_server_method()); | 125 | return (SSLv3_server_method()); |
130 | else if (ver == TLS1_VERSION) | 126 | else if (ver == TLS1_VERSION) |
@@ -480,48 +476,8 @@ ssl23_get_client_hello(SSL *s) | |||
480 | /* s->state = SSL23_SR_CLNT_HELLO_C */ | 476 | /* s->state = SSL23_SR_CLNT_HELLO_C */ |
481 | 477 | ||
482 | if (type == 1) { | 478 | if (type == 1) { |
483 | #ifdef OPENSSL_NO_SSL2 | ||
484 | SSLerr(SSL_F_SSL23_GET_CLIENT_HELLO, SSL_R_UNSUPPORTED_PROTOCOL); | 479 | SSLerr(SSL_F_SSL23_GET_CLIENT_HELLO, SSL_R_UNSUPPORTED_PROTOCOL); |
485 | goto err; | 480 | goto err; |
486 | #else | ||
487 | /* we are talking sslv2 */ | ||
488 | /* we need to clean up the SSLv3/TLSv1 setup and put in the | ||
489 | * sslv2 stuff. */ | ||
490 | |||
491 | if (s->s2 == NULL) { | ||
492 | if (!ssl2_new(s)) | ||
493 | goto err; | ||
494 | } else | ||
495 | ssl2_clear(s); | ||
496 | |||
497 | if (s->s3 != NULL) | ||
498 | ssl3_free(s); | ||
499 | |||
500 | if (!BUF_MEM_grow_clean(s->init_buf, | ||
501 | SSL2_MAX_RECORD_LENGTH_3_BYTE_HEADER)) { | ||
502 | goto err; | ||
503 | } | ||
504 | |||
505 | s->state = SSL2_ST_GET_CLIENT_HELLO_A; | ||
506 | if (s->options & SSL_OP_NO_TLSv1 && s->options & SSL_OP_NO_SSLv3) | ||
507 | s->s2->ssl2_rollback = 0; | ||
508 | else | ||
509 | /* reject SSL 2.0 session if client supports SSL 3.0 or TLS 1.0 | ||
510 | * (SSL 3.0 draft/RFC 2246, App. E.2) */ | ||
511 | s->s2->ssl2_rollback = 1; | ||
512 | |||
513 | /* setup the n bytes we have read so we get them from | ||
514 | * the sslv2 buffer */ | ||
515 | s->rstate = SSL_ST_READ_HEADER; | ||
516 | s->packet_length = n; | ||
517 | s->packet = &(s->s2->rbuf[0]); | ||
518 | memcpy(s->packet, buf, n); | ||
519 | s->s2->rbuf_left = n; | ||
520 | s->s2->rbuf_offs = 0; | ||
521 | |||
522 | s->method = SSLv2_server_method(); | ||
523 | s->handshake_func = s->method->ssl_accept; | ||
524 | #endif | ||
525 | } | 481 | } |
526 | 482 | ||
527 | if ((type == 2) || (type == 3)) { | 483 | if ((type == 2) || (type == 3)) { |