Bug 871670

Summary: Current PEM support in NSS does not understand CRL in the PEM file
Product: [Fedora] Fedora Reporter: Bojan Smojver <bojan>
Component: nss-pemAssignee: Kamil Dudka <kdudka>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 23CC: emaldona, kdudka, kengert
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-09-29 09:05:59 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Bojan Smojver 2012-10-31 02:44:08 UTC
Description of problem:
Have a root CA configured in slapd.conf with TLSCACertificateFile (in PEM format). This worked fine when OpenSSL was used.

However, since PEM support under NSS was linked with OpenLDAP, if the CA file contains a CRL (which Dovocot likes), the file will not be understood and the SSL handshake on port 636 will fail like this:
------------------------------
CONNECTED(00000003)
139777063356256:error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure:s23_lib.c:177:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 0 bytes and written 137 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
---
------------------------------

Version-Release number of selected component (if applicable):
nss-3.13.6-1.fc17.x86_64

How reproducible:
Always.

Steps to Reproduce:
1. Have a CA PEM file configured for OpenLDAP that includes CRL.
2. Start slapd, connect using openssl s_client.
3. Fails to serve a certificate, because the CA file was not understood by /lib64/libnsspem.so.
  
Actual results:
Fails to read the PEM file that has CRL included.

Expected results:
Should work, if this is a replacement for OpenSSL.

Additional info:
Workaround: create a PEM file with the CA, but without the CRL. Point to it from TLSCACertificateFile.

Comment 1 Kamil Dudka 2012-10-31 07:54:09 UTC
libcurl uses its own code for loading CRL certificates, but they need to be specified separately:

https://github.com/bagder/curl/blob/e6ba048/lib/nss.c#L450

Comment 2 Fedora End Of Life 2013-07-03 22:20:20 UTC
This message is a reminder that Fedora 17 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 17. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '17'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 17's end of life.

Bug Reporter:  Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 17 is end of life. If you 
would still like  to see this bug fixed and are able to reproduce it 
against a later version  of Fedora, you are encouraged  change the 
'version' to a later Fedora version prior to Fedora 17's end of life.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 3 Jan Kurik 2015-07-15 14:57:36 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 23 development cycle.
Changing version to '23'.

(As we did not run this process for some time, it could affect also pre-Fedora 23 development
cycle bugs. We are very sorry. It will help us with cleanup during Fedora 23 End Of Life. Thank you.)

More information and reason for this action is here:
https://fedoraproject.org/wiki/BugZappers/HouseKeeping/Fedora23

Comment 4 Fedora Admin XMLRPC Client 2016-08-15 15:53:09 UTC
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.

Comment 5 Kamil Dudka 2016-09-29 09:05:59 UTC
There is no plan to support CRLs by nss-pem because CRLs can be loaded by nss directly.