NAME
Crypt::OpenSSL3::SSL::Context - A context for SSL connections
VERSION
version 0.001
SYNOPSIS
my $method = Crypt::OpenSSL3::SSL::Protocol->TLS_client; my $ctx = Crypt::OpenSSL3::SSL::Context->new($method); $ctx->set_verify(Crypt::OpenSSL3::SSL::VERIFY_PEER); $ctx->set_default_verify_paths();
my $ssl = Crypt::OpenSSL3::SSL->new($ctx); my $ssl2 = Crypt::OpenSSL3::SSL->new($ctx); my $ssl3 = Crypt::OpenSSL3::SSL->new($ctx);
DESCRIPTION
This is the global context class which is created by a server or client once per program life-time and which holds mainly default values for the SSL classes which are later created for the connections; these will have exactly the same name as in Crypt::OpenSSL3::SSL. It also contains the certificate store that is used to validate certificates and a session cache that facilitates fast reconnection.
Methods in this class generally match the SSL_CTX_* namespace in libssl.
METHODS
new
add_client_CA
add_extra_chain_cert
add_session
check_private_key
clear_extra_chain_certs
clear_mode
clear_options
get_cert_store
get_domain_flags
get_max_proto_version
get_min_proto_version
get_mode
get_num_tickets
get_options
get_read_ahead
load_verify_dir
load_verify_file
load_verify_locations
load_verify_store
remove_session
sess_accept
sess_accept_good
sess_accept_renegotiate
sess_cache_full
sess_cb_hits
sess_connect
sess_connect_good
sess_connect_renegotiate
sess_get_cache_size
sess_hits
sess_misses
sess_number
sess_set_cache_size
sess_timeouts
set_alpn_protos
set_cert_store
set_cipher_list
set_ciphersuites
set_default_verify_dir
set_default_verify_file
set_default_verify_paths
set_domain_flags
set_max_proto_version
set_min_proto_version
set_mode
set_num_tickets
set_options
set_post_handshake_auth
set_read_ahead
set_session_id_context
set_verify
set_verify_depth
use_PrivateKey
use_PrivateKey_ASN1
use_PrivateKey_file
use_certificate
use_certificate_ASN1
use_certificate_chain_file
use_certificate_file
AUTHOR
Leon Timmermans <fawaka@gmail.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2025 by Leon Timmermans.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.