Net::SSL::Handshake::StartTLS::SMTP - SSL Handshake via SMTP+StartTLS
Version 0.1.x, $Revision: 640 $
use Net::SSL::Handshake::StartTLS::SMTP;
# the same API as Net::SSL::Handshake
my $handshake = $self->Net::SSL::Handshake::StartTLS::SMTP->new
(
host => $self->host,
ssl_version => $ssl_version,
ciphers => $self->ciphers_to_check
);
$handshake->hello;
This module simulates an SSL/TLS-Handshake like Net::SSL::Handshake, but
encapsulated in a SMTP dialog with STARTSSL.
This module derives everything from Net::SSL::Handshake, but adds SMTP and
STARTTLS. For this, it overrides _build_socket to start an SMTP session and
STARTTLS. After SSL/TLS connections ends, an SMTP quit command is sent.
When no host (but a socket) is given, this code does not work and is nearly
obsolete and the socket is used unaltered by Net::SSL::Handshake.
New Parameters:
- •
- max_retries: when a temporary error (421/450) occured, the connection may
be retried. Set max_retries to 0 to disable retry; or any other value to
enable. Default: 2 retries.
- •
- throttle_time: time (in seconds) to wait when retrying. This time is
multiplicated with the retry number. Default: 65 seconds (which means,
that the 2nd retry waits 130 seconds, ...)
We have to override send and recv, because we use Net::SMTP instead ob
IO::Socket object.