module Gio::DtlsConnection
Overview
#GDtlsConnection is the base DTLS connection class type, which wraps a #GDatagramBased and provides DTLS encryption on top of it. Its subclasses, #GDtlsClientConnection and #GDtlsServerConnection, implement client-side and server-side DTLS, respectively.
For TLS support, see #GTlsConnection.
As DTLS is datagram based, #GDtlsConnection implements #GDatagramBased, presenting a datagram-socket-like API for the encrypted connection. This operates over a base datagram connection, which is also a #GDatagramBased (#GDtlsConnection:base-socket).
To close a DTLS connection, use g_dtls_connection_close().
Neither #GDtlsServerConnection or #GDtlsClientConnection set the peer address on their base #GDatagramBased if it is a #GSocket — it is up to the caller to do that if they wish. If they do not, and g_socket_close() is called on the base socket, the #GDtlsConnection will not raise a %G_IO_ERROR_NOT_CONNECTED error on further I/O.
Defined in:
lib/gi-crystal/src/auto/gio-2.0/dtls_connection.crClass Method Summary
Instance Method Summary
- #accept_certificate_signal
- #advertised_protocols : Enumerable(String)
- #advertised_protocols=(value : Enumerable(String)) : Enumerable(String)
- #advertised_protocols=(protocols : Enumerable(String)?) : Nil
- #base_socket : Gio::DatagramBased?
- #base_socket=(value : Gio::DatagramBased?) : Gio::DatagramBased?
- #certificate : Gio::TlsCertificate?
- #certificate=(certificate : Gio::TlsCertificate) : Nil
- #channel_binding_data(type : Gio::TlsChannelBindingType) : Bool
- #ciphersuite_name : String?
- #close(cancellable : Gio::Cancellable?) : Bool
- #close_async(io_priority : Int32, cancellable : Gio::Cancellable?, callback : Gio::AsyncReadyCallback?, user_data : Pointer(Void)?) : Nil
- #close_finish(result : Gio::AsyncResult) : Bool
- #database : Gio::TlsDatabase?
- #database=(database : Gio::TlsDatabase?) : Nil
- #emit_accept_certificate(peer_cert : Gio::TlsCertificate, errors : Gio::TlsCertificateFlags) : Bool
- #handshake(cancellable : Gio::Cancellable?) : Bool
- #handshake_async(io_priority : Int32, cancellable : Gio::Cancellable?, callback : Gio::AsyncReadyCallback?, user_data : Pointer(Void)?) : Nil
- #handshake_finish(result : Gio::AsyncResult) : Bool
- #interaction : Gio::TlsInteraction?
- #interaction=(interaction : Gio::TlsInteraction?) : Nil
- #negotiated_protocol : String?
- #peer_certificate : Gio::TlsCertificate?
- #peer_certificate_errors : Gio::TlsCertificateFlags
- #protocol_version : Gio::TlsProtocolVersion
- #rehandshake_mode : Gio::TlsRehandshakeMode
- #rehandshake_mode=(mode : Gio::TlsRehandshakeMode) : Nil
- #require_close_notify : Bool
- #require_close_notify=(require_close_notify : Bool) : Nil
- #require_close_notify? : Bool
- #shutdown(shutdown_read : Bool, shutdown_write : Bool, cancellable : Gio::Cancellable?) : Bool
- #shutdown_async(shutdown_read : Bool, shutdown_write : Bool, io_priority : Int32, cancellable : Gio::Cancellable?, callback : Gio::AsyncReadyCallback?, user_data : Pointer(Void)?) : Nil
- #shutdown_finish(result : Gio::AsyncResult) : Bool
- #to_unsafe