[ 
https://issues.apache.org/jira/browse/IGNITE-29208?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Anton Vinogradov updated IGNITE-29208:
--------------------------------------
    Description: 
SSLContextWrapper.createSSLEngine(host, port) drops the supplied peer address. 
Forward it to the matching delegate overload while retaining configured 
protocols and cipher suites.

This affects applications that obtain a context from SslContextFactory with 
custom protocols or cipher suites and create a client engine with a host and 
port. Losing the address prevents automatic SNI and peer-based session reuse, 
and breaks hostname verification when enabled. Ignite transports currently use 
the no-argument engine overload. Jetty supplies an address for a server engine, 
where the fix preserves peer information reported by the session.

IGNITE-29209 also wraps file-based contexts with default TLS settings, so it 
needs the same fix to preserve existing client behavior.

Add a regression test through the existing public constructor that checks peer 
host, port, configured protocols and cipher suites. Keep the no-argument 
overload working. The test must fail on master and pass with the fix.

Split out of IGNITE-28867; it adds no reload behavior.

  was:
SSLContextWrapper drops the peer host and port passed to createSSLEngine(host, 
port). Forward them to the matching delegate overload while retaining the 
configured SSLParameters.

Add a regression test through the existing public constructor that checks peer 
host, port, and configured protocols and ciphers. Keep the no-argument overload 
working. This fix must not depend on the reload implementation.

Land this independent fix first to keep the later SSL API change focused.


> Preserve SSLEngine peer address in SSLContextWrapper
> ----------------------------------------------------
>
>                 Key: IGNITE-29208
>                 URL: https://issues.apache.org/jira/browse/IGNITE-29208
>             Project: Ignite
>          Issue Type: Sub-task
>            Reporter: Anton Vinogradov
>            Assignee: Anton Vinogradov
>            Priority: Major
>              Labels: ise
>          Time Spent: 40m
>  Remaining Estimate: 0h
>
> SSLContextWrapper.createSSLEngine(host, port) drops the supplied peer 
> address. Forward it to the matching delegate overload while retaining 
> configured protocols and cipher suites.
> This affects applications that obtain a context from SslContextFactory with 
> custom protocols or cipher suites and create a client engine with a host and 
> port. Losing the address prevents automatic SNI and peer-based session reuse, 
> and breaks hostname verification when enabled. Ignite transports currently 
> use the no-argument engine overload. Jetty supplies an address for a server 
> engine, where the fix preserves peer information reported by the session.
> IGNITE-29209 also wraps file-based contexts with default TLS settings, so it 
> needs the same fix to preserve existing client behavior.
> Add a regression test through the existing public constructor that checks 
> peer host, port, configured protocols and cipher suites. Keep the no-argument 
> overload working. The test must fail on master and pass with the fix.
> Split out of IGNITE-28867; it adds no reload behavior.



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to