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




NAME

       gnutls_transport_set_pull_timeout_function - API function


SYNOPSIS

       #include <gnutls/gnutls.h>

       gnutls_transport_set_pull_timeout_function(3)  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
       return zero if no data are immediately  available.  The  special  value
       GNUTLS_INDEFINITE_TIMEOUT  indicates  that  the  callback  should  wait
       indefinitely 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.  It  will  not  be   used   when
       non-blocking  sockets are in use. That is, this function will not oper-
       ate when GNUTLS_NONBLOCK is specified in  gnutls_init(),  or  a  custom
       pull function is registered without updating the pull timeout function.

       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: 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                           gnutls_transport_set_pull_timeout_function(3)

gnutls 3.5.8 - Generated Wed Jan 11 18:39:18 CST 2017
© manpagez.com 2000-2025
Individual documents may contain additional copyright information.