freeipa/ipaserver
Florence Blanc-Renaud 800f2690f5 ipa upgrade: handle double-encoded certificates
Issue is linked to the ticket
 #3477 LDAP upload CA cert sometimes double-encodes the value
In old FreeIPA releases (< 3.2), the upgrade plugin was encoding twice
the value of the certificate in cn=cacert,cn=ipa,cn=etc,$BASEDN.

The fix for 3477 is only partial as it prevents double-encoding when a
new cert is uploaded but does not fix wrong values already present in LDAP.

With this commit, the code first tries to read a der cert. If it fails,
it logs a debug message and re-writes the value caCertificate;binary
to repair the entry.

Fixes https://pagure.io/freeipa/issue/7775
Signed-off-by: Florence Blanc-Renaud <flo@redhat.com>
Reviewed-By: Christian Heimes <cheimes@redhat.com>
2018-11-30 11:05:17 +01:00
..
advise Replace hard-coded interpreter with sys.executable 2018-10-24 17:44:20 +02:00
dnssec Py3: Remove subclassing from object 2018-09-27 11:49:04 +02:00
install ipa upgrade: handle double-encoded certificates 2018-11-30 11:05:17 +01:00
plugins Unify and simplify LDAP service discovery 2018-11-21 08:57:08 +01:00
secrets Py3: Replace six.moves imports 2018-10-05 12:06:19 +02:00
__init__.py Change FreeIPA license to GPLv3+ 2010-12-20 17:19:53 -05:00
dcerpc_common.py Py3: Replace six.text_type with str 2018-09-27 16:11:18 +02:00
dcerpc.py pylint 2.2: Fix unnecessary pass statement 2018-11-26 16:54:43 +01:00
dns_data_management.py Py3: Remove subclassing from object 2018-09-27 11:49:04 +02:00
Makefile.am Build: Makefiles for Python packages 2016-11-09 13:08:32 +01:00
masters.py Unify and simplify LDAP service discovery 2018-11-21 08:57:08 +01:00
p11helper.py pylint 2.2: Fix unnecessary pass statement 2018-11-26 16:54:43 +01:00
rpcserver.py Py3: Replace six.moves imports 2018-10-05 12:06:19 +02:00
servroles.py pylint 2.2: Fix unnecessary pass statement 2018-11-26 16:54:43 +01:00
setup.cfg Port all setup.py to setuptools 2016-10-20 18:43:37 +02:00
setup.py Cleanup shebang and executable bit 2018-07-05 19:46:42 +02:00
topology.py Py3: Remove subclassing from object 2018-09-27 11:49:04 +02:00