manpagez: man pages & more
man gnutls_transport_set_fastopen(3)
Home | html | info | man
gnutls_transport_set_fastopen(3)    gnutls    gnutls_transport_set_fastopen(3)




NAME

       gnutls_transport_set_fastopen - API function


SYNOPSIS

       #include <gnutls/socket.h>

       gnutls_transport_set_fastopen(3)  session,  int fd,
       struct sockaddr * connect_addr, socklen_t connect_addrlen, unsigned int
       flags);


ARGUMENTS

       gnutls_session_t session
                   is a gnutls_session_t type.

       int fd      is the session's socket descriptor

       struct sockaddr * connect_addr
                   is the address we want to connect to

       socklen_t connect_addrlen
                   is the length of  connect_addr

       unsigned int flags
                   must be zero


DESCRIPTION

       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  connect_addr and  connect_addrlen , and the socket speci-
       fied by  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
       connect() transparently during the first write.


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 gnutls_transport_set_ptr()  or
       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.


SINCE

       3.5.3


REPORTING BUGS

       Report bugs to <bugs@gnutls.org>.
       Home page: http://www.gnutls.org



COPYRIGHT

       Copyright (C) 2001-2017 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.


SEE ALSO

       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

       http://www.gnutls.org/manual/




gnutls                               3.5.8    gnutls_transport_set_fastopen(3)

gnutls 3.5.8 - Generated Fri Jan 13 10:31:43 CST 2017
© manpagez.com 2000-2025
Individual documents may contain additional copyright information.