Imported Upstream version 4.8.10

This commit is contained in:
Mario Fetka
2021-10-03 11:06:28 +02:00
parent 10dfc9587b
commit 03a8170b15
2361 changed files with 1883897 additions and 338759 deletions

View File

@@ -0,0 +1,51 @@
#
# Copyright (C) 2020 FreeIPA Contributors see COPYING for license
#
import logging
from ipalib import Registry, errors
from ipalib import Updater
from ipapython.dn import DN
logger = logging.getLogger(__name__)
register = Registry()
@register()
class update_changelog_maxage(Updater):
"""
Update the changelog maxage if it is not set
"""
def update_entry(self, cl_entry, conn):
maxage = cl_entry.single_value.get('nsslapd-changelogmaxage')
if maxage is None:
cl_entry['nsslapd-changelogmaxage'] = '30d'
conn.update_entry(cl_entry)
def execute(self, **options):
ldap = self.api.Backend.ldap2
for backend in ('userroot', 'ipaca'):
dn = DN(
('cn', 'changelog'),
('cn', backend),
('cn', 'ldbm database'),
('cn', 'plugins'),
('cn', 'config'))
try:
cl_entry = ldap.get_entry(dn, ['nsslapd-changelogmaxage'])
self.update_entry(cl_entry, ldap)
except errors.NotFound:
# Try the old global changelog, and return
dn = DN(
('cn', 'changelog5'),
('cn', 'config'))
try:
cl_entry = ldap.get_entry(dn, ['nsslapd-changelogmaxage'])
self.update_entry(cl_entry, ldap)
except errors.NotFound:
logger.debug('Error retrieving: %s', str(dn))
return False, []
return False, []