HomeFreeBSD

security/ca_root_nss: Fix SSL verification for ports OpenSSL consumers

Description

security/ca_root_nss: Fix SSL verification for ports OpenSSL consumers

Since 2.7.9, Python verifies SSL certificates by default. Currently,
even with security/ca_root_nss installed, Python fails certificate
verification.

Upon investigation, Python uses OpenSSL's standard
SSL_CTX_load_verify_locations function to load a list of CA root
certificates.

Support was added to ca_root_nss for "out of the box" certificate
verification for a number of base utilities in r372629 [1], but this
did not include support for software that uses OpenSSL's
SSL_CTX_load_verify_locations function.

[1] https://svnweb.freebsd.org/changeset/ports/372629

OpenSSL defaults (at compile time) to the following paths and filenames
for certificate and CAFile lookup:

Base:

SSL_CERT_DIR=/etc/ssl/certs
SSL_CERT_FILE/etc/ssl/cert.pem

Ports:

SSL_CERT_DIR=/usr/local/openssl/certs
SSL_CERT_FILE=/usr/local/openssl/cert.pem

This change installs a symlink which points to the root certificate
bundle in the location that OpenSSL from ports looks for them.

This allows any and all software utilising SSL_CTX_load_verify_locations
function to verify SSL certificates by default after installation of
this package.

Additionally, display a pkg-message to the user about the lack of
warranty associated with these certificates.

Note: This is *NOT* related to solving for SSL certificate verification
for OpenSSL in Base, which is covered in bug 189811.

While I'm here:

  • Add LICENSE
  • Use options helpers and OPTIONS_SUB
  • Fix typo in ! message !

PR: 196431
Submitted by: koobs
Reviewed by: jbeich
Approved by: maintainer timeout (1 month)

Details

Provenance
koobsAuthored on
Reviewer
jbeich
Parents
rP378719: Add CPE
Branches
Unknown
Tags
Unknown

Event Timeline