Commits
Tarun Sukhani authored 1d2cf27f249
docs: correct NO_ADVERTISE comment in SslHttpServerPipelineFactory (release 1.12.20) The previous comment said "NO_ADVERTISE: if no overlap with client's ALPN list, fail handshake with no_application_protocol alert." This is exactly backwards. Per Netty's ApplicationProtocolConfig.SelectorFailureBehavior Javadoc, NO_ADVERTISE means "the peer who selects the application protocol doesn't find a match will pretend not to support the TLS extension by not advertising support for the TLS extension in the handshake" — i.e. the handshake completes without ALPN selection rather than failing. The "fail with no_application_protocol alert" behavior described by RFC 7301 is FATAL_ALERT, the *other* SelectorFailureBehavior option that we deliberately do NOT use because FATAL_ALERT isn't supported on the JDK SSL provider (only OpenSSL). NO_ADVERTISE is the only portable choice. In practice this distinction never matters for our setup: any modern HTTP client offers either h2 or http/1.1 (or both), both are in our advertised list, so overlap always exists. The corrected comment documents reality so future readers don't believe a non-overlap would fail when it actually wouldn't. Pure comment fix. No behavior change, no compiled-bytecode change. ant unittest BUILD SUCCESSFUL. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>