-
-
Notifications
You must be signed in to change notification settings - Fork 10k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
SSL_set_SSL_CTX is a bad idea #6109
Comments
|
From the perspective of a library user, I have two comments about First, I am using this function in the SWI-Prolog OpenSSL bindings, to implement server-side SNI. In Prolog, SNI works via a user-extensible predicate that yields an SSL context depending on the hostname. For example, such a user-defined predicate may look as follows: where For the particular use case of Prolog-based OpenSSL bindings, I consider it essential that no destructive modifications be required to carry out all desired operations. Currently, this is the case! For example, to implement server-side SNI, I can currently create a new SSL context and plug it in via Second, I agree that the way |
I think this is more because up until recently, there was not an opportunity for user code (e.g., servername callback) to run before version negotiation had occurred. Starting with 1.1.1 there is a "client hello callback" that runs extremely early in the handshake processing, and is able to alter the supported versions based on the hostname. |
|
I found myself using |
|
Some time has passed, and we're still in the same boat.
|
|
I came across a situation that only this function came to my rescue: based on the customized messages communicated with the client side, the server side dynamically switching to using a different context using a different certificate. |
|
@mattcaswell consider for 4.0? |
|
I don't think this necessarily needs to wait for a major release. Basically we need to design and implement a new solution and deprecate the old function. All of that could be done in a minor release. The only thing we couldn't do is actually remove the old So some future minor release would be ok. |
The whole concept behind
SSL_set_SSL_CTX()is just a bad idea. I think we should deprecate it and replace it with an alternative API.In #1652 @vdukhovni said:
And @t-j-h said:
This can't be done in the 1.1.1 timeframe, so setting this with a post-1.1.1 milestone.
The text was updated successfully, but these errors were encountered: