MikroTik-API
view release on metacpan or search on metacpan
version: 1.4
name: MikroTik-API
no_index:
directory:
- inc
- t
requires:
Carp: 0
Digest::MD5: 0
IO::Socket::IP: 0
IO::Socket::SSL: 0
Moo: 0
MooX::Types::MooseLike::Base: 0
Time::Out: 0
Try::Tiny: 0
Type::Tiny: 0
namespace::autoclean: 0
perl: 5.6.0
resources:
bugtracker: http://rt.cpan.org/NoAuth/Bugs.html?Dist=MikroTik-API
license: http://www.opensource.org/licenses/mit-license.php
Makefile.PL view on Meta::CPAN
);
build_requires (
'Test::More' => 0,
);
requires (
'Carp' => 0,
'Digest::MD5' => 0,
'IO::Socket::IP' => 0,
'IO::Socket::SSL' => 0,
'Moo' => 0,
'MooX::Types::MooseLike::Base' => 0,
'Time::Out' => 0,
'Try::Tiny' => 0,
'Type::Tiny' => 0,
'namespace::autoclean' => 0,
);
install_as_cpan;
auto_install;
lib/MikroTik/API.pm view on Meta::CPAN
$api->logout();
=head1 DESCRIPTION
=cut
use Carp qw(croak);
use Digest::MD5;
use IO::Socket::IP;
use IO::Socket::SSL;
use Moo;
use MooX::Types::MooseLike::Base qw(Bool CodeRef Int Str);
use Time::Out qw{ timeout };
use Try::Tiny;
use Type::Tiny;
use namespace::autoclean;
=head1 PUBLIC METHODS
lib/MikroTik/API.pm view on Meta::CPAN
sub connect {
my ( $self ) = @_;
if ( ! $self->get_host() ) {
croak 'host must be set before connect()'
}
if ( $self->get_use_ssl ) {
my $socket
= try {
IO::Socket::SSL->new(
PeerHost => $self->get_host,
PeerPort => $self->get_port,
Proto => 'tcp',
SSL_cipher_list => 'HIGH',
SSL_verify_mode => $self->get_ssl_verify(),
Timeout => $self->get_timeout,
);
}
catch {
croak sprintf
'failed connect %s:%s or ssl handshake (%s: %s)',
$self->get_host,
$self->get_port,
$_,
IO::Socket::SSL::errstr();
};
# obsolete?
$socket
or croak sprintf
'failed connect %s:%s or ssl handshake (%s: %s)',
$self->get_host,
$self->get_port,
$!,
IO::Socket::SSL::errstr();
$self->set_socket($socket);
}
else {
$self->set_socket(
IO::Socket::IP->new(
PeerHost => $self->get_host,
PeerPort => $self->get_port,
Proto => 'tcp',
Timeout => $self->get_timeout,
)
( run in 0.508 second using v1.01-cache-2.11-cpan-4d50c553e7e )