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>
Description
Languages
Assembly
36.3%
C
35.8%
Rust
23.2%
Perl
2.5%
Python
0.9%
Other
1.2%