TlsConnection.handshake

Attempts a TLS handshake on conn. On the client side, it is never necessary to call this method; although the connection needs to perform a handshake after connecting (or after sending a "STARTTLS"-type command) and may need to rehandshake later if the server requests it, GTlsConnection will handle this for you automatically when you try to send or receive data on the connection. However, you can call g_tls_connection_handshake() manually if you want to know for sure whether the initial handshake succeeded or failed (as opposed to just immediately trying to write to conn's output stream, in which case if it fails, it may not be possible to tell if it failed before or after completing the handshake). Likewise, on the server side, although a handshake is necessary at the beginning of the communication, you do not need to call this function explicitly unless you want clearer error reporting. However, you may call g_tls_connection_handshake() later on to renegotiate parameters (encryption methods, etc) with the client. "accept_certificate" may be emitted during the handshake. Since 2.28

class TlsConnection
int
handshake

Parameters

cancellable Cancellable

a GCancellable, or NULL. [allow-none]

Return Value

Type: int

success or failure

Throws

GException on failure.

Meta