Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

secure_renegotiate and reuse_sessions is incompatible with tlsv1.3 #733

Open
Juliusan opened this issue Feb 5, 2024 · 0 comments
Open

Comments

@Juliusan
Copy link
Contributor

Juliusan commented Feb 5, 2024

While trying to connect to web server using TLS v1.3 using Hackney, I get following errors:

{options,incompatible,[secure_renegotiate,{versions,['tlsv1.3']}]}
{options,incompatible,[reuse_sessions,{versions,['tlsv1.3']}]}

Apparently, Hackney adds default values for secure_renegotiate and reuse_sessions parameters (

hackney/src/hackney_ssl.erl

Lines 139 to 141 in f190daf

BaseOpts = [binary, {active, false}, {packet, raw},
{secure_renegotiate, true},
{reuse_sessions, true}],
) while connecting via ssl. However Erlang's ssl code fails if these parameters are mentioned regardless of their values. As Hackney user you can override the value of these parameters, however it is impossible to override passing them to Erlang's ssl library.

I am using Erlang/OTP 26.2, Hackney version 1.20.1 (commit f190daf67cfefc4f1950011759624f8f87260597). My additional parameters passed to hackney:post are:

[
    {connect_timeout, 50000},
    {recv_timeout,    50000},
    with_body,
    {ssl_options,[{versions, ['tlsv1.3']},{verify,verify_none}]}
]

Is there a way to avoid passing these parameters to ssl:connect?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant