Net::Se...:SSLEAY(3)
hey bestie π welcome to Net::Se...:SSLEAY(3) from User Contributed Perl Documentation β this is the manual page for Net::Server::Proto::SSLEAY, a custom Net::Server SSL protocol handler based on Net::SSLeay. secure sockets but make it main character energy β¨
πΈ NAME πΈ
Net::Server::Proto::SSLEAY β a custom Net::Server SSL protocol handler based on Net::SSLeay. π
periodt.
β¨ SYNOPSIS β¨
First up: see Net::Server::Proto. Then here's the vibe in code form β the examples ate, fr fr:
use base qw(Net::Server::HTTP);
main->run(
proto => 'ssleay',
SSL_key_file => "/path/to/my/file.key",
SSL_cert_file => "/path/to/my/file.crt",
);
# OR
sub SSL_key_file { "/path/to/my/file.key" }
sub SSL_cert_file { "/path/to/my/file.crt" }
main->run(proto => 'ssleay');
# OR
main->run(
port => [443, 8443, "80/tcp"], # bind to two ssleay ports and one tcp
proto => "ssleay", # use ssleay as the default
ipv => "*", # bind both IPv4 and IPv6 interfaces
SSL_key_file => "/path/to/my/file.key",
SSL_cert_file => "/path/to/my/file.crt",
);
# OR
main->run(port => [{
port => "443",
proto => "ssleay",
# ipv => 4, # default - only do IPv4
SSL_key_file => "/path/to/my/file.key",
SSL_cert_file => "/path/to/my/file.crt",
}, {
port => "8443",
proto => "ssleay",
ipv => "*", # IPv4 and IPv6
SSL_key_file => "/path/to/my/file2.key", # separate key
SSL_cert_file => "/path/to/my/file2.crt", # separate cert
}]);
π¦ DESCRIPTION π¦
Okay so this module has reliably been used in situations receiving millions of hits on a single box per day. If anybody has any successes or ideas for improvement under SSLEAY, please email <paul@seamons.com> β yes, that's the actual contact in the page. π
It's a protocol module for Net::Server. This module implements a secure socket layer over tcp (also known as SSL). See Net::Server::Proto.
If you need more customization of the SSL layer, you may want to investigate using SSL rather than SSLEAY as it uses the venerable(ish) IO::Socket::SSL. Ngl, that's the tea. β
π PARAMETERS π
Currently there is support for the following:
SSL_cert_fileβ Full path to the certificate file to be used for this server. Should be in PEM format. πSSL_key_fileβ Full path to the key file to be used for this server. Should be in PEM format. ποΈSSL_max_getline_lengthβ Used duringgetlineto only read until this many bytes are found. Default isundefwhich means unlimited. πSSL_error_callbackβ Should be a code ref that will be called whenever error conditions are encountered. It passes a source message and an arrayref of the errors. π¨
π§ METHODS π§
This module implements most of the common file handle operations. There are some additions though:
read_untilβ Takesbytesandmatch qr. Ifbytesis defined - it will read until that many bytes are found. Ifmatch qris defined, it will read until the buffer matches that qr. If both are undefined, it will read until there is nothing left to read. πerrorβ If an error occurred while writing, this method will return that error. π
π BUGS π
There are probably many. no cap. π
π LICENCE π
Distributed under the same terms as Net::Server. π«Ά
π THANKS π
Thanks to Bilbo at http://devpit.org/wiki/OpenSSL_with_nonblocking_sockets_%28in_Perl%29 for documenting a more reliable way of accepting and reading SSL connections. π
xoxo bestie π this Net::Se...:SSLEAY(3) page is perl v5.42.0, dated 2023-03-15 β that's the footer lore, and we're obsessed. β¨
π¦ where this page comes from
- opensuse-leap 16.0: perl-Net-Server 2.014-bp160.1.12 Β· Artistic-1.0 OR GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms