module Circed::Network::SSLSocket

Overview

Wrapper module for SSL/TLS socket support

Defined in:

circed/network/ssl_socket.cr

Class Method Summary

Class Method Detail

def self.can_start_tls?(socket : IRCSocket) : Bool #

Check if a socket supports STARTTLS upgrade


[View source]
def self.create_client_context(config : Config::SSLConfig | Nil = nil, *, verify_mode : Bool = false) : OpenSSL::SSL::Context::Client #

Create client SSL context for outgoing server connections


[View source]
def self.create_context(config : Config::SSLConfig) : OpenSSL::SSL::Context::Server #

Create an SSL context with appropriate settings for IRC


[View source]
def self.get_peer_info(socket : IRCSocket) : String | Nil #

Get peer certificate info for logging/validation


[View source]
def self.ssl?(socket : IRCSocket) : Bool #

Check if socket is already SSL


[View source]
def self.upgrade_to_ssl(socket : TCPSocket, context : OpenSSL::SSL::Context::Server) : OpenSSL::SSL::Socket::Server #

Upgrade a plain socket to SSL (STARTTLS)


[View source]
def self.wrap_client_socket(tcp_socket : TCPSocket, context : OpenSSL::SSL::Context::Client, hostname : String | Nil = nil) : OpenSSL::SSL::Socket::Client #

Wrap a client socket with SSL


[View source]
def self.wrap_server_socket(tcp_socket : TCPSocket, context : OpenSSL::SSL::Context::Server) : OpenSSL::SSL::Socket::Server #

Wrap a TCPSocket with SSL


[View source]