On 21/07/2022 01:11, Osman Zakir wrote:
Hello, everyone.

I have this C++ server app I'm hosting on my computer (source code on GitHub <https://github.com/DragonOsman/currency_converter> -- I'm using Google Maps as a GUI, and it's basically a currency converter app).  I was recently having SSL issues on it, but after sorting them out I have another issue: this error came up:

    Lines 625 and 626:
    handshake: unsupported protocol (SSL routines,
    tls_early_post_process_client_hello)

​This is likely a HTTP/2 upgrade request inside a TLS ClientHello message, no?  And if it is, how do I parse the ClientHello message to extract it and respond?

The unsupported protocol error usually means there is a mismatch between the supported TLS versions on the client and the server. For example if the server only supports TLSv1.3 and the client only supports TLSv1.2.

Matt


Boost.Beast, the low-level HTTP/S and WebSocket on top of Boost.ASIO that I'm using to handle HTTPS, doesn't support this and it also doesn't directly support HTTP/2.  For HTTP/2 I could just relegate to a server does support it, though I'll need one that supports POST requests unless there's a way for me to use my own server code through a HTTP/2 proxy server (hopefully this is possible).

Anyway, would someone please help me figure out how to parse the ClientHello for the request in question?  Thanks.

Reply via email to