View Ticket
Bounty program for improvements to Tcl and certain Tcl packages.
2021-08-26
12:24 Ticket [e1f9a21c67] Add support for ALPN (required for HTTP/2) status still Open with 5 other changes artifact: ce74d804db user: schelte
12:12 New ticket [e1f9a21c67]. artifact: 0ed3d95594 user: schelte

Ticket Hash: e1f9a21c679246860e79cae8dfa5af20b59f9612
Title: Add support for ALPN (required for HTTP/2)
Status: Open Type: Feature Request
Severity: Important Priority: Immediate
Subsystem: Resolution: Open
Last Modified: 2021-08-26 12:24:56
Version Found In: b5c41cdeb6
User Comments:
schelte added on 2021-08-26 12:12:01:

It would be useful if the Application-Layer Protocol Negotiation (ALPN) could be added to tcltls. The ALPN extension to TLS includes the protocol negotiation within the exchange of hello messages. ALPN is able to negotiate which protocol should be handled over a secure connection in a way that is more efficient and avoids additional round trips. The HTTP/2 protocol requires the use of ALPN on secure connections.


schelte added on 2021-08-26 12:24:56:

I have a patch for the client side, but I don't find the option to attach a file to the ticket. So I posted it here.

This patch adds an -alpn option that takes a list of protocols to offer in the Client Hello message. When the connection is established, the protocol selected by the server, if any, can be determined by checking the "alpn" key in the response of the tls::status command.