mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2026-11-03 12:48:53 -06:00
In the wild a public CA issued a new subordinate CA certificate with an identical subject to another, with a new private key. This was uninstallable using ipa-cacert-manage because it would fail with "subject public key info mismatch" during verification because a different certificate with the same subject but different public key was installed. I'm not sure of the reasoning to prevent this situation but I see it as giving users flexibility. This may be hurtful to them but they can always remove any affected certs. This is backwards compatible with older releases from the client perspective. Older servers will choke on the duplicates and won't be able to manage these. A new serial number option is added for displaying the list of certificates and for use when deleting one with a duplicate subject. ipa-cacert-manage delete on systems without this patch will successfully remove ALL of the requested certificates. There is no way to distinguish. At least it won't break anything and the deleted certificates can be re-added. Fixes: https://pagure.io/freeipa/issue/9652 Signed-off-by: Rob Crittenden <rcritten@redhat.com> Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com> Reviewed-By: Florence Blanc-Renaud <frenaud@redhat.com>
The update files are sorted before being processed because there are cases where order matters (such as getting schema added first, creating parent entries, etc). Updates are applied in blocks of ten so that any entries that are dependant on another can be added successfully without having to rely on the length of the DN to get the sorting correct. The file names should use the format #-<description>.update where # conforms to this: 10 - 19: Configuration 20 - 29: 389-ds configuration, new indices 30 - 39: Structual elements of the DIT 40 - 49: Pre-loaded data 50 - 59: Cleanup existing data 60 - 69: AD Trust 70 - 79: Reserved 80 - 89: Reserved These numbers aren't absolute, there may be reasons to put an update into one place or another, but by adhereing to the scheme it will be easier to find existing updates and know where to put new ones.