summaryrefslogtreecommitdiffstats
path: root/doc/socket-api.texi
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 07:33:12 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 07:33:12 +0000
commit36082a2fe36ecd800d784ae44c14f1f18c66a7e9 (patch)
tree6c68e0c0097987aff85a01dabddd34b862309a7c /doc/socket-api.texi
parentInitial commit. (diff)
downloadgnutls28-36082a2fe36ecd800d784ae44c14f1f18c66a7e9.tar.xz
gnutls28-36082a2fe36ecd800d784ae44c14f1f18c66a7e9.zip
Adding upstream version 3.7.9.upstream/3.7.9upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'doc/socket-api.texi')
-rw-r--r--doc/socket-api.texi51
1 files changed, 51 insertions, 0 deletions
diff --git a/doc/socket-api.texi b/doc/socket-api.texi
new file mode 100644
index 0000000..b2c6574
--- /dev/null
+++ b/doc/socket-api.texi
@@ -0,0 +1,51 @@
+
+@subheading gnutls_transport_is_ktls_enabled
+@anchor{gnutls_transport_is_ktls_enabled}
+@deftypefun {gnutls_transport_ktls_enable_flags_t} {gnutls_transport_is_ktls_enabled} (gnutls_session_t @var{session})
+@var{session}: is a @code{gnutls_session_t} type.
+
+Checks if KTLS is now enabled and was properly inicialized.
+
+@strong{Returns:} @code{GNUTLS_KTLS_RECV} , @code{GNUTLS_KTLS_SEND} , @code{GNUTLS_KTLS_DUPLEX} , otherwise 0
+
+@strong{Since:} 3.7.3
+@end deftypefun
+
+@subheading gnutls_transport_set_fastopen
+@anchor{gnutls_transport_set_fastopen}
+@deftypefun {void} {gnutls_transport_set_fastopen} (gnutls_session_t @var{session}, int @var{fd}, struct sockaddr * @var{connect_addr}, socklen_t @var{connect_addrlen}, unsigned int @var{flags})
+@var{session}: is a @code{gnutls_session_t} type.
+
+@var{fd}: is the session's socket descriptor
+
+@var{connect_addr}: is the address we want to connect to
+
+@var{connect_addrlen}: is the length of @code{connect_addr}
+
+@var{flags}: must be zero
+
+Enables TCP Fast Open (TFO) for the specified TLS client session.
+That means that TCP connection establishment and the transmission
+of the first TLS client hello packet are combined. The
+peer's address must be specified in @code{connect_addr} and @code{connect_addrlen} ,
+and the socket specified by @code{fd} should not be connected.
+
+TFO only works for TCP sockets of type AF_INET and AF_INET6.
+If the OS doesn't support TCP fast open this function will result
+to gnutls using @code{connect()} transparently during the first write.
+
+@strong{Note:} This function overrides all the transport callback functions.
+If this is undesirable, TCP Fast Open must be implemented on the user
+callback functions without calling this function. When using
+this function, transport callbacks must not be set, and
+@code{gnutls_transport_set_ptr()} or @code{gnutls_transport_set_int()}
+must not be called.
+
+On GNU/Linux TFO has to be enabled at the system layer, that is
+in /proc/sys/net/ipv4/tcp_fastopen, bit 0 has to be set.
+
+This function has no effect on server sessions.
+
+@strong{Since:} 3.5.3
+@end deftypefun
+