From 7d0c2739d42e02b7ef6a0bc74f6867138735d3b3 Mon Sep 17 00:00:00 2001 From: Jan Cholasta Date: Tue, 23 Aug 2016 10:39:08 +0200 Subject: [PATCH] custodia: include known CA certs in the PKCS#12 file for Dogtag This fixes CA replica install in a topology upgraded from CA-less to CA-full. https://fedorahosted.org/freeipa/ticket/6207 --- ipaserver/install/custodiainstance.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/ipaserver/install/custodiainstance.py b/ipaserver/install/custodiainstance.py index 785f86f..18bd514 100644 --- a/ipaserver/install/custodiainstance.py +++ b/ipaserver/install/custodiainstance.py @@ -2,6 +2,7 @@ from ipapython.secrets.kem import IPAKEMKeys from ipapython.secrets.client import CustodiaClient +from ipaserver.install.certs import CertDB from ipaplatform.paths import paths from ipaplatform.constants import constants from ipaserver.install.service import SimpleServiceInstance @@ -154,6 +155,11 @@ def __get_keys(self, ca_host, cacerts_file, cacerts_pwd, data): '-i', pk12file, '-w', pk12pwfile]) + # Add CA certificates + tmpdb = CertDB(self.realm, nssdir=tmpnssdir) + self.suffix = ipautil.realm_to_suffix(self.realm) + self.import_ca_certs(tmpdb, True) + # Now that we gathered all certs, re-export ipautil.run([paths.PKCS12EXPORT, '-d', tmpnssdir,