|
NAME | SYNOPSIS | ARGUMENTS | DESCRIPTION | RETURNS | REPORTING BUGS | COPYRIGHT | SEE ALSO | COLOPHON |
|
|
|
gnutls_session_get_data2(3) gnutls gnutls_session_get_data2(3)
gnutls_session_get_data2 - API function
#include <gnutls/gnutls.h>
int gnutls_session_get_data2(gnutls_session_t session,
gnutls_datum_t * data);
gnutls_session_t session
is a gnutls_session_t type.
gnutls_datum_t * data
is a pointer to a datum that will hold the session.
Returns necessary parameters to support resumption. The client
should call this function and store the returned session data. A
session can be resumed later by calling gnutls_session_set_data()
with the returned data. Note that under TLS 1.3, it is recommended
for clients to use session parameters only once, to prevent
passive-observers from correlating the different connections.
The returned data are allocated and must be released using
gnutls_free().
This function will fail if called prior to handshake completion.
In case of false start TLS, the handshake completes only after
data have been successfully received from the peer.
Under TLS1.3 session resumption is possible only after a session
ticket is received by the client. To ensure that such a ticket has
been received use gnutls_session_get_flags() and check for flag
GNUTLS_SFLAGS_SESSION_TICKET; if this flag is not set, this
function will wait for a new ticket within an estimated roundtrip,
and if not received will return dummy data which cannot lead to
resumption.
To get notified when new tickets are received by the server use
gnutls_handshake_set_hook_function() to wait for
GNUTLS_HANDSHAKE_NEW_SESSION_TICKET messages. Each call of
gnutls_session_get_data2() after a ticket is received, will return
session resumption data corresponding to the last received ticket.
Note that this function under TLS1.3 requires a callback to be set
with gnutls_transport_set_pull_timeout_function() for successful
operation. There was a bug before 3.6.10 which could make this
function fail if that callback was not set. On later versions if
not set, the function will return a successful error code, but
will return dummy data that cannot lead to a resumption.
On success, GNUTLS_E_SUCCESS (0) is returned, otherwise an error
code is returned.
Report bugs to <[email protected]>.
Home page: https://www.gnutls.org
Copyright © 2001-2023 Free Software Foundation, Inc., and others.
Copying and distribution of this file, with or without
modification, are permitted in any medium without royalty provided
the copyright notice and this notice are preserved.
The full documentation for gnutls is maintained as a Texinfo
manual. If the /usr/share/doc/gnutls/ directory does not contain
the HTML form visit
https://www.gnutls.org/manual/
This page is part of the GnuTLS (GnuTLS Transport Layer Security
Library) project. Information about the project can be found at
⟨http://www.gnutls.org/⟩. If you have a bug report for this
manual page, send it to [email protected]. This page was obtained
from the tarball fetched from
⟨https://www.gnupg.org/ftp/gcrypt/gnutls/⟩ on 2025-08-11. If you
discover any rendering problems in this HTML version of the page,
or you believe there is a better or more up-to-date source for the
page, or you have corrections or improvements to the information
in this COLOPHON (which is not part of the original manual page),
send a mail to [email protected]
gnutls 3.8.10 gnutls_session_get_data2(3)