Skip to content

SSL_in_init returns one from info_callback(SSL_CB_HANDSHAKE_DONE) #4574

@davidben

Description

@davidben

In OpenSSL 1.1.0 and prior versions of OpenSSL, SSL_in_init was always false at SSL_CB_HANDSHAKE_DONE. In master, this has changed because ossl_statem_set_in_init(s, 0) now happens late in tls_finish_handshake, after SSL_CB_HANDSHAKE_DONE is triggered.

The immediate trigger for this was Node, who rely on not only this but being able to reentrantly call things like SSL_shutdown from that callback. That one seems a little nuts and probably should also be fixed on their end. Nonetheless, this is a little odd behavior on the OpenSSL side of things. (We at one point also caused SSL_in_init to change at this callback on accident and that broke some stuff.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions