Updated: 2022/Sep/29

Please read Privacy Policy. It's for your privacy.

SSL_CTX_set_keylog_callback(3)      OpenSSL     SSL_CTX_set_keylog_callback(3)

       SSL_CTX_set_keylog_callback, SSL_CTX_get_keylog_callback,
       SSL_CTX_keylog_cb_func - logging TLS key material

       libcrypto, -lcrypto

        #include <openssl/ssl.h>

        typedef void (*SSL_CTX_keylog_cb_func)(const SSL *ssl, const char *line);

        void SSL_CTX_set_keylog_callback(SSL_CTX *ctx, SSL_CTX_keylog_cb_func cb);
        SSL_CTX_keylog_cb_func SSL_CTX_get_keylog_callback(const SSL_CTX *ctx);

       SSL_CTX_set_keylog_callback() sets the TLS key logging callback. This
       callback is called whenever TLS key material is generated or received,
       in order to allow applications to store this keying material for
       debugging purposes.

       SSL_CTX_get_keylog_callback() retrieves the previously set TLS key
       logging callback. If no callback has been set, this will return NULL.
       When there is no key logging callback, or if
       SSL_CTX_set_keylog_callback is called with NULL as the value of cb, no
       logging of key material will be done.

       The key logging callback is called with two items: the ssl object
       associated with the connection, and line, a string containing the key
       material in the format used by NSS for its SSLKEYLOGFILE debugging
       output. To recreate that file, the key logging callback should log
       line, followed by a newline.  line will always be a NUL-terminated

       SSL_CTX_get_keylog_callback() returns a pointer to
       SSL_CTX_keylog_cb_func or NULL if the callback is not set.


       Copyright 2016-2021 The OpenSSL Project Authors. All Rights Reserved.

       Licensed under the Apache License 2.0 (the "License").  You may not use
       this file except in compliance with the License.  You can obtain a copy
       in the file LICENSE in the source distribution or at

3.0.12                            2023-05-07    SSL_CTX_set_keylog_callback(3)