JEP 244/ALPN, aka JDK-8144083/JDK-8051498 went into JDK 9 late last year.

The API/design is at:

    https://bugs.openjdk.java.net/browse/JDK-8062848

In a nutshell, the client application sets the strings to send. The server application can parse the ClientHello if desired, and can do any SSLSocket/SSLEngine preconfiguration before starting the handshake. During handshaking, the server library code iterates its set values, and compares with what was received (i.e. server-preference) and chooses the first supported value.

While the API could support either ALPN or NPN, OpenJDK only has ALPN support as NPN was on its way out at the time of the writing.

Brad





On 6/6/2016 3:10 PM, Jon Berg wrote:
Hi,

Given that you are acting as a server, it would be nice to be able to offer
"http/1.1" as application.

The purpose of this is to get chrome to do tls false start which require
that the server "advertise" http/1.1 in ALPN or NPN. In the tls handshake.
To do this it is just and integer and that string that has to be included
in the handshake message at the right place...

From looking at the api it seems that this is not supported.
And from reading http://openjdk.java.net/jeps/244 it sounds as it does
not advertise anything, but for a server socket it is an intersection of
what
the client sends and what the server is capable of.

Can you confirm that this is not supported in openjdk 9?

Thanks,
Jon Berg.

Reply via email to