App-Acmeman
view release on metacpan or search on metacpan
"requires" : {
"Apache::Config::Preproc" : "1.04",
"Apache::Defaults" : "1.02",
"Config::Parser" : "1.03",
"Crypt::Format" : "0.06",
"Crypt::OpenSSL::PKCS10" : "0.16",
"Crypt::OpenSSL::RSA" : "0.28",
"Crypt::OpenSSL::X509" : "1.804",
"Crypt::RSA::Parse" : "0.043",
"Data::Dumper" : "0",
"DateTime::Format::Strptime" : "1.42",
"File::BackupCopy" : "1",
"File::Basename" : "2.84",
"File::Path" : "2.08",
"Getopt::Long" : "2.34",
"LWP::Protocol::https" : "6.04",
"LWP::UserAgent" : "6.05",
"Net::ACME2" : "0.33",
"Pod::Man" : "2.25",
"Pod::Usage" : "1.51",
"Socket" : "0",
requires:
Apache::Config::Preproc: '1.04'
Apache::Defaults: '1.02'
Config::Parser: '1.03'
Crypt::Format: '0.06'
Crypt::OpenSSL::PKCS10: '0.16'
Crypt::OpenSSL::RSA: '0.28'
Crypt::OpenSSL::X509: '1.804'
Crypt::RSA::Parse: '0.043'
Data::Dumper: '0'
DateTime::Format::Strptime: '1.42'
File::BackupCopy: '1'
File::Basename: '2.84'
File::Path: '2.08'
Getopt::Long: '2.34'
LWP::Protocol::https: '6.04'
LWP::UserAgent: '6.05'
Net::ACME2: '0.33'
Pod::Man: '2.25'
Pod::Usage: '1.51'
Socket: '0'
Makefile.PL view on Meta::CPAN
'Getopt::Long' => 2.34,
'File::Path' => 2.08,
'File::Basename' => 2.84,
'Test::NoWarnings' => 0,
'Crypt::RSA::Parse' => 0.043,
'Net::ACME2' => 0.33,
'Crypt::Format' => 0.06,
'Crypt::OpenSSL::PKCS10' => 0.16,
'Crypt::OpenSSL::RSA' => 0.28,
'Crypt::OpenSSL::X509' => 1.804,
'DateTime::Format::Strptime' => 1.42,
'LWP::UserAgent' => 6.05,
'LWP::Protocol::https' => 6.04,
'Pod::Usage' => 1.51,
'Pod::Man' => 2.25,
'Text::ParseWords' => 3.27,
'Data::Dumper' => 0,
'Socket' => 0,
'Sys::Hostname' => 1.16,
'Apache::Defaults' => 1.02,
'Apache::Config::Preproc' => 1.04,
lib/App/Acmeman.pm view on Meta::CPAN
use strict;
use warnings;
use Net::ACME2::LetsEncrypt;
use Crypt::Format;
use Crypt::OpenSSL::PKCS10 qw(:const);
use Crypt::OpenSSL::RSA;
use Crypt::OpenSSL::X509;
use File::Basename;
use File::Path qw(make_path);
use File::Spec;
use DateTime::Format::Strptime;
use LWP::UserAgent;
use LWP::Protocol::https;
use Socket qw(inet_ntoa);
use Sys::Hostname;
use Pod::Usage;
use Pod::Man;
use Getopt::Long qw(:config gnu_getopt no_ignore_case);
use POSIX qw(strftime time floor);
use App::Acmeman::Config;
use App::Acmeman::Domain qw(:files);
lib/App/Acmeman.pm view on Meta::CPAN
if (@missing) {
debug(1, "$crt: the following SANs are missing: "
. join(', ', @missing)
. "; $msg");
return 1 if $self->cf->get(qw(core check-alt-names));
}
}
my $expiry = $x509->notAfter();
my $strp = DateTime::Format::Strptime->new(
pattern => '%b %d %H:%M:%S %Y %Z',
time_zone => 'GMT'
);
my $ts = $strp->parse_datetime($expiry)->epoch;
my $now = time();
if ($now < $ts) {
my $hours = floor(($ts - $now) / 3600);
my $in;
if ($hours > 24) {
my $days = floor($hours / 24);
( run in 0.297 second using v1.01-cache-2.11-cpan-05444aca049 )