Net::SSL::ExpireDate - obtain expiration date of certificate
Contents
Bugs And Limitations
No bugs have been reported.
Please report any bugs or feature requests to "bug-net-ssl-expiredate@rt.cpan.org", or through the web
interface at <http://rt.cpan.org>.
Copyright & License
Copyright HIROSE Masaaki
This library is free software; you can redistribute it and/or modify it under the same terms as Perl
itself.
perl v5.40.0 2024-12-27 Net::SSL::ExpireDate(3pm)
Description
Net::SSL::ExpireDate get certificate from network (SSL) or local file and obtain its expiration date.
Methods
new
$ed = Net::SSL::ExpireDate->new( %option )
This method constructs a new "Net::SSL::ExpireDate" instance and returns it. %option is to specify
certificate.
KEY VALUE
----------------------------
ssl "hostname[:port]"
https (same as above ssl)
file "path/to/certificate"
timeout "Timeout in seconds"
sni "Server Name Indicator"
expire_date
$expire_date = $ed->expire_date;
Return expiration date by "DateTime" instance.
begin_date
$begin_date = $ed->begin_date;
Return beginning date by "DateTime" instance.
not_after
Synonym for expire_date.
not_before
Synonym for begin_date.
is_expired
$expired = $ed->is_expired;
Obtain already expired or not.
You can specify interval to obtain will expire on the future time. Acceptable intervals are human
readable string (parsed by "Time::Duration::Parse") and "DateTime::Duration" instance.
# will expire after 2 months
$expired = $ed->is_expired('2 months');
$expired = $ed->is_expired(DateTime::Duration->new(months=>2));
type
return type of examinee certificate. "ssl" or "file".
target
return hostname or path of examinee certificate.
Name
Net::SSL::ExpireDate - obtain expiration date of certificate
Repository
<http://github.com/hirose31/net-ssl-expiredate>
git clone git://github.com/hirose31/net-ssl-expiredate.git
patches and collaborators are welcome.
See Also
Synopsis
use Net::SSL::ExpireDate;
$ed = Net::SSL::ExpireDate->new( https => 'example.com' );
$ed = Net::SSL::ExpireDate->new( https => 'example.com:10443' );
$ed = Net::SSL::ExpireDate->new( ssl => 'example.com:465' ); # smtps
$ed = Net::SSL::ExpireDate->new( ssl => 'example.com:995' ); # pop3s
$ed = Net::SSL::ExpireDate->new( file => '/etc/ssl/cert.pem' );
if (defined $ed->expire_date) {
# do something
$expire_date = $ed->expire_date; # return DateTime instance
$expired = $ed->is_expired; # examine already expired
$expired = $ed->is_expired('2 months'); # will expire after 2 months
$expired = $ed->is_expired(DateTime::Duration->new(months=>2)); # ditto
}
