Provided by: gnutls-doc_3.0.11+really2.12.14-5ubuntu3_all bug

NAME

       gnutls_handshake - API function

SYNOPSIS

       #include <gnutls/gnutls.h>

       int gnutls_handshake(gnutls_session_t session);

ARGUMENTS

       gnutls_session_t session
                   is a gnutls_session_t structure.

DESCRIPTION

       This  function  does  the  handshake  of  the  TLS/SSL  protocol,  and initializes the TLS
       connection.

       This function will fail if any problem is encountered, and will return  a  negative  error
       code.  In  case  of  a client, if the client has asked to resume a session, but the server
       couldn't, then a full handshake will be performed.

       The non-fatal  errors  such  as  GNUTLS_E_AGAIN  and  GNUTLS_E_INTERRUPTED  interrupt  the
       handshake procedure, which should be later be resumed.  Call this function again, until it
       returns 0; cf.  gnutls_record_get_direction() and gnutls_error_is_fatal().

       If  this  function  is  called  by   a   server   after   a   rehandshake   request   then
       GNUTLS_E_GOT_APPLICATION_DATA  or  GNUTLS_E_WARNING_ALERT_RECEIVED  may be returned.  Note
       that these are non fatal errors, only in  the  specific  case  of  a  rehandshake.   Their
       meaning  is  that  the  client  rejected  the  rehandshake  request  or  in  the  case  of
       GNUTLS_E_GOT_APPLICATION_DATA it might also mean that some data were pending.

RETURNS

       GNUTLS_E_SUCCESS on success, otherwise an error.

REPORTING BUGS

       Report      bugs       to       <bug-gnutls@gnu.org>.        GnuTLS       home       page:
       http://www.gnu.org/software/gnutls/      General      help     using     GNU     software:
       http://www.gnu.org/gethelp/

COPYRIGHT

       Copyright © 2008 Free Software Foundation.
       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 info and
       gnutls programs are properly installed at your site, the command

              info gnutls

       should give you access to the complete manual.