Provided by: gnutls-doc_3.8.1-4ubuntu1.3_all bug

NAME

       gnutls_record_recv - API function

SYNOPSIS

       #include <gnutls/gnutls.h>

       ssize_t gnutls_record_recv(gnutls_session_t session, void * data, size_t data_size);

ARGUMENTS

       gnutls_session_t session
                   is a gnutls_session_t type.

       void * data the buffer that the data will be read into

       size_t data_size
                   the number of requested bytes

DESCRIPTION

       This  function  has  the  similar  semantics  with recv().  The only difference is that it
       accepts a GnuTLS session, and uses different error codes.  In the special  case  that  the
       peer   requests   a   renegotiation,   the   caller   will   receive   an  error  code  of
       GNUTLS_E_REHANDSHAKE.  In case of a client, this message may be  simply  ignored,  replied
       with an alert GNUTLS_A_NO_RENEGOTIATION, or replied with a new handshake, depending on the
       client's will. A server receiving this error code can only initiate  a  new  handshake  or
       terminate the session.

       If  EINTR  is  returned  by  the  internal  pull  function  (the  default  is recv()) then
       GNUTLS_E_INTERRUPTED will be  returned.   If  GNUTLS_E_INTERRUPTED  or  GNUTLS_E_AGAIN  is
       returned,   you   must   call   this   function   again   to   get  the  data.   See  also
       gnutls_record_get_direction().

RETURNS

       The number of bytes received and zero on EOF (for stream connections).  A  negative  error
       code is returned in case of an error.  The number of bytes received might be less than the
       requested  data_size .

REPORTING BUGS

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

COPYRIGHT

       Copyright © 2001-2023 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

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