view release on metacpan or search on metacpan
bin/plx-packed view on Meta::CPAN
$fatpacked{"File/pushd.pm"} = '#line '.(1+__LINE__).' "'.__FILE__."\"\n".<<'FILE_PUSHD';
use strict;use warnings;package File::pushd;our$VERSION='1.009';our@EXPORT=qw(pushd tempd);our@ISA=qw(Exporter);use Exporter;use Carp;use Cwd qw(getcwd abs_path);use File::Path qw(rmtree);use File::Temp qw();use File::Spec;use overload q{""}=>sub...
FILE_PUSHD
$fatpacked{"HTTP/Tiny.pm"} = '#line '.(1+__LINE__).' "'.__FILE__."\"\n".<<'HTTP_TINY';
package HTTP::Tiny;use strict;use warnings;our$VERSION='0.056';use Carp ();my@attributes;BEGIN {@attributes=qw(cookie_jar default_headers http_proxy https_proxy keep_alive local_address max_redirect max_size proxy no_proxy timeout SSL_options ver...
sub $sub_name {
my (\$self, \$url, \$args) = \@_;
\@_ == 2 || (\@_ == 3 && ref \$args eq 'HASH')
or Carp::croak(q/Usage: \$http->$sub_name(URL, [HASHREF])/ . "\n");
return \$self->request('$req_method', \$url, \$args || {});
view all matches for this distribution
view release on metacpan or search on metacpan
t/io-socket-inet.t view on Meta::CPAN
=cut
plan skip_all => "$^O is not supported" if $^O eq 'MSWin32';
plan skip_all => 'IO::Socket::IP 0.20 required' unless eval 'use IO::Socket::IP 0.20; 1';
plan skip_all => 'IO::Socket::SSL 1.84 required' unless eval 'use IO::Socket::SSL 1.84; 1';
my $home = Path::Tiny->new('local/tmp/real');
$home->remove_tree({safe => 0}); # remove old files
# create ssl certificates
create_root_ca();
create_intermediate_ca();
create_cert($_) for qw(server client);
$IO::Socket::SSL::DEBUG = $ENV{SSL_DEBUG} || 0;
my $host = '127.0.0.1';
my $port = IO::Socket::INET->new(Listen => 5, LocalAddr => $host)->sockport; # random port
my $pid = fork // plan skip_all => "Could not fork: $!";
t/io-socket-inet.t view on Meta::CPAN
SSL_key_file => $home->child('server.key.pem')->stringify,
SSL_honor_cipher_order => 1,
SSL_verify_mode => 1,
);
my $s = IO::Socket::SSL->new(%args) or die "[SERVER] Failed to listen: $! ($IO::Socket::SSL::SSL_ERROR)";
while (1) {
note "Waiting for client to connect";
my $client = $s->accept or die "[SERVER] Failed to accept or ssl handshake: $! ($IO::Socket::SSL::SSL_ERROR)";
my $buf = $client->readline;
my $subject = $client->peer_certificate('subject');
note $subject;
$client->print("You ($subject) sent: $buf");
}
t/io-socket-inet.t view on Meta::CPAN
);
while ($guard--) {
note "Trying to connect to server ($pid)";
usleep 300e3;
my $client = IO::Socket::SSL->new(%args) or next;
return $client;
}
die "[CLIENT] Failed connect or ssl handshake: $! ($IO::Socket::SSL::SSL_ERROR)";
}
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/tldr.pm view on Meta::CPAN
use Encode ();
use File::Spec;
use File::Which ();
use Getopt::Long ();
use HTTP::Tiny;
use IO::Socket::SSL;
use Pod::Usage ();
use Term::ReadKey ();
use Text::Fold ();
use constant DEBUG => !!$ENV{TLDR_DEBUG};
view all matches for this distribution
view release on metacpan or search on metacpan
.travis.yml view on Meta::CPAN
- "5.20"
- "5.10"
env:
- "HARNESS_OPTIONS=j9"
install:
- "cpanm -n Test::Pod Test::Pod::Coverage IO::Socket::SSL"
- "cpanm -n --installdeps ."
notifications:
email: false
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Armadito/Agent/HTTP/Client.pm view on Meta::CPAN
# just checking on LWP version is not enough
$self->{ua}->ssl_opts( verify_hostname => 0, SSL_verify_mode => 0 )
if $self->{ua}->can('ssl_opts');
}
else {
# only IO::Socket::SSL can perform full server certificate validation,
# Net::SSL is only able to check certification authority, and not
# certificate hostname
IO::Socket::SSL->require();
die "IO::Socket::SSL Perl module not available, "
. "unable to validate SSL certificates "
. "(workaround: use 'no-ssl-check' configuration parameter)"
if $EVAL_ERROR;
if ( $self->{logger}{verbosity} > LOG_DEBUG2 ) {
lib/Armadito/Agent/HTTP/Client.pm view on Meta::CPAN
$self->{ua}->ssl_opts( SSL_ca_path => $self->{ca_cert_dir} )
if $self->{ca_cert_dir};
}
else {
# SSL_verifycn_scheme and SSL_verifycn_name are required
die "IO::Socket::SSL Perl module too old "
. "(available: $IO::Socket::SSL::VERSION, required: 1.14), "
. "unable to validate SSL certificates "
. "(workaround: use 'no-ssl-check' configuration parameter)"
if $IO::Socket::SSL::VERSION < 1.14;
# use a custom HTTPS handler to workaround default LWP5 behaviour
Armadito::Agent::HTTP::Protocol::https->use(
ca_cert_file => $self->{ca_cert_file},
ca_cert_dir => $self->{ca_cert_dir},
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Arriba/Server.pm view on Meta::CPAN
use base 'Net::Server::PreFork';
use HTTP::Date;
use HTTP::Status qw(status_message);
use HTTP::Parser::XS qw(parse_http_request);
use IO::Socket::SSL;
use Plack::Util;
use Plack::TempBuffer;
use constant DEBUG => $ENV{ARRIBA_DEBUG};
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Async/Redis.pm view on Meta::CPAN
return Time::HiRes::time() + $seconds + $self->{blocking_timeout_buffer};
}
sub _ssl_verify_peer {
require IO::Socket::SSL;
return IO::Socket::SSL::SSL_VERIFY_PEER();
}
sub _ssl_verify_none {
require IO::Socket::SSL;
return IO::Socket::SSL::SSL_VERIFY_NONE();
}
# Build the IO::Socket::SSL option hash for the current connection.
# Handles chain verification, SNI, hostname identity checking, and
# client cert/key/CA forwarding. Called by _tls_upgrade and directly
# by unit tests.
sub _build_tls_options {
my ($self) = @_;
lib/Async/Redis.pm view on Meta::CPAN
# Non-blocking TLS upgrade
async sub _tls_upgrade {
my ($self, $socket) = @_;
require IO::Socket::SSL;
my %ssl_opts = $self->_build_tls_options;
# Start SSL (does not block because SSL_startHandshake => 0)
IO::Socket::SSL->start_SSL($socket, %ssl_opts)
or die Async::Redis::Error::Connection->new(
message => "SSL setup failed: " . IO::Socket::SSL::errstr(),
host => $self->{host},
port => $self->{port},
);
# Drive handshake with non-blocking loop
lib/Async/Redis.pm view on Meta::CPAN
# Check what the handshake needs
my $remaining = $deadline - Time::HiRes::time();
$remaining = 0.1 if $remaining <= 0;
if ($IO::Socket::SSL::SSL_ERROR == IO::Socket::SSL::SSL_ERROR_WANT_READ()) {
# Wait for socket to become readable with timeout
my $read_f = Future::IO->waitfor_readable($socket);
my $timeout_f = Future::IO->sleep($remaining)->then(sub {
return Future->fail('tls_timeout');
});
lib/Async/Redis.pm view on Meta::CPAN
message => "TLS handshake timed out",
timeout => $self->{connect_timeout},
);
}
}
elsif ($IO::Socket::SSL::SSL_ERROR == IO::Socket::SSL::SSL_ERROR_WANT_WRITE()) {
# Wait for socket to become writable with timeout
my $write_f = Future::IO->waitfor_writable($socket);
my $timeout_f = Future::IO->sleep($remaining)->then(sub {
return Future->fail('tls_timeout');
});
lib/Async/Redis.pm view on Meta::CPAN
}
}
else {
# Actual error
die Async::Redis::Error::Connection->new(
message => "TLS handshake failed: " . IO::Socket::SSL::errstr(),
host => $self->{host},
port => $self->{port},
);
}
}
view all matches for this distribution
view release on metacpan or search on metacpan
"Archive::CAR" : "0",
"Codec::CBOR" : "0",
"Crypt::JWT" : "0",
"Crypt::PK::ECC" : "0",
"File::ShareDir::Tiny" : "0",
"IO::Socket::SSL" : "1.42",
"JSON::PP" : "0",
"MIME::Base64" : "0",
"Net::SSLeay" : "1.49",
"Path::Tiny" : "0",
"Time::Moment" : "0",
view all matches for this distribution
view release on metacpan or search on metacpan
lib/AuthCAS.pm view on Meta::CPAN
AuthCAS aims at providing a Perl API to JA-SIG Central Authentication System (CAS).
Only a basic Perl library is provided with CAS whereas AuthCAS is a full object-oriented library.
=head1 PREREQUISITES
This script requires IO::Socket::SSL and LWP::UserAgent
=head1 SYNOPSIS
A simple example with a direct CAS authentication
lib/AuthCAS.pm view on Meta::CPAN
=item proxyValidatePath - '/proxyValidate'
=item SSL_version - unset
Sets the version of the SSL protocol used to transmit data. If the default causes connection issues, setting it to 'SSLv3' may help.
see the documentation for L<IO::Socket::SSL/"METHODS"> for more information
see L<http://www.perlmonks.org/?node_id=746493> for more details.
=back
Returns a new B<AuthCAS> or dies on error.
lib/AuthCAS.pm view on Meta::CPAN
$errors = sprintf
"error : incorrect access to cafile ".($trusted_ca_file||'<empty>')." or capath ".($trusted_ca_path||'<empty>')."\n";
return undef;
}
unless ( eval "require IO::Socket::SSL" ) {
$errors = sprintf
"Unable to use SSL library, IO::Socket::SSL required, install IO-Socket-SSL (CPAN) first\n";
return undef;
}
require IO::Socket::SSL;
unless ( eval "require LWP::UserAgent" ) {
$errors = sprintf
"Unable to use LWP library, LWP::UserAgent required, install LWP (CPAN) first\n";
return undef;
lib/AuthCAS.pm view on Meta::CPAN
if ( $trusted_ca_file || $trusted_ca_path );
$ssl_options{'SSL_version'} = $ssl_data->{'SSL_version'}
if defined( $ssl_data->{'SSL_version'} );
$ssl_socket = new IO::Socket::SSL(%ssl_options);
unless ($ssl_socket) {
$errors = sprintf "error %s unable to connect https://%s:%s/\n",
&IO::Socket::SSL::errstr, $host, $port;
return undef;
}
my $request = "GET $path HTTP/1.0\r\nHost: $host\r\n\r\n";
print $ssl_socket "$request";
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/Credential/x509.pm view on Meta::CPAN
#
# preparators
#
$Authen::Credential::Preparator{x509}{"IO::Socket::SSL"} = sub {
my($self, %data);
$self = shift(@_);
validate_pos(@_) if @_;
foreach my $tmp ($self->cert(), $ENV{X509_USER_CERT}) {
next unless defined($tmp);
lib/Authen/Credential/x509.pm view on Meta::CPAN
It supports the following targets for the prepare() method:
=over
=item IO::Socket::SSL
it returns a reference to a hash containing the suitable options for
IO::Socket::SSL
=back
=head1 EXAMPLE
use Authen::Credential;
use IO::Socket::SSL;
# get the credential from somewhere
$cred = Authen::Credential->parse(...);
# use the prepare() method to get ready-to-use data
$sslopts = $cred->prepare("IO::Socket::SSL");
$socket = IO::Socket::SSL->new(
PeerHost => "web.acme.com",
PeerPort => "https",
%{ $sslopts },
);
=head1 SEE ALSO
L<Authen::Credential>,
L<IO::Socket::SSL>,
L<http://en.wikipedia.org/wiki/X.509>.
=head1 AUTHOR
Lionel Cons L<http://cern.ch/lionel.cons>
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/Simple/Gmail.pm view on Meta::CPAN
use strict;
use warnings;
$Authen::Simple::Gmail::VERSION = '0.2';
use IO::Socket::SSL ();
use Authen::Simple::Adapter ();
use base 'Authen::Simple::Adapter';
my $portable_crlf = "\015\012"; # "\r\n" is not portable
sub check {
my ( $self, $username, $password ) = @_;
my $sock = IO::Socket::SSL->new(
'PeerHost' => "pop.gmail.com",
'PeerPort' => "995",
'SSL_verify_mode' => IO::Socket::SSL::SSL_VERIFY_NONE, # Patches welcome!
);
if ( !$sock ) {
$self->log->error( IO::Socket::SSL->errstr() ) if $self->log;
return;
}
my $line = <$sock>; # welcome msg
lib/Authen/Simple/Gmail.pm view on Meta::CPAN
=head1 DEPENDENCIES
L<Authen::Simple::Adapter> for subclassing.
L<IO::Socket::SSL> for the SSL socket
=head1 INCOMPATIBILITIES
None reported.
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",
"Throwable::Error" : "0",
"Types::Standard" : "0",
"perl" : "5.008"
view all matches for this distribution
view release on metacpan or search on metacpan
}
if ($fullname eq 'utf8::SWASHNEW') { # bypass utf8::AUTOLOAD, a new 5.13.9 mess
load_utf8_heavy();
}
if ($fullname eq 'IO::Socket::SSL::SSL_Context::new') {
if ($IO::Socket::SSL::VERSION ge '1.956' and $IO::Socket::SSL::VERSION lt '1.995') {
# See https://code.google.com/p/perl-compiler/issues/detail?id=317
# https://rt.cpan.org/Ticket/Display.html?id=95452
warn "Warning: Your IO::Socket::SSL version $IO::Socket::SSL::VERSION is unsupported to create\n".
" a server. You need to upgrade IO::Socket::SSL to at least 1.995 [CPAN #95452]\n";
}
}
if (!$$root && !$cvxsub) {
my $reloaded;
view all matches for this distribution
view release on metacpan or search on metacpan
"Clone" => 0,
"Data::Dumper" => 0,
"DateTime" => 0,
"ExtUtils::MakeMaker" => 0,
"File::Spec" => 0,
"IO::Socket::SSL" => 0,
"Test::More" => 0,
"Test::RequiresInternet" => 0,
"Text::Password::Pronounceable" => 0
}
);
"Clone" => 0,
"Data::Dumper" => 0,
"DateTime" => 0,
"ExtUtils::MakeMaker" => 0,
"File::Spec" => 0,
"IO::Socket::SSL" => 0,
"Module::Build" => "0.28",
"Test::More" => 0,
"Test::RequiresInternet" => 0,
"Text::Password::Pronounceable" => 0
);
view all matches for this distribution
view release on metacpan or search on metacpan
"test" : {
"requires" : {
"Cpanel::JSON::XS" : "4.11",
"Digest::SHA" : "6.02",
"HTTP::Tiny" : "0.094",
"IO::Socket::SSL" : "1.56",
"MIME::Base64" : "3.15",
"Marlin" : "0.023001",
"Net::SSLeay" : "1.49",
"Path::Tiny" : "0.108",
"Test::More" : "0.98",
view all matches for this distribution
view release on metacpan or search on metacpan
"LWP::UserAgent" : "0"
}
},
"test" : {
"requires" : {
"IO::Socket::SSL" : "0",
"Test::Exception" : "0",
"Test::More" : "0"
}
}
},
view all matches for this distribution
view release on metacpan or search on metacpan
Bio::Das provides access to genome sequencing and annotation databases
that export their data in Distributed Annotation System (DAS) format
version 1.5. This system is described at http://biodas.org. Both
unencrypted (http:) and SSL-encrypted (https:) DAS servers are
supported. (To run SSL, you will need IO::Socket::SSL and Net::SSLeay
installed).
The components of the Bio::Das class hierarchy are:
=over 4
view all matches for this distribution
view release on metacpan or search on metacpan
}
},
"runtime" : {
"requires" : {
"Bot::ChatBots" : "0.006",
"IO::Socket::SSL" : "2.038",
"Mojolicious" : "7.10",
"Moo" : "2.002005",
"namespace::clean" : "0.27",
"perl" : "5.010"
}
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Bot/ChatBots/Telegram/LongPoll.pm view on Meta::CPAN
use Ouch;
use Try::Tiny;
use Log::Any qw< $log >;
use Mojo::IOLoop ();
use IO::Socket::SSL (); # just to be sure to complain loudly in case
use List::Util qw< max >;
use Data::Dumper;
use Moo;
use namespace::clean;
view all matches for this distribution
view release on metacpan or search on metacpan
}
},
"runtime" : {
"requires" : {
"Bot::ChatBots" : "0.010",
"IO::Socket::SSL" : "2.038",
"Log::Any" : "1.042",
"Mojolicious" : "7.08",
"Moo" : "2.002005",
"Ouch" : "0.0409",
"Try::Tiny" : "0.27",
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Bot/ChatBots/Role/WebPoller.pm view on Meta::CPAN
use strict;
use warnings;
{ our $VERSION = '0.014'; }
use Ouch;
use IO::Socket::SSL ();
use Mojo::UserAgent;
use Log::Any qw< $log >;
use Try::Tiny;
use Moo::Role;
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Bot/IRC.pm view on Meta::CPAN
use Daemon::Device;
use Date::Format 'time2str';
use Encode qw( encode decode );
use IO::Socket::IP -register;
use IO::Socket::SSL;
use Time::Crontab;
our $VERSION = '1.49'; # VERSION
sub new {
lib/Bot/IRC.pm view on Meta::CPAN
sub run {
my $self = shift;
my $commands = \@_;
$self->{socket} = ( ( $self->{connect}{ssl} ) ? 'IO::Socket::SSL' : 'IO::Socket::IP' )->new(
PeerAddr => $self->{connect}{server},
PeerPort => $self->{connect}{port},
Proto => 'tcp',
Family => ( $self->{connect}{ipv6} ? AF_INET6 : AF_INET ),
Type => SOCK_STREAM,
view all matches for this distribution
view release on metacpan or search on metacpan
CPANReporter2.pm view on Meta::CPAN
Data::GUID 0.048
Net::SSLeay 1.58
IO::Socket::SSL 1.981
LWP::Protocol::https 6.04
IPC::Cmd 0.76
view all matches for this distribution
view release on metacpan or search on metacpan
CygwinVendor.pm view on Meta::CPAN
Test::Reporter 1.60
Net::SSLeay 1.58
IO::Socket::SSL 1.981
LWP::Protocol::https 6.04
common::sense 3.72
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Bundle/DadaMailXXL.pm view on Meta::CPAN
HTML::TreeBuilder - used for Dada Mail's "Magic" templates, as well as manipulating HTML documents
HTTP::BrowserDetect - Makes reporting of user agents prettier
IO::Socket::SSL
Net::Domain
Net::DNS
view all matches for this distribution
view release on metacpan or search on metacpan
Bundle/OS2_default7.pm view on Meta::CPAN
Archive::Zip
Crypt::SSLeay
IO::Socket::SSL
# CPANPLUS - won't install inside ReadKey or in <nul
CPANPLUS::Shell::Curses
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Bundle/POPFile.pm view on Meta::CPAN
IO::Select
IO::Socket
IO::Socket::SSL
IO::Socket::Socks
MIME::Base64
view all matches for this distribution
view release on metacpan or search on metacpan
Our optional modules, which are not required for a default install
and thus not installed by default, but which may become required as
you edit your site configuration, are: Cache::Memcached Silly::Werder
GD GD::Text GD::Graph Apache::SSI Apache::RegistryFilter GraphViz
Net::IRC Proc::ProcessTable Net::Jabber IO::Socket::SSL
=cut
view all matches for this distribution
view release on metacpan or search on metacpan
1.03 2008-04-02T19:26:52
- Changed from nonexistent Test::Coverage to the correct name,
Test::Pod::Coverage.
- Changed from nonexistent Net::FTP::Server to the correct name,
Net::FTPServer.
- Removed IO::Socket::SSL for now, since its tests fail.
- Added:
+ Want
+ Parse::RecDescent
+ JSON and JSON::XS
+ App::Ack
view all matches for this distribution
view release on metacpan or search on metacpan
"HTTP::Cookies" : "0",
"HTTP::Daemon::SSL" : "0",
"HTTP::Request" : "0",
"HTTP::Request::Params" : "0",
"IO::All" : "0",
"IO::Socket::SSL" : "0",
"Image::ExifTool" : "0",
"JSON::XS" : "0",
"LWP::UserAgent" : "0",
"List::Util" : "0",
"Moo" : "0",
view all matches for this distribution