gnutls_hkdf_extract: Added
gnutls_hkdf_expand: Added
gnutls_pbkdf2: Added
+gnutls_session_get_keylog_function: Added
gnutls_session_set_keylog_function: Added
gnutls_prf_hash_get: Added
<elf-symbol name='gnutls_session_get_flags' version='GNUTLS_3_4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
<elf-symbol name='gnutls_session_get_id2' version='GNUTLS_3_4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
<elf-symbol name='gnutls_session_get_id' version='GNUTLS_3_4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gnutls_session_get_keylog_function' version='GNUTLS_3_6_13' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
<elf-symbol name='gnutls_session_get_master_secret' version='GNUTLS_3_4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
<elf-symbol name='gnutls_session_get_ptr' version='GNUTLS_3_4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
<elf-symbol name='gnutls_session_get_random' version='GNUTLS_3_4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
gnutls_session_get_flags@GNUTLS_3_4
gnutls_session_get_id2@GNUTLS_3_4
gnutls_session_get_id@GNUTLS_3_4
+gnutls_session_get_keylog_function@GNUTLS_3_6_13
gnutls_session_get_master_secret@GNUTLS_3_4
gnutls_session_get_ptr@GNUTLS_3_4
gnutls_session_get_random@GNUTLS_3_4
FUNCS += functions/gnutls_session_get_id.short
FUNCS += functions/gnutls_session_get_id2
FUNCS += functions/gnutls_session_get_id2.short
+FUNCS += functions/gnutls_session_get_keylog_function
+FUNCS += functions/gnutls_session_get_keylog_function.short
FUNCS += functions/gnutls_session_get_master_secret
FUNCS += functions/gnutls_session_get_master_secret.short
FUNCS += functions/gnutls_session_get_ptr
APIMANS += gnutls_session_get_flags.3
APIMANS += gnutls_session_get_id.3
APIMANS += gnutls_session_get_id2.3
+APIMANS += gnutls_session_get_keylog_function.3
APIMANS += gnutls_session_get_master_secret.3
APIMANS += gnutls_session_get_ptr.3
APIMANS += gnutls_session_get_random.3
typedef int (*gnutls_keylog_func) (gnutls_session_t session,
const char *label,
const gnutls_datum_t *secret);
+gnutls_keylog_func gnutls_session_get_keylog_function(const gnutls_session_t session);
void gnutls_session_set_keylog_function(gnutls_session_t session,
gnutls_keylog_func func);
return 0;
}
+/**
+ * gnutls_session_get_keylog_function:
+ * @session: is #gnutls_session_t type
+ *
+ * This function will return the callback function set using
+ * gnutls_session_set_keylog_function().
+ *
+ * Returns: The function set or %NULL otherwise.
+ *
+ * Since: 3.6.13
+ */
+gnutls_keylog_func
+gnutls_session_get_keylog_function(const gnutls_session_t session)
+{
+ return session->internals.keylog_func;
+}
+
/**
* gnutls_session_set_keylog_function:
* @session: is #gnutls_session_t type
gnutls_hkdf_extract;
gnutls_hkdf_expand;
gnutls_pbkdf2;
+ gnutls_session_get_keylog_function;
gnutls_session_set_keylog_function;
gnutls_prf_hash_get;
} GNUTLS_3_6_12;
#include <stdio.h>
#include <stdlib.h>
+#include <assert.h>
#if !defined(__linux__) || !defined(__GNUC__)
gnutls_transport_set_int(session, fd);
gnutls_session_set_keylog_function(session, keylog_func);
+ assert(gnutls_session_get_keylog_function(session) == keylog_func);
/* Perform the TLS handshake
*/