view release on metacpan or search on metacpan
inc/bundle/HTTP/Tiny.pm view on Meta::CPAN
#pod will be 599.
#pod * C<verify_SSL> â A boolean that indicates whether to validate the TLS/SSL
#pod certificate of an C<https> â connection (default is true). Changed from false
#pod to true in version 0.083.
#pod * C<SSL_options> â A hashref of C<SSL_*> â options to pass through to
#pod L<IO::Socket::SSL>
#pod * C<$ENV{PERL_HTTP_TINY_SSL_INSECURE_BY_DEFAULT}> - Changes the default
#pod certificate verification behavior to not check server identity if set to 1.
#pod Only effective if C<verify_SSL> is not set. Added in version 0.083.
#pod
#pod
inc/bundle/HTTP/Tiny.pm view on Meta::CPAN
#pod $ok = HTTP::Tiny->can_ssl;
#pod ($ok, $why) = HTTP::Tiny->can_ssl;
#pod ($ok, $why) = $http->can_ssl;
#pod
#pod Indicates if SSL support is available. When called as a class object, it
#pod checks for the correct version of L<Net::SSLeay> and L<IO::Socket::SSL>.
#pod When called as an object methods, if C<SSL_verify> is true or if C<SSL_verify_mode>
#pod is set in C<SSL_options>, it checks that a CA file is available.
#pod
#pod In scalar context, returns a boolean indicating if SSL is available.
#pod In list context, returns the boolean and a (possibly multi-line) string of
inc/bundle/HTTP/Tiny.pm view on Meta::CPAN
sub can_ssl {
my ($self) = @_;
my($ok, $reason) = (1, '');
# Need IO::Socket::SSL 1.968 for default_ca()
local @INC = @INC;
pop @INC if $INC[-1] eq '.';
unless (eval {require IO::Socket::SSL; IO::Socket::SSL->VERSION(1.968)}) {
$ok = 0;
$reason .= qq/IO::Socket::SSL 1.968 or later must be installed for https support\n/;
}
# Need Net::SSLeay 1.49 for MODE_AUTO_RETRY
unless (eval {require Net::SSLeay; Net::SSLeay->VERSION(1.49)}) {
$ok = 0;
inc/bundle/HTTP/Tiny.pm view on Meta::CPAN
my ($self, $host) = @_;
# As this might be used via CONNECT after an SSL session
# to a proxy, we shut down any existing SSL before attempting
# the handshake
if ( ref($self->{fh}) eq 'IO::Socket::SSL' ) {
unless ( $self->{fh}->stop_SSL ) {
my $ssl_err = IO::Socket::SSL->errstr;
die(qq/Error halting prior SSL connection: $ssl_err/);
}
}
my $ssl_args = $self->_ssl_args($host);
IO::Socket::SSL->start_SSL(
$self->{fh},
%$ssl_args,
SSL_create_ctx_callback => sub {
my $ctx = shift;
Net::SSLeay::CTX_set_mode($ctx, Net::SSLeay::MODE_AUTO_RETRY());
},
);
unless ( ref($self->{fh}) eq 'IO::Socket::SSL' ) {
my $ssl_err = IO::Socket::SSL->errstr;
die(qq/SSL connection failed for $host: $ssl_err\n/);
}
}
sub close {
inc/bundle/HTTP/Tiny.pm view on Meta::CPAN
}
sub can_read {
@_ == 1 || @_ == 2 || die(q/Usage: $handle->can_read([timeout])/ . "\n");
my $self = shift;
if ( ref($self->{fh}) eq 'IO::Socket::SSL' ) {
return 1 if $self->{fh}->pending;
}
return $self->_do_timeout('read', @_)
}
inc/bundle/HTTP/Tiny.pm view on Meta::CPAN
die qq/SSL_ca_file '$ca_file' not found or not readable\n/;
}
return ( SSL_ca_file => $ca_file );
}
# Return default_ca() parameters from IO::Socket::SSL. It looks for the
# default bundle and directory from Net::SSLeay, handles $ENV{SSL_CERT_FILE}
# and $ENV{SSL_CERT_DIR}, and finally fails over to Mozilla::CA
#
my %default_ca = IO::Socket::SSL::default_ca();
return %default_ca if %default_ca;
# If IO::Socket::SSL::default_ca() was unable to find a CA bundle, look for
# one in well known locations as a last resort. Cert list copied from golang
# src/crypto/x509/root_unix.go
#
foreach my $ca_bundle (
"/etc/ssl/certs/ca-certificates.crt", # Debian/Ubuntu/Gentoo etc.
inc/bundle/HTTP/Tiny.pm view on Meta::CPAN
sub _ssl_args {
my ($self, $host) = @_;
my %ssl_args;
# This test reimplements IO::Socket::SSL::can_client_sni(), which wasn't
# added until IO::Socket::SSL 1.84
if ( Net::SSLeay::OPENSSL_VERSION_NUMBER() >= 0x01000000 ) {
$ssl_args{SSL_hostname} = $host, # Sane SNI support
}
if ($self->{verify_SSL}) {
inc/bundle/HTTP/Tiny.pm view on Meta::CPAN
C<verify_SSL> â A boolean that indicates whether to validate the TLS/SSL certificate of an C<https> â connection (default is true). Changed from false to true in version 0.083.
=item *
C<SSL_options> â A hashref of C<SSL_*> â options to pass through to L<IO::Socket::SSL>
=item *
C<$ENV{PERL_HTTP_TINY_SSL_INSECURE_BY_DEFAULT}> - Changes the default certificate verification behavior to not check server identity if set to 1. Only effective if C<verify_SSL> is not set. Added in version 0.083.
inc/bundle/HTTP/Tiny.pm view on Meta::CPAN
$ok = HTTP::Tiny->can_ssl;
($ok, $why) = HTTP::Tiny->can_ssl;
($ok, $why) = $http->can_ssl;
Indicates if SSL support is available. When called as a class object, it
checks for the correct version of L<Net::SSLeay> and L<IO::Socket::SSL>.
When called as an object methods, if C<SSL_verify> is true or if C<SSL_verify_mode>
is set in C<SSL_options>, it checks that a CA file is available.
In scalar context, returns a boolean indicating if SSL is available.
In list context, returns the boolean and a (possibly multi-line) string of
inc/bundle/HTTP/Tiny.pm view on Meta::CPAN
timeout
verify_SSL
=head1 TLS/SSL SUPPORT
Direct C<https> connections are supported only if L<IO::Socket::SSL> 1.56 or
greater and L<Net::SSLeay> 1.49 or greater are installed. An error will occur
if new enough versions of these modules are not installed or if the TLS
encryption fails. You can also use C<HTTP::Tiny::can_ssl()> utility function
that returns boolean to see if the required modules are installed.
inc/bundle/HTTP/Tiny.pm view on Meta::CPAN
attacks|http://en.wikipedia.org/wiki/Machine-in-the-middle_attack>.
Certificate verification requires a file or directory containing trusted CA
certificates.
C<IO::Socket::SSL::default_ca()> is called to detect the default location of
your CA certificates. This also supports the environment variables
C<SSL_CERT_FILE> and C<SSL_CERT_DIR>, and will fail over to L<Mozilla::CA> if no
certs are found.
If C<IO::Socket::SSL::default_ca()> is not able to find usable CA certificates,
HTTP::Tiny will search several well-known system-specific default locations for
a CA certificate file as a last resort:
=over 4
inc/bundle/HTTP/Tiny.pm view on Meta::CPAN
An error will be occur if C<verify_SSL> is true and no CA certificate file
is available.
If you desire complete control over TLS/SSL connections, the C<SSL_options>
attribute lets you provide a hash reference that will be passed through to
C<IO::Socket::SSL::start_SSL()>, overriding any options set by HTTP::Tiny. For
example, to provide your own trusted CA file:
SSL_options => {
SSL_ca_file => $file_path,
}
The C<SSL_options> attribute could also be used for such things as providing a
client certificate for authentication to a server or controlling the choice of
cipher used for the TLS/SSL connection. See L<IO::Socket::SSL> documentation for
details.
=head1 PROXY SUPPORT
HTTP::Tiny can proxy both C<http> and C<https> requests. Only Basic proxy
inc/bundle/HTTP/Tiny.pm view on Meta::CPAN
L<IO::Socket::IP> - Required for IPv6 support
=item *
L<IO::Socket::SSL> - Required for SSL support
=item *
L<LWP::UserAgent> - If HTTP::Tiny isn't enough for you, this is the "standard" way to do things
view all matches for this distribution
view release on metacpan or search on metacpan
cpan-security-advisory.json view on Meta::CPAN
{"meta":{"generator":"util/generate","repo":"https://github.com/briandfoy/cpan-security-advisory.git","date":"Tue Jun 17 23:20:10 2025","commit":"c4ad860d9c66a9f741fa520a4472eac57693609c","epoch":1750202410},"dists":{"App-Context":{"versions":[{"date...
view all matches for this distribution
view release on metacpan or search on metacpan
t/data/Haineko-cpanfile view on Meta::CPAN
requires 'Class::Accessor::Lite', '0.05';
requires 'Crypt::SaltedHash', '0.05';
requires 'Digest::SHA', '5.61';
requires 'Email::MIME', '1.910';
requires 'Furl', '2.17';
requires 'IO::Socket::SSL', '1.94';
requires 'JSON::Syck', '1.18';
requires 'Net::DNS', '0.68';
requires 'Net::SMTPS', '0.03';
requires 'Net::CIDR::Lite', '0.21';
requires 'Parallel::Prefork', '0.14';
view all matches for this distribution
view release on metacpan or search on metacpan
lib/CalDAV/Simple.pm view on Meta::CPAN
has ua => (
is => 'ro',
default => sub {
require HTTP::Tiny;
require IO::Socket::SSL;
return HTTP::Tiny->new(agent => __PACKAGE__.'/'.$VERSION);
},
);
has calendar => (is => 'ro');
view all matches for this distribution
view release on metacpan or search on metacpan
}
},
"runtime" : {
"requires" : {
"HTTP::Tiny" : "0",
"IO::Socket::SSL" : "1.56",
"JSON::PP" : "0",
"Net::SSLeay" : "1.49",
"strict" : "0",
"warnings" : "0"
}
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Captive/Portal/TestServer.pm view on Meta::CPAN
my $self = $class->SUPER::new();
# build accept_hook on demand for SSL request
# see perldoc HTTP::Server::Simple and below for the hook definition
if ($ssl) {
require IO::Socket::SSL;
#IO::Socket::SSL->import('debug3');
{
no strict 'refs';
*{ __PACKAGE__ . '::accept_hook' } = \&_ssl_accept_hook;
}
lib/Captive/Portal/TestServer.pm view on Meta::CPAN
my $self = shift;
my $fh = $self->stdio_handle;
$self->SUPER::accept_hook(@_);
my $newfh = IO::Socket::SSL->start_SSL(
$fh,
SSL_server => 1,
SSL_cert_file => './etc/test-cert.pem',
SSL_key_file => './etc/test-priv-key.pem',
)
or die "problem setting up SSL socket: "
. IO::Socket::SSL::errstr();
if ($newfh) {
# help HTTP::Server::Simple::CGI with ENV setup()
$ENV{HTTPS} = 'on';
view all matches for this distribution
view release on metacpan or search on metacpan
- 'Keerati Thiwanruk <keerati.th@gmail.com>'
build_requires:
Catalyst: 0
Catalyst::Controller: 0
FindBin: 0
IO::Socket::SSL: 0
Test::Fake::HTTPD: 0
Test::More: 0
Test::TCP: 0
Test::WWW::Mechanize::Catalyst: 0
namespace::autoclean: 0
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Catalyst/Plugin/Session/Store/Redis.pm view on Meta::CPAN
redis_db => 5, # or 0 by default
redis_ssl => 1, # or 0
redis_name => 'name',
redis_username => 'username', # or default user
redis_password => 'password',
redis_ssl_verify_mode => SSL_VERIFY_PEER, # IO::Socket::SSL
};
# ... in an action:
$c->session->{foo} = 'bar'; # will be saved
lib/Catalyst/Plugin/Session/Store/Redis.pm view on Meta::CPAN
Boolean flag. Default: 0, i.e. off.
You can connect to Redis over SSL/TLS by setting this flag if the
target Redis server or cluster has been setup to support SSL/TLS.
This requires L<IO::Socket::SSL> to be installed on the client. It's off by default.
=head3 redis_ssl_verify_mode
This parameter will be applied when C<redis_ssl> flag is set. It sets
the verification mode for the peer certificate. It's compatible with
the parameter with the same name in L<IO::Socket::SSL>.
=head3 redis_name
Setting a different name for the connection.
view all matches for this distribution
view release on metacpan or search on metacpan
"requires" => {
"Catmandu" => "1.09",
"Catmandu::Identifier" => "0.06",
"Catmandu::XML" => "0.16",
"Furl" => "3.07",
"IO::Socket::SSL" => "2.059",
"Moo" => 0,
"URI" => 0,
"XML::LibXML" => 0,
"XML::LibXSLT" => 0,
"perl" => "v5.10.1"
view all matches for this distribution
view release on metacpan or search on metacpan
}
},
"runtime" : {
"requires" : {
"Catmandu" : "1.2001",
"IO::Socket::SSL" : "1.993",
"JSON::MaybeXS" : "1.003005",
"Moo" : "0",
"REST::Client" : "0",
"URI::Escape" : "0",
"perl" : "v5.10.1"
view all matches for this distribution
view release on metacpan or search on metacpan
"requires" : {
"Catmandu" : "0.9301",
"Data::Validate::Type" : "v1.5.1",
"Data::Validate::URI" : "0.06",
"HTTP::Request::Common" : "6.04",
"IO::Socket::SSL" : "2.015",
"RDF::Trine" : "1.014",
"Test::JSON" : "0.11",
"XML::LibXML" : "2.0121",
"perl" : "v5.14.0"
}
view all matches for this distribution
view release on metacpan or search on metacpan
"Catmandu" : "1.06",
"Date::Parse" : "0",
"Getopt::Long" : "0",
"HTTP::Request" : "0",
"IO" : "0",
"IO::Socket::SSL" : "2.015",
"JSON" : "0",
"Moo" : "0",
"REST::Client" : "0",
"perl" : "v5.14.0"
}
view all matches for this distribution
view release on metacpan or search on metacpan
cpanfile.snapshot view on Meta::CPAN
requirements:
Catmandu 0.9301
Data::Validate::Type v1.5.1
Data::Validate::URI 0.06
HTTP::Request::Common 6.04
IO::Socket::SSL 2.015
Module::Build::Tiny 0.039
RDF::Trine 1.014
Test::JSON 0.11
XML::LibXML 2.0121
perl v5.14.0
cpanfile.snapshot view on Meta::CPAN
asa 0
parent 0
IO-Socket-SSL-2.020
pathname: S/SU/SULLR/IO-Socket-SSL-2.020.tar.gz
provides:
IO::Socket::SSL 2.020
IO::Socket::SSL::Intercept 2.014
IO::Socket::SSL::OCSP_Cache 2.020
IO::Socket::SSL::OCSP_Resolver 2.020
IO::Socket::SSL::PublicSuffix undef
IO::Socket::SSL::SSL_Context 2.020
IO::Socket::SSL::SSL_HANDLE 2.020
IO::Socket::SSL::Session_Cache 2.020
IO::Socket::SSL::Utils 2.014
requirements:
ExtUtils::MakeMaker 0
Net::SSLeay 1.46
Scalar::Util 0
IO-String-1.08
view all matches for this distribution
view release on metacpan or search on metacpan
"runtime" : {
"requires" : {
"Catmandu" : "1.0306",
"Catmandu::XML" : "0.16",
"HTTP::OAI" : "4.03",
"IO::Socket::SSL" : "1.993",
"IO::String" : "0",
"MODS::Record" : "0.11",
"Moo" : "1.0",
"URI" : "0",
"XML::LibXML" : "0",
view all matches for this distribution
view release on metacpan or search on metacpan
}
},
"runtime" : {
"requires" : {
"Catmandu" : ">= 0.9, != 0.9402, != 0.9401",
"IO::Socket::SSL" : "1.993",
"WWW::Zotero" : "0.03",
"perl" : "v5.10.1"
}
},
"test" : {
view all matches for this distribution
view release on metacpan or search on metacpan
t/admin_ops.tape view on Meta::CPAN
'client-peer' => 'Client-Peer'
},
'content-type' => 'application/json',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:45:55 GMT',
'date' => 'Mon, 15 Dec 2014 22:45:55 GMT',
'client-transfer-encoding' => [
'chunked'
],
t/admin_ops.tape view on Meta::CPAN
'client-ssl-cert-subject' => 'Client-SSL-Cert-Subject',
'client-ssl-socket-class' => 'Client-SSL-Socket-Class',
'client-date' => 'Client-Date',
'client-response-num' => 'Client-Response-Num'
},
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:45:55 GMT',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-cipher' => 'AES128-SHA',
'date' => 'Mon, 15 Dec 2014 22:45:55 GMT',
t/admin_ops.tape view on Meta::CPAN
'client-ssl-cert-issuer' => 'Client-SSL-Cert-Issuer',
'client-peer' => 'Client-Peer',
'client-ssl-warning' => 'Client-SSL-Warning'
},
'client-date' => 'Mon, 15 Dec 2014 22:45:55 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-response-num' => 1,
'client-ssl-cipher' => 'AES128-SHA',
'client-transfer-encoding' => [
'chunked'
t/admin_ops.tape view on Meta::CPAN
],
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
'client-ssl-cipher' => 'AES128-SHA',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:45:55 GMT',
'client-ssl-warning' => 'Peer certificate not verified',
'::std_case' => {
'client-ssl-cert-subject' => 'Client-SSL-Cert-Subject',
'client-transfer-encoding' => 'Client-Transfer-Encoding',
t/admin_ops.tape view on Meta::CPAN
],
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
'client-ssl-cipher' => 'AES128-SHA',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:45:56 GMT',
'::std_case' => {
'client-peer' => 'Client-Peer',
'client-ssl-cert-issuer' => 'Client-SSL-Cert-Issuer',
'client-ssl-warning' => 'Client-SSL-Warning',
t/admin_ops.tape view on Meta::CPAN
'client-ssl-warning' => 'Client-SSL-Warning',
'client-peer' => 'Client-Peer',
'client-ssl-cert-issuer' => 'Client-SSL-Cert-Issuer'
},
'client-date' => 'Mon, 15 Dec 2014 22:45:56 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-response-num' => 1,
'client-ssl-cipher' => 'AES128-SHA',
'client-transfer-encoding' => [
'chunked'
t/admin_ops.tape view on Meta::CPAN
}, 'HTTP::Headers' )
}, 'HTTP::Request' ),
'_msg' => 'OK',
'_headers' => bless( {
'client-date' => 'Mon, 15 Dec 2014 22:45:57 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-cipher' => 'AES128-SHA',
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
'client-transfer-encoding' => [
t/admin_ops.tape view on Meta::CPAN
'client-peer' => '10.30.77.228:443',
'accept-ranges' => 'bytes',
'client-ssl-cipher' => 'AES128-SHA',
'date' => 'Mon, 15 Dec 2014 22:45:57 GMT',
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:45:57 GMT',
'content-length' => '20',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)'
}, 'HTTP::Headers' ),
t/admin_ops.tape view on Meta::CPAN
'client-ssl-cipher' => 'Client-SSL-Cipher',
'client-ssl-cert-subject' => 'Client-SSL-Cert-Subject'
},
'connection' => 'close',
'client-date' => 'Mon, 15 Dec 2014 22:45:57 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-response-num' => 1,
'content-length' => '20',
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-cipher' => 'AES128-SHA',
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
t/admin_ops.tape view on Meta::CPAN
'_protocol' => 'HTTP/1.1',
'_headers' => bless( {
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-response-num' => 1,
'client-date' => 'Mon, 15 Dec 2014 22:45:57 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
'client-transfer-encoding' => [
'chunked'
],
'date' => 'Mon, 15 Dec 2014 22:45:57 GMT',
t/admin_ops.tape view on Meta::CPAN
'_msg' => 'OK',
'_content' => '{"user_id":"test_user5","display_name":"display","email":"","suspended":0,"max_buckets":1000,"subusers":[],"keys":[{"user":"test_user5","access_key":"FHDPPL8SX6E9EQ7482GF","secret_key":"PDiQy1l5R9A8uD...
'_rc' => 200,
'_protocol' => 'HTTP/1.1',
'_headers' => bless( {
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:45:58 GMT',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-cipher' => 'AES128-SHA',
'date' => 'Mon, 15 Dec 2014 22:45:58 GMT',
t/admin_ops.tape view on Meta::CPAN
'_content' => '',
'_msg' => 'OK',
'_request' => {},
'_rc' => 200,
'_headers' => bless( {
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:45:58 GMT',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-cipher' => 'AES128-SHA',
'date' => 'Mon, 15 Dec 2014 22:45:58 GMT',
t/admin_ops.tape view on Meta::CPAN
'client-transfer-encoding' => [
'chunked'
],
'date' => 'Mon, 15 Dec 2014 22:45:58 GMT',
'client-date' => 'Mon, 15 Dec 2014 22:45:58 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)'
}, 'HTTP::Headers' ),
'_protocol' => 'HTTP/1.1'
}, 'HTTP::Response' ),
t/admin_ops.tape view on Meta::CPAN
'chunked'
],
'client-ssl-cipher' => 'AES128-SHA',
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-response-num' => 1,
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:45:59 GMT',
'::std_case' => {
'client-ssl-cert-issuer' => 'Client-SSL-Cert-Issuer',
'client-peer' => 'Client-Peer',
'client-ssl-warning' => 'Client-SSL-Warning',
t/admin_ops.tape view on Meta::CPAN
'response' => bless( {
'_headers' => bless( {
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-date' => 'Mon, 15 Dec 2014 22:45:59 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
'client-transfer-encoding' => [
'chunked'
],
'date' => 'Mon, 15 Dec 2014 22:45:59 GMT',
t/admin_ops.tape view on Meta::CPAN
'response' => bless( {
'_protocol' => 'HTTP/1.1',
'_headers' => bless( {
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:45:59 GMT',
'date' => 'Mon, 15 Dec 2014 22:45:59 GMT',
'client-transfer-encoding' => [
'chunked'
],
t/admin_ops.tape view on Meta::CPAN
'_rc' => 200,
'_protocol' => 'HTTP/1.1',
'_headers' => bless( {
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:46:00 GMT',
'date' => 'Mon, 15 Dec 2014 22:46:00 GMT',
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
'client-transfer-encoding' => [
'chunked'
t/admin_ops.tape view on Meta::CPAN
'_protocol' => 'HTTP/1.1',
'_headers' => bless( {
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-response-num' => 1,
'client-date' => 'Mon, 15 Dec 2014 22:46:00 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-transfer-encoding' => [
'chunked'
],
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
'date' => 'Mon, 15 Dec 2014 22:46:00 GMT',
t/admin_ops.tape view on Meta::CPAN
'chunked'
],
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
'date' => 'Mon, 15 Dec 2014 22:46:00 GMT',
'client-date' => 'Mon, 15 Dec 2014 22:46:00 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-response-num' => 1,
'content-type' => 'application/json',
'client-ssl-warning' => 'Peer certificate not verified',
'connection' => 'close',
t/admin_ops.tape view on Meta::CPAN
'client-ssl-cert-subject' => 'Client-SSL-Cert-Subject'
},
'content-type' => 'application/json',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:46:00 GMT',
'date' => 'Mon, 15 Dec 2014 22:46:00 GMT',
'client-transfer-encoding' => [
'chunked'
],
t/admin_ops.tape view on Meta::CPAN
'client-response-num' => 'Client-Response-Num',
'client-ssl-socket-class' => 'Client-SSL-Socket-Class',
'client-date' => 'Client-Date'
},
'client-date' => 'Mon, 15 Dec 2014 22:46:01 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-cipher' => 'AES128-SHA',
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
'client-transfer-encoding' => [
t/admin_ops.tape view on Meta::CPAN
},
{
'response' => bless( {
'_headers' => bless( {
'client-date' => 'Mon, 15 Dec 2014 22:46:01 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-cipher' => 'AES128-SHA',
'client-transfer-encoding' => [
'chunked'
t/admin_ops.tape view on Meta::CPAN
],
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
'client-ssl-cipher' => 'AES128-SHA',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:46:01 GMT'
}, 'HTTP::Headers' ),
'_protocol' => 'HTTP/1.1'
}, 'HTTP::Response' )
},
t/admin_ops.tape view on Meta::CPAN
'chunked'
],
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
'date' => 'Mon, 15 Dec 2014 22:46:02 GMT',
'client-date' => 'Mon, 15 Dec 2014 22:46:02 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-response-num' => 1,
'content-type' => 'application/json',
'connection' => 'close',
'client-ssl-warning' => 'Peer certificate not verified',
t/admin_ops.tape view on Meta::CPAN
'date' => 'Mon, 15 Dec 2014 22:46:02 GMT',
'client-ssl-cipher' => 'AES128-SHA',
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-response-num' => 1,
'client-date' => 'Mon, 15 Dec 2014 22:46:02 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'connection' => 'close',
'client-ssl-warning' => 'Peer certificate not verified',
'::std_case' => {
'client-ssl-warning' => 'Client-SSL-Warning',
'client-peer' => 'Client-Peer',
t/admin_ops.tape view on Meta::CPAN
'date' => 'Mon, 15 Dec 2014 22:46:02 GMT',
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
'client-transfer-encoding' => [
'chunked'
],
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:46:02 GMT',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)'
}, 'HTTP::Headers' ),
'_protocol' => 'HTTP/1.1'
t/admin_ops.tape view on Meta::CPAN
'client-peer' => 'Client-Peer',
'client-ssl-cert-issuer' => 'Client-SSL-Cert-Issuer',
'client-ssl-warning' => 'Client-SSL-Warning'
},
'client-date' => 'Mon, 15 Dec 2014 22:46:03 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-response-num' => 1,
'client-ssl-cipher' => 'AES128-SHA',
'client-transfer-encoding' => [
'chunked'
t/admin_ops.tape view on Meta::CPAN
'chunked'
],
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
'date' => 'Mon, 15 Dec 2014 22:46:03 GMT',
'client-date' => 'Mon, 15 Dec 2014 22:46:03 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'content-type' => 'application/json',
'client-ssl-warning' => 'Peer certificate not verified',
'connection' => 'close',
t/admin_ops.tape view on Meta::CPAN
},
'connection' => 'close',
'content-type' => 'application/json',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:46:03 GMT',
'date' => 'Mon, 15 Dec 2014 22:46:03 GMT',
'client-transfer-encoding' => [
'chunked'
],
t/admin_ops.tape view on Meta::CPAN
'response' => bless( {
'_protocol' => 'HTTP/1.1',
'_headers' => bless( {
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:46:03 GMT',
'date' => 'Mon, 15 Dec 2014 22:46:03 GMT',
'client-transfer-encoding' => [
'chunked'
],
t/admin_ops.tape view on Meta::CPAN
],
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
'client-ssl-cipher' => 'AES128-SHA',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:46:04 GMT'
}, 'HTTP::Headers' ),
'_content' => '{"entries":[],"summary":[]}',
'_msg' => 'OK',
'_request' => {},
t/admin_ops.tape view on Meta::CPAN
'client-transfer-encoding' => [
'chunked'
],
'date' => 'Mon, 15 Dec 2014 22:46:04 GMT',
'client-date' => 'Mon, 15 Dec 2014 22:46:04 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'content-type' => 'application/json',
'::std_case' => {
'client-ssl-warning' => 'Client-SSL-Warning',
t/admin_ops.tape view on Meta::CPAN
],
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
'client-ssl-cipher' => 'AES128-SHA',
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-response-num' => 1,
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:46:04 GMT'
}, 'HTTP::Headers' ),
'_protocol' => 'HTTP/1.1'
}, 'HTTP::Response' ),
'request' => {}
t/admin_ops.tape view on Meta::CPAN
'client-transfer-encoding' => [
'chunked'
],
'date' => 'Mon, 15 Dec 2014 22:46:05 GMT',
'client-date' => 'Mon, 15 Dec 2014 22:46:05 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-response-num' => 1
}, 'HTTP::Headers' ),
'_protocol' => 'HTTP/1.1',
'_content' => '{"user_id":"test_user11","display_name":"display","email":"","suspended":0,"max_buckets":1000,"subusers":[],"keys":[{"user":"test_user11","access_key":"EMHDR5Y3PT5VGB3F0VNI","secret_key":"\\/P0OkCs6dG...
t/admin_ops.tape view on Meta::CPAN
'date' => 'Mon, 15 Dec 2014 22:46:05 GMT',
'client-ssl-cipher' => 'AES128-SHA',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-date' => 'Mon, 15 Dec 2014 22:46:05 GMT',
'client-ssl-socket-class' => 'IO::Socket::SSL',
'connection' => 'close',
'client-ssl-warning' => 'Peer certificate not verified',
'::std_case' => {
'client-transfer-encoding' => 'Client-Transfer-Encoding',
'client-ssl-cert-subject' => 'Client-SSL-Cert-Subject',
t/admin_ops.tape view on Meta::CPAN
}, 'HTTP::Headers' )
}, 'HTTP::Request' ),
'_msg' => 'OK',
'_protocol' => 'HTTP/1.1',
'_headers' => bless( {
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:46:05 GMT',
'client-response-num' => 1,
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-ssl-cipher' => 'AES128-SHA',
'date' => 'Mon, 15 Dec 2014 22:46:05 GMT',
t/admin_ops.tape view on Meta::CPAN
'date' => 'Mon, 15 Dec 2014 22:46:05 GMT',
'client-ssl-cert-subject' => '/OU=Domain Control Validated/CN=*.rados2.dev.liquidweb.com',
'client-transfer-encoding' => [
'chunked'
],
'client-ssl-socket-class' => 'IO::Socket::SSL',
'client-date' => 'Mon, 15 Dec 2014 22:46:05 GMT',
'server' => 'Apache/2.2.22 (Ubuntu)',
'client-response-num' => 1,
'content-type' => 'application/json',
'client-ssl-warning' => 'Peer certificate not verified',
view all matches for this distribution
view release on metacpan or search on metacpan
"ExtUtils::MakeMaker" : "0"
}
},
"develop" : {
"requires" : {
"IO::Socket::SSL" : "0",
"JSON::MaybeXS" : "0",
"Mojo::UserAgent" : "0",
"MooseX::DataModel" : "0",
"MooseX::Types::Path::Class" : "0",
"Sort::Topological" : "0",
view all matches for this distribution
view release on metacpan or search on metacpan
Fork/HardcodedUsage.pod view on Meta::CPAN
if (! $Config{'d_fork'}) {
$reason = 'no fork';
}
# ...
=item L<IO::Socket::SSL>
Version checked: 2.071
File: t/testlib.pl
view all matches for this distribution
view release on metacpan or search on metacpan
cpanfile.snapshot view on Meta::CPAN
Scalar::Util 0
Test::More 0.88
IO-Socket-SSL-1.966
pathname: S/SU/SULLR/IO-Socket-SSL-1.966.tar.gz
provides:
IO::Socket::SSL 1.966
IO::Socket::SSL::Intercept 1.93
IO::Socket::SSL::SSL_Context 1.966
IO::Socket::SSL::SSL_HANDLE 1.966
IO::Socket::SSL::Session_Cache 1.966
IO::Socket::SSL::Utils 0.02
requirements:
ExtUtils::MakeMaker 0
Net::SSLeay 1.46
Scalar::Util 0
IO-Tty-1.12
cpanfile.snapshot view on Meta::CPAN
provides:
LWP::Protocol::https 6.04
LWP::Protocol::https::Socket 6.04
requirements:
ExtUtils::MakeMaker 0
IO::Socket::SSL 1.54
LWP::UserAgent 6.04
Mozilla::CA 20110101
Net::HTTPS 6
perl 5.008001
Lexical-SealRequireHints-0.007
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Chooser.pm view on Meta::CPAN
use warnings;
use strict;
use Exporter;
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
use IO::Socket::SSL;
use Sys::Hostname;
use Text::NeatTemplate;
our @ISA = qw(Exporter);
our @EXPORT = qw(choose);
lib/Chooser.pm view on Meta::CPAN
#handles the the sslcert test
sub sslcert{
my %args=%{$_[0]};
my $client=IO::Socket::SSL->new( $args{host}.':'.$args{port},
SSL_version=>$args{version},
SSL_cipher_list=>$args{cipher_list},
SSL_ca_file=>$args{ca_file},
SSL_ca_path=>$args{ca_path},
SSL_crl_file=>$args{crl_file},
lib/Chooser.pm view on Meta::CPAN
=head3 args
To get the values to for the subject and issure, use the
code below and use everything after /\: /.
use IO::Socket::SSL;
my $client->new($host.':'.$port);
print $client->dump_peer_certificate;
The required values are listed below.
host
port
subject
For more information about most of these options, please
see the documentation for IO::Socket::SSL for the new
method.
=head4 CAfile
The CA file to use.
view all matches for this distribution
view release on metacpan or search on metacpan
}
},
"runtime" : {
"requires" : {
"HTTP::Tiny" : "0",
"IO::Socket::SSL" : "0",
"JSON::MaybeXS" : "0",
"Moo" : "0",
"MooX::StrictConstructor" : "0",
"Throwable::Error" : "0",
"Type::Tiny" : "0"
view all matches for this distribution
view release on metacpan or search on metacpan
lib/ComXo/Call2.pm view on Meta::CPAN
use warnings;
our $VERSION = '0.02';
use Carp;
use SOAP::Lite;
use IO::Socket::SSL qw( SSL_VERIFY_NONE );
my %possible_err = (
'*01' => 'Number Failed',
'*02' => 'Alias Does Not Exist',
'*03' => 'No Call Records',
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Connector/Proxy/SOAP/Lite.pm view on Meta::CPAN
$client->proxy($proxy);
$self->log()->trace('Using Net::SSL, EVN is' . Dumper $ENV);
} # end of Net:SSL, IO::Socket::SSL
elsif( $proxy =~ /^https:/i ) {
use IO::Socket::SSL;
$ENV{PERL_NET_HTTPS_SSL_SOCKET_CLASS} = "IO::Socket::SSL";
my $ssl_opts = {
verify_hostname => ($self->ssl_ignore_hostname ? 0 : 1)
};
if ($self->certificate_p12_file) {
die "Using pkcs12 containers is not supported by IO::Socket::SSL"
}
if ($self->certificate_key_file) {
if (!$self->certificate_file) {
die "You need to pass certificate AND key file";
lib/Connector/Proxy/SOAP/Lite.pm view on Meta::CPAN
$ssl_opts->{SSL_ca_file} = $self->ca_certificate_file;
}
# For whatever reason LWP wants the ssl_opts as ARRAYref!
$client-> proxy($proxy, ssl_opts => [%{$ssl_opts}] );
$self->log()->trace('Using IO::Socket::SSL with options ' . Dumper $ssl_opts);
} else {
# No ssl
$client->proxy($proxy);
}
lib/Connector/Proxy/SOAP/Lite.pm view on Meta::CPAN
=over
=item use_net_ssl
Set this to a true value to use Net::SSL as backend library (otherwise
IO::Socket::SSL is used). Be aware the Net::SSL does not check the hostname
of the server certificate so Man-in-the-Middle-Attacks might be possible.
You should use this only with a really good reason or if you need support
for PKCS12 containers.
=item ssl_ignore_hostname
Do not validate the hostname of the server certificate (only useful with
IO::Socket::SSL as Net::SSL does not check the hostname at all).
=item certificate_file
Path to a PEM encoded certificate file.
view all matches for this distribution
view release on metacpan or search on metacpan
- Modified Python binding to work in Conda env
- Increased Perl version from 5.16 to 5.26
0.11_1 2023-07-09T00:00:00Z (Manuel Rueda <mrueda@cpan.org>)
- Reverted change in Makefile.PL for 'IO::Socket::SSL'
- IO::Socker::SSL only is used if installed
0.11 2023-07-09T00:00:00Z (Manuel Rueda <mrueda@cpan.org>)
- Uncommented 'IO::Socket::SSL' in Makefile.PL to pass self-validation of mapping schema in t/
- Changed cnag.crg.eu to cnag.eu
0.10 2023-07-03T00:00:00Z (Manuel Rueda <mrueda@cpan.org>)
- Added share/db/{omim,hpo}.db SQLite databases
- Modified source to accomodate such dbs
view all matches for this distribution
view release on metacpan or search on metacpan
CHANGELOG.md view on Meta::CPAN
- Add highlight for new messages since last time window had focus #56
- Add /kick command #134
- Various UI improvements (Flatten, highlights/background go all out) #145, #146, #147, #162
## 0.82 (2014-08-24)
- Requires IO::Socket::SSL 1.84
- Requires Mojolicious 5.30
- Fix nicks starting with special character, #130
- Fix jumpy text when sending a message
- Fix invite only template styling
- Fix /help command and add click actions
view all matches for this distribution
view release on metacpan or search on metacpan
Makefile.PL view on Meta::CPAN
}
close( $io );
}
warn( "[warning] You have syntax error in your Apache configuration file at line $has_error. You might want to do an apache2ctl configtest or (${cmd} -t)\n" ) if( $has_error );
# IO::Socket::SSL or Net::SSL
eval( 'require IO::Socket::SSL' );
if( $@ )
{
my $io_ssl_err = $@;
eval( 'require Net::SSL' );
unless( $@ )
Makefile.PL view on Meta::CPAN
$has_perl_ssl = 'Net::SSL';
}
}
else
{
$has_perl_ssl = 'IO::Socket::SSL';
}
if( $has_ssl && $has_perl_ssl )
{
print( STDERR "Found Apache module mod_ssl enabled and $has_perl_ssl module installed. Ok\n" ) if( $MY_DEBUG );
$ref->{_HAS_SSL} = 1;
}
elsif( $has_ssl && !$has_perl_ssl )
{
print( STDERR "Found Apache module mod_ssl enabled, but missing perl modules (either IO::Socket::SSL or Net::SSL)\n" ) if( $MY_DEBUG );
}
elsif( !$has_ssl && $has_perl_ssl )
{
print( STDERR "Apache module mod_ssl is not enabled, but found $has_perl_ssl\n" ) if( $MY_DEBUG );
}
else
{
print( STDERR "Apache module mod_ssl is not enabled and could not find either IO::Socket::SSL nor Net::SSL, deactivating the use of SSL for our tests.\n" ) if( $MY_DEBUG );
}
}
print( STDERR "Found apxs? ", ( $ref->{apxs} ? "yes at $ref->{apxs}" : 'no' ), "\n" ) if( $MY_DEBUG );
if( !$ref->{apxs} )
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Coro/PatchSet/LWP.pm view on Meta::CPAN
use strict;
use Coro::Select;
BEGIN {
eval {
*IO::Socket::SSL::tie = *IO::Socket::SSL::untie = sub{}; # prevent overriding of our tie mechanism
require IO::Socket::SSL;
};
# for those who want to use LWP::Protocol::socks
$IO::Socket::Socks::SOCKET_CLASS = Coro::LWP::Socket::;
}
use Coro::LWP;
lib/Coro/PatchSet/LWP.pm view on Meta::CPAN
for (@Net::HTTP::ISA, @Net::FTP::ISA, @Net::NTTP::ISA) {
$_ = Coro::LWP::Socket::
if $_ eq IO::Socket::INET6:: || $_ eq IO::Socket::IP::;
}
$IO::Socket::SSL::ISA[0] = Coro::LWP::Socket:: if IO::Socket::SSL->can('new');
1;
__END__
lib/Coro/PatchSet/LWP.pm view on Meta::CPAN
IPv6 support for LWP, because Coro::Socket is still IPv4 only. See t/09_lwp_socket_class.t
=head2 coro compatible support for https
Coro::LWP doesn't do any special hacks about https, so https connections still blocks coro threads.
This patch fixes this problem, but don't forget to load it before IO::Socket::SSL, so C<use> it as early as
possible.
=head2 loading other necessary patches
This patch will also load other necessary patches: Coro::PatchSet::Handle and Coro::PatchSet::Socket
view all matches for this distribution
view release on metacpan or search on metacpan
in the client itself.
0.06 14 March 2016
- Added certificate revocation to both the library (Crypt::LE) and the client (le.pl).
- Improved documentation and le.pl usage help.
- Added HTTP::Tiny dependencies for NetBSD/OpenBSD boxes, which don't have IO::Socket::SSL and Net::SSLeay
installed by default.
0.05 13 March 2016
Client: In addition to be able to use external challenge handlers, le.pl can now also use completion handlers. Example:
view all matches for this distribution
view release on metacpan or search on metacpan
=head1 DO YOU NEED Crypt::SSLeay?
Starting with version 6.02 of L<LWP>, C<https> support was unbundled into
L<LWP::Protocol::https>. This module specifies as one of its prerequisites
L<IO::Socket::SSL> which is automatically used by L<LWP::UserAgent> unless
this preference is overridden separately. C<IO::Socket::SSL> is a more
complete implementation, and, crucially, it allows hostname verification.
C<Crypt::SSLeay> does not support this. At this point, C<Crypt::SSLeay> is
maintained to support existing software that already depends on it.
However, it is possible that your software does not really depend on
C<Crypt::SSLeay>, only on the ability of C<LWP::UserAgent> class to
communicate with sites over SSL/TLS.
If are using version C<LWP> 6.02 or later, and therefore have installed
C<LWP::Protocol::https> and its dependencies, and do not explicitly C<use>
C<Net::SSL> before loading C<LWP::UserAgent>, or override the default socket
class, you are probably using C<IO::Socket::SSL> and do not really need
C<Crypt::SSLeay>.
If you have both C<Crypt::SSLeay> and C<IO::Socket::SSL> installed, and
would like to force C<LWP::UserAgent> to use C<Crypt::SSLeay>, you can
use:
use Net::HTTPS;
$Net::HTTPS::SSL_SOCKET_CLASS = 'Net::SSL';
=item Specify SSL Socket Class
C<$ENV{PERL_NET_HTTPS_SSL_SOCKET_CLASS}> can be used to instruct
C<LWP::UserAgent> to use C<Net::SSL> for HTTPS support rather than
C<IO::Socket::SSL>.
=item Proxy Support
$ENV{HTTPS_PROXY} = 'http://proxy_hostname_or_ip:port';
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dancer/Plugin/Auth/Google.pm view on Meta::CPAN
use Carp ();
use Scalar::Util;
use Try::Tiny;
use Furl;
use IO::Socket::SSL;
use URI;
my $client_id;
my $client_secret;
my $scope;
view all matches for this distribution