service.ldap_disable() does not disable services because it has a comparison bug. It compares value.lower() == ENABLED_SERVICE but ENABLED_SERVICE is defined as string 'enabledService'. The comparison never matches and enabledService is never removed from ipaConfigString. https://github.com/freeipa/freeipa/blob/836b90f65244a0407e74627b550297d0962d882e/ipaserver/install/service.py#L692-L696
service.ldap_disable()
value.lower() == ENABLED_SERVICE
ENABLED_SERVICE
'enabledService'
enabledService
ipaConfigString
The bug does not cause any problems at the moment. service.ldap_disable() is only used in DNSSEC code. The _disable_dnssec() helper first disables the DNSSEC and DNSKeyExporter services, then removes the entire LDAP entry for both services.
_disable_dnssec()
Metadata Update from @cheimes: - Custom field on_review adjusted to https://github.com/freeipa/freeipa/pull/4005 - Issue assigned to cheimes
master:
ipa-4-8:
Metadata Update from @cheimes: - Issue close_status updated to: fixed - Issue status updated to: Closed (was: Open)