NAME

Crypt::OpenSSL3::SSL::Context - A context for SSL connections

VERSION

version 0.002

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.