Bug 1294607 - certutil fails to merge SQL databases after modifying trust in a certificate
Summary: certutil fails to merge SQL databases after modifying trust in a certificate
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: nss-util
Version: 7.2
Hardware: All
OS: Linux
medium
medium
Target Milestone: rc
: ---
Assignee: Bob Relyea
QA Contact: Hubert Kario
URL:
Whiteboard:
Depends On: 1294606
Blocks: 1298243 1377248
TreeView+ depends on / blocked
 
Reported: 2015-12-29 08:59 UTC by Pavel Moravec
Modified: 2017-08-01 16:47 UTC (History)
7 users (show)

Fixed In Version: nss-3.28.3-5.el7
Doc Type: If docs needed, set a value
Doc Text:
Clone Of: 1294606
Environment:
Last Closed: 2017-08-01 16:47:42 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHEA-2017:1977 0 normal SHIPPED_LIVE nss bug fix and enhancement update 2017-08-01 17:57:47 UTC

Description Pavel Moravec 2015-12-29 08:59:00 UTC
+++ This bug was initially created as a clone of Bug #1294606 +++

Description of problem:
Having sql database with a certificate that has modified a trust attribute and trying to merge this db with another one, it fails with error:

certutil: Could not merge object unnamed (type Trust): Unknown code ___P 3


Version-Release number of selected component (if applicable):
nss-tools-3.19.1-3.el6_6.x86_64


How reproducible:
100%


Steps to Reproduce:
rm -rf db1 db2
mkdir db1
echo 123456 > db1/pwdfile
certutil -N -d sql:./db1 -f ./db1/pwdfile
certutil -A -d sql:./db1 -i test.crt -n test -t P,, -f ./db1/pwdfile
certutil -M -d sql:./db1 -n test -t T,, -f ./db1/pwdfile

mkdir db2
echo 123456 > db2/pwdfile
certutil -N -d sql:./db2 -f ./db2/pwdfile

certutil --merge -d sql:./db2  --source-dir sql:./db1 -f ./db2/pwdfile -@ ./db1/pwdfile


Actual results:
certutil --merge fails with:
certutil: Could not merge object unnamed (type Trust): Unknown code ___P 3


Expected results:
certutil --merge works well


Additional info:
commenting out "certutil -M" or replacing it by deletion and re-creating test's certificate prevents this bug. I.e. the problem originates in certutil modifying the trust attributes. Therefore either:
- this "-M" operation is the buggy one, 
- or at least it leaves the sql database in such (valid) state that --merge operation cant cope with

Comment 7 errata-xmlrpc 2017-08-01 16:47:42 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2017:1977


Note You need to log in before you can comment on or make changes to this bug.