dwww Home | Manual pages | Find package

gnutls_transport_set_pull_timeoutgnutlsttransport_set_pull_timeout_function(3)

NAME
       gnutls_transport_set_pull_timeout_function - API function

SYNOPSIS
       #include <gnutls/gnutls.h>

       void  gnutls_transport_set_pull_timeout_function(gnutls_session_t  ses-
       sion, gnutls_pull_timeout_func func);

ARGUMENTS
       gnutls_session_t session
                   is a gnutls_session_t type.

       gnutls_pull_timeout_func func
                   a callback function

DESCRIPTION
       This is the function where you  set  a  function  for  gnutls  to  know
       whether  data are ready to be received. It should wait for data a given
       time frame in milliseconds. The callback should return 0 on timeout,  a
       positive  number if data can be received, and -1 on error.  You'll need
       to override this function if select() is not suitable for the  provided
       transport calls.

       As  with select(), if the timeout value is zero the callback should re-
       turn zero if no data  are  immediately  available.  The  special  value
       GNUTLS_INDEFINITE_TIMEOUT  indicates  that the callback should wait in-
       definitely for data.

        gnutls_pull_timeout_func  is  of  the  form,  int  (*gnutls_pull_time-
       out_func)(gnutls_transport_ptr_t, unsigned int ms);

       This  callback  is  necessary  when  gnutls_handshake_set_timeout()  or
       gnutls_record_set_timeout() are set, under TLS1.3 and for enforcing the
       DTLS mode timeouts when in blocking mode.

       For compatibility with future GnuTLS versions this callback must be set
       when a custom pull function is registered. The  callback  will  not  be
       used  when  the  session is in TLS mode with non-blocking sockets. That
       is,  when  GNUTLS_NONBLOCK  is  specified  for   a   TLS   session   in
       gnutls_init().

       The  helper  function  gnutls_system_recv_timeout() is provided to sim-
       plify writing callbacks.

SINCE
       3.0

REPORTING BUGS
       Report bugs to <bugs@gnutls.org>.
       Home page: https://www.gnutls.org

COPYRIGHT
       Copyright © 2001- 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 no-
       tice 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

       https://www.gnutls.org/manual/

gnutls                           gnutls7transport_set_pull_timeout_function(3)

Generated by dwww version 1.14 on Mon Feb 3 07:51:25 CET 2025.