diff options
author | David Benjamin <davidben@chromium.org> | 2014-11-22 22:32:53 +0300 |
---|---|---|
committer | Adam Langley <agl@google.com> | 2014-12-02 22:26:30 +0300 |
commit | 0f1e64bf7f36a9610cb3072add579c8e4850cdf5 (patch) | |
tree | 3f9dfeb7839dc4accd0c37eb22057e6b64d0c6ce /ssl/d1_clnt.c | |
parent | 61f95277d40dc829fcc5cf09d0e208d247b2b50f (diff) |
Remove method swap in SSL_set_session.
This is a bit of cleanup that probably should have been done at the same time
as 30ddb434bfb845356fbacb6b2bd51f8814c7043c.
For now, version negotiation is implemented with a method swap. It also
performs this swap on SSL_set_session, but this was neutered in
30ddb434bfb845356fbacb6b2bd51f8814c7043c. Rather than hackishly neuter it,
remove it outright. In addition, remove SSL_set_ssl_method. Now all method
swaps are internal: SSLv23_method switch to a version-specific method and
SSL_clear undoing it.
Note that this does change behavior: if an SSL* is created with one
version-specific method and we SSL_set_session to a session from a /different/
version, we would switch to the /other/ version-specific method. This is
extremely confusing, so it's unlikely anyone was actually expecting it.
Version-specific methods in general don't work well.
Change-Id: I72a5c1f321ca9aeb1b52ebe0317072950ba25092
Reviewed-on: https://boringssl-review.googlesource.com/2390
Reviewed-by: Adam Langley <agl@google.com>
Diffstat (limited to 'ssl/d1_clnt.c')
-rw-r--r-- | ssl/d1_clnt.c | 14 |
1 files changed, 0 insertions, 14 deletions
diff --git a/ssl/d1_clnt.c b/ssl/d1_clnt.c index 3af756b9..60bb12ad 100644 --- a/ssl/d1_clnt.c +++ b/ssl/d1_clnt.c @@ -125,38 +125,24 @@ #include "ssl_locl.h" -static const SSL_METHOD *dtls1_get_client_method(int ver); static int dtls1_get_hello_verify(SSL *s); -static const SSL_METHOD *dtls1_get_client_method(int ver) - { - if (ver == DTLS1_VERSION) - return(DTLSv1_client_method()); - else if (ver == DTLS1_2_VERSION) - return(DTLSv1_2_client_method()); - else - return(NULL); - } - IMPLEMENT_dtls1_meth_func(DTLS1_VERSION, DTLSv1_client_method, ssl_undefined_function, dtls1_connect, - dtls1_get_client_method, DTLSv1_enc_data) IMPLEMENT_dtls1_meth_func(DTLS1_2_VERSION, DTLSv1_2_client_method, ssl_undefined_function, dtls1_connect, - dtls1_get_client_method, DTLSv1_2_enc_data) IMPLEMENT_dtls1_meth_func(DTLS_ANY_VERSION, DTLS_client_method, ssl_undefined_function, dtls1_connect, - dtls1_get_client_method, DTLSv1_2_enc_data) int dtls1_connect(SSL *s) |