The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Mozilla::IntermediateCerts

WARNING

This module is in early development and may change.

SYNOPSIS

                my $certs = Mozilla::IntermediateCerts->new;

                for my $cert ( $certs->certs )
                {
                        ...
                } 

        or
                my $certs = Mozilla::IntermediateCerts->new(
                        tmp_path => '/my/tmp/dir'
                        moz_int_cert_path => 'http://foo.com/certs.csv' 
                );

DESCRIPTION

This module downloads the latest Mozilla intermediate certificates list and parses it

https://wiki.mozilla.org/CA/Intermediate_Certificates

This is a work in progress and contains incomplete test code, methods are likely to be refactored, you have been warned.

Args

tmp_path

Set the directory where files are downloded to

        Default /tmp

moz_int_cert_path

Set the URL for the the intermediate certificate file download

        Default https://ccadb-public.secure.force.com/mozilla/PublicAllIntermediateCertsWithPEMCSV

Methods

certs

Returns an arrayref of Mozilla::IntermediateCert objects

error

Returns error message if an error occurs

_download

Internal method to handle downloading the csv file

_parse_csv

Internal method to parse csv into array of Mozilla::IntermediateCerts::Cert objects

SOURCE CODE

The source code for this module is held in a public git repository on Gitlab https://gitlab.com/rnewsham/mozilla-intermediatecerts

LICENSE AND COPYRIGHT

Copyright (c) 2019 Richard Newsham

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

BUGS AND LIMITATIONS

See rt.cpan.org for current bugs, if any.

INCOMPATIBILITIES

None known.

DEPENDENCIES

Moo LWP::UserAgent; Text::CSV; Mozilla::IntermediateCerts::Cert;