gnutls_bye — terminate the current TLS/SSL connection.
#include <gnutls/gnutls.h>
| int
            gnutls_bye( | gnutls_session_t | session, | 
| gnutls_close_request_t | how ); | 
is a gnutls_session_t structure.
is an integer
Terminates the current TLS/SSL connection. The connection
      should have been initiated using gnutls_handshake(). how should be one of
      GNUTLS_SHUT_RDWR, GNUTLS_SHUT_WR.
In case of GNUTLS_SHUT_RDWR
      then the TLS connection gets terminated and further receives
      and sends will be disallowed. If the return value is zero you
      may continue using the connection. GNUTLS_SHUT_RDWR actually sends an alert
      containing a close request and waits for the peer to reply
      with the same message.
In case of GNUTLS_SHUT_WR
      then the TLS connection gets terminated and further sends
      will be disallowed. In order to reuse the connection you
      should wait for an EOF from the peer. GNUTLS_SHUT_WR sends an alert containing a
      close request.
Note that not all implementations will properly terminate a TLS connection. Some of them, usually for performance reasons, will terminate only the underlying transport layer, thus causing a transmission error to the peer. This error cannot be distinguished from a malicious party prematurely terminating the session, thus this behavior is not recommended.
This function may also return GNUTLS_E_AGAIN or GNUTLS_E_INTERRUPTED; cf. gnutls_record_get_direction().
GNUTLS_E_SUCCESS on success, or an error code, see function documentation for entire semantics.
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.
| COPYRIGHT | 
|---|
| Copyright © 2008 Free Software Foundation. Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. |