Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
gnutls_transport_set_pull_timeoutgnugnutlsansport_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 (C) 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/local/share/doc/gnutls/ directory does not contain the HTML
       form visit

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

gnutls				 gnutls_transport_set_pull_timeout_function(3)

NAME | SYNOPSIS | ARGUMENTS | DESCRIPTION | SINCE | REPORTING BUGS | COPYRIGHT | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=gnutls_transport_set_pull_timeout_function&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help