HTTPCLIENT-2151: Support for JSSE in-built endpoint identification #545
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This change-set extends the public APIs with hostname verification options:
Built-In
: Hostname verification is delegated to the JSSE provider, usually executed during the TLS handshakeClient
: Hostname verification is executed by HttpClient post TLS handshakeBoth
: Hostname verification is executed by the JSSE provider and by HttpClient post TLS handshakeThe
Both
option is used by default. It provides the benefit of backward compatibility with the behavior of previous versions of HttpClient, added security (hostnames get verified by the JSSE provider and by the client) and fail-early approach (invalid hostnames can get rejected during the TLS handshake). At the same some checks may get performed twice and result in certain (likely minor) performance hit. In the future HttpClient may switch toBuilt-In
as the default.