1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
  
     | 
    
      package Mozilla::CA;
use strict;
use warnings;
our $VERSION = '20250202';
sub SSL_ca_file {
    return "/etc/ssl/certs/ca-certificates.crt";
}
1;
__END__
=head1 NAME
Mozilla::CA - Mozilla's CA cert bundle in PEM format
=head1 SYNOPSIS
    use IO::Socket::SSL;
    use Mozilla::CA;
    my $host = "www.paypal.com";
    my $client = IO::Socket::SSL->new(
        PeerHost => "$host:443",
        SSL_verify_mode => 0x02,
        SSL_ca_file => Mozilla::CA::SSL_ca_file(),
    )
        || die "Can't connect: $@";
    $client->verify_hostname($host, "http")
        || die "hostname verification failure";
=head1 DESCRIPTION
Mozilla::CA provides a copy of Mozilla's bundle of Certificate Authority
certificates in a form that can be consumed by modules and libraries
based on OpenSSL.
The module provide a single function:
=over
=item SSL_ca_file()
Returns the absolute path to the Mozilla's CA cert bundle PEM file.
=back
=head1 SEE ALSO
L<http://curl.haxx.se/docs/caextract.html>
=head1 LICENSE
For the bundled Mozilla CA PEM file the following applies:
=over
This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at http://mozilla.org/MPL/2.0/.
=back
The Mozilla::CA distribution itself is available under the same license.
 
     |