from ..config.ldap import LdapConfiguration, LdapConnectionInfo
from ..xlate import XLATOR, format_list
-__version__ = '0.11.6'
+__version__ = '0.11.7'
LOG = logging.getLogger(__name__)
_ = XLATOR.gettext
return result
# -------------------------------------------------------------------------
- def get_all_entry_dns(self, inst, ldap_filter=None, base_dn=None, scope=None):
+ def get_all_entry_dns(
+ self, inst, ldap_filter=None, base_dn=None, scope=None, no_complain=False):
"""Get DNs of all entries in the given LDAP instance and sort them."""
connect_info = self.cfg.ldap_connection[inst]
if not base_dn:
time_limit=self.cfg.ldap_timeout)
if req_status:
+ if self.verbose > 2:
+ msg = ngettext(
+ 'Found one entry with filter {fltr!r} in {uri}/{bdn}.',
+ 'Found {nr} entries with filter {fltr!r} in {uri}/{bdn}.',
+ len(req_response)).format(
+ nr=len(req_response), uri=connect_info.url, bdn=base_dn, fltr=ldap_filter)
+ LOG.debug(msg)
if self.verbose > 5:
msg = _('Result of searching for DNs of all entries:')
LOG.debug(msg + '\n' + pp(req_result))
result.append(entry['dn'])
else:
- LOG.warn('Got no entry DNs.')
+ msg = _('No entry found with filter {fltr!r} in {uri}/{bdn}.').format(
+ uri=connect_info.url, bdn=base_dn, fltr=ldap_filter)
+ if not no_complain:
+ LOG.warn(msg)
+ elif self.verbose > 2:
+ LOG.debug(msg)
if result:
result = sorted(result, key=cmp_to_key(self.compare_ldap_dns))
from .. import pp
from ..xlate import XLATOR
-__version__ = '0.6.1'
+__version__ = '0.6.2'
LOG = logging.getLogger(__name__)
_ = XLATOR.gettext
default_nologin_shell = '/usr/sbin/nologin'
value_inactive = 'inactive'
raw_empty_passwd = 'none'
+ devnull_address = 'devnull@pixelpark.com'
+ maillist_attribs = [
+ 'mailForwardingAddress', 'mailRoutingAddress', 'mgrpRFC822MailMember']
# -------------------------------------------------------------------------
def __init__(self, appname=None, base_dir=None):
res['deactivate'] = self.deactivate
res['del_mails'] = self.del_mails
+ res['devnull_address'] = self.devnull_address
return res
return False
if self.del_mails:
- self.del_mails_from_lists(inst, dn, attributes)
+ if not self.del_mails_from_lists(inst, dn, attributes):
+ return False
if 'uid' in attributes:
for uid in attributes['uid']:
# -------------------------------------------------------------------------
def del_mails_from_lists(self, inst, dn, attributes):
"""Remove mail addresses of users from all mailing lists."""
- connect_info = self.cfg.ldap_connection[inst] # noqa
-
mail_addresses = CIStringSet()
for attr in attributes.keys():
if attr.lower() in ('mail', 'mailalternateaddress', 'mailequivalentaddress'):
if not len(mail_addresses):
msg = _('No mail addresses found to remove for user {!r}.').format(dn)
LOG.debug(msg)
- return
+ return True
msg = _('Trying to remove the following mail addresses from mailing lists:')
msg += ' ' + format_list(mail_addresses.as_list(), do_repr=True)
LOG.info(msg)
+ for address in mail_addresses:
+ if not self.del_mail_from_lists(inst, address, dn):
+ return False
+
+ return True
+
+ # -------------------------------------------------------------------------
+ def del_mail_from_lists(self, inst, address, user_dn=None):
+ """Remove the given mail address from all mailing lists."""
+ dns = CIStringSet()
+ ldap_filter = ''.join(
+ '({}={{mail}})'.format(x) for x in self.maillist_attribs).format(mail=address)
+ ldap_filter = '(|' + ldap_filter + ')'
+
+ for this_dn in self.get_all_entry_dns(inst, ldap_filter=ldap_filter, no_complain=True):
+ if user_dn is not None and user_dn.lower() == this_dn.lower():
+ LOG.debug(_('Ignoring mailing list {!r} ...').format(this_dn))
+ continue
+ dns.add(this_dn)
+
+ if self.verbose > 3:
+ msg = _('Found DNs of mailing lists:') + ' ' + pp(dns.as_list())
+ LOG.debug(msg)
+
+ if not len(dns):
+ if self.verbose > 1:
+ msg = _('Did not found any mail groups including address {!r}.').format(address)
+ LOG.debug(msg)
+ return True
+
+ for list_dn in dns:
+ if not self.del_mail_from_list(inst, address, list_dn):
+ return False
+
+ return True
+
+ # -------------------------------------------------------------------------
+ def del_mail_from_list(self, inst, address, list_dn):
+ """Remove the given mail address from the particular mailing list."""
+ msg = _('Removing address {address!r} from mailing list {dn!r}.').format(
+ address=address, dn=list_dn)
+ LOG.info(msg)
+
+ changes = {}
+ entry = self.get_entry(list_dn, inst)
+ attributes = self.normalized_attributes(entry)
+
+ empty_attribs = {}
+
+ if 'mail' in attributes:
+ for value in attributes['mail']:
+ if value.lower() == address.lower():
+ changes['mail'] = [(MODIFY_DELETE, value)]
+ break
+
+ for attrib in self.maillist_attribs:
+ empty_attribs[attrib] = False
+ if attrib in attributes:
+ for value in attributes[attrib]:
+ if value.lower() == address.lower():
+ changes[attrib] = [(MODIFY_DELETE, value)]
+ if len(attributes[attrib]) == 1:
+ empty_attribs[attrib] = True
+ break
+ else:
+ empty_attribs[attrib] = True
+
+ add_devnull_addr = True
+ for attrib in self.maillist_attribs:
+ if attrib in empty_attribs and not empty_attribs[attrib]:
+ add_devnull_addr = False
+
+ if add_devnull_addr:
+ if 'mailForwardingAddress' not in changes:
+ changes['mailForwardingAddress'] = []
+ changes['mailForwardingAddress'].append((MODIFY_ADD, self.devnull_address))
+
+ if not len(changes.keys()):
+ msg = _('There are no changes for mail {mail!r} on {dn!r}?!?').format(
+ mail=address, dn=list_dn)
+ LOG.warn(msg)
+ return True
+
+ try:
+ self.modify_entry(inst, list_dn, changes)
+ except FatalLDAPError as e:
+ msg = _('{c} on removing mail {mail!r} from {dn!r}: {e}').format(
+ c=e.__class__.__name__, mail=address, dn=list_dn, e=e)
+ msg += '\n' + _('Changes:') + '\n' + pp(changes)
+ LOG.error(msg)
+ return False
+
+ return True
+
# =============================================================================
if __name__ == '__main__':
msgstr ""
"Project-Id-Version: pp_admintools 0.9.0\n"
"Report-Msgid-Bugs-To: frank.brehm@pixelpark.com\n"
-"POT-Creation-Date: 2023-06-12 11:53+0200\n"
-"PO-Revision-Date: 2023-05-31 10:55+0200\n"
+"POT-Creation-Date: 2023-06-12 16:57+0200\n"
+"PO-Revision-Date: 2023-06-12 17:00+0200\n"
"Last-Translator: Frank Brehm <frank.brehm@pixelpark.com>\n"
"Language: de_DE\n"
"Language-Team: de_DE <solution@pixelpark.com>\n"
#: lib/pp_admintools/app/barracuda_sync.py:231 lib/pp_admintools/app/barracuda_sync.py:427
#: lib/pp_admintools/app/dns_deploy_zones.py:434 lib/pp_admintools/app/dns_deploy_zones.py:788
-#: lib/pp_admintools/app/ldap.py:876 lib/pp_admintools/app/ldap.py:1009
-#: lib/pp_admintools/app/ldap.py:1062 lib/pp_admintools/app/ldap.py:1115
-#: lib/pp_admintools/app/ldap.py:1403 lib/pp_admintools/app/ldap.py:1437
-#: lib/pp_admintools/app/ldap.py:1471 lib/pp_admintools/app/ldap.py:1505
+#: lib/pp_admintools/app/ldap.py:889 lib/pp_admintools/app/ldap.py:1022
+#: lib/pp_admintools/app/ldap.py:1075 lib/pp_admintools/app/ldap.py:1128
+#: lib/pp_admintools/app/ldap.py:1416 lib/pp_admintools/app/ldap.py:1450
+#: lib/pp_admintools/app/ldap.py:1484 lib/pp_admintools/app/ldap.py:1518
msgid "Result:"
msgstr "Ergebnis:"
msgid "LDAP Entries to modified:"
msgstr "Zu ändernde LDAP-Einträge:"
-#: lib/pp_admintools/app/barracuda_sync.py:756 lib/pp_admintools/app/ldap.py:1618
+#: lib/pp_admintools/app/barracuda_sync.py:756 lib/pp_admintools/app/ldap.py:1631
msgid "Values to add to attribute {!r}:"
msgstr "Werte, die zu Attribut {!r} hinzugefügt werden:"
msgid "Values to be removed from attribute {!r}:"
msgstr "Werte, die von Attribut {!r} gelöscht werden sollen:"
-#: lib/pp_admintools/app/barracuda_sync.py:777 lib/pp_admintools/app/ldap.py:1639
+#: lib/pp_admintools/app/barracuda_sync.py:777 lib/pp_admintools/app/ldap.py:1652
msgid "Changes for attribute {!r}:"
msgstr "Änedrungen für Attribut {!r}:"
-#: lib/pp_admintools/app/barracuda_sync.py:780 lib/pp_admintools/app/ldap.py:1642
+#: lib/pp_admintools/app/barracuda_sync.py:780 lib/pp_admintools/app/ldap.py:1655
msgid "No changes to attribute {!r}."
msgstr "Keine Änderungen an Attribut {!r}."
msgstr "Der Pfad {!r} muss ein absoluter Pfad sein."
#: lib/pp_admintools/app/ldap.py:121 lib/pp_admintools/app/ldap.py:287
-#: lib/pp_admintools/app/ldap.py:1521
+#: lib/pp_admintools/app/ldap.py:1534
msgid "The file {!r} does not exists."
msgstr "Die Datei {!r} existiert nicht."
#: lib/pp_admintools/app/ldap.py:125 lib/pp_admintools/app/ldap.py:291
-#: lib/pp_admintools/app/ldap.py:1526
+#: lib/pp_admintools/app/ldap.py:1539
msgid "The given path {!r} exists, but is not a regular file."
msgstr "Der angegebene Pfad {!r} existiert, ist aber keine reguläre Datei."
#: lib/pp_admintools/app/ldap.py:129 lib/pp_admintools/app/ldap.py:295
-#: lib/pp_admintools/app/ldap.py:1531
+#: lib/pp_admintools/app/ldap.py:1544
msgid "The given file {!r} is not readable."
msgstr "Die angegebene Datei {} ist nicht lesbar."
msgstr "Optionen für die LDAP-Verbindungen"
#: lib/pp_admintools/app/ldap.py:335 lib/pp_admintools/app/mirror_ldap.py:238
-#: lib/pp_admintools/app/remove_ldap_user.py:309 lib/pp_admintools/app/set_ldap_password.py:492
+#: lib/pp_admintools/app/remove_ldap_user.py:307 lib/pp_admintools/app/set_ldap_password.py:492
msgid "No"
msgstr "Nein"
msgid "Found entry {!r}."
msgstr "Gefundener Eintrag:"
-#: lib/pp_admintools/app/ldap.py:822
+#: lib/pp_admintools/app/ldap.py:822 lib/pp_admintools/app/ldap.py:866
msgid "Found one entry with filter {fltr!r} in {uri}/{bdn}."
msgid_plural "Found {nr} enries with filter {fltr!r} in {uri}/{bdn}."
msgstr[0] "Fand einen Eintrag mit dem Filter {fltr!r} in {uri}/{bdn}."
msgid "Got response entries:"
msgstr "Erhaltene Antworteinträge:"
-#: lib/pp_admintools/app/ldap.py:830
+#: lib/pp_admintools/app/ldap.py:830 lib/pp_admintools/app/ldap.py:878
msgid "No entry found with filter {fltr!r} in {uri}/{bdn}."
msgstr "Keinen Eintrag mit dem Filter {fltr!r} in {uri}/{bdn} gefunden."
-#: lib/pp_admintools/app/ldap.py:853 lib/pp_admintools/app/ldap.py:895
+#: lib/pp_admintools/app/ldap.py:854 lib/pp_admintools/app/ldap.py:908
msgid "Using LDAP filter: {!r}"
msgstr "Verwende LDAP-Filter: {!r}."
-#: lib/pp_admintools/app/ldap.py:862 lib/pp_admintools/app/ldap.py:904
+#: lib/pp_admintools/app/ldap.py:870 lib/pp_admintools/app/ldap.py:917
msgid "Result of searching for DNs of all entries:"
msgstr "Ergebnis der Suche nach den DNs aller Einträge:"
-#: lib/pp_admintools/app/ldap.py:866 lib/pp_admintools/app/ldap.py:908
-#: lib/pp_admintools/app/ldap.py:1006 lib/pp_admintools/app/ldap.py:1059
-#: lib/pp_admintools/app/ldap.py:1112 lib/pp_admintools/app/ldap.py:1200
-#: lib/pp_admintools/app/ldap.py:1400 lib/pp_admintools/app/ldap.py:1434
-#: lib/pp_admintools/app/ldap.py:1468 lib/pp_admintools/app/ldap.py:1502
+#: lib/pp_admintools/app/ldap.py:874 lib/pp_admintools/app/ldap.py:921
+#: lib/pp_admintools/app/ldap.py:1019 lib/pp_admintools/app/ldap.py:1072
+#: lib/pp_admintools/app/ldap.py:1125 lib/pp_admintools/app/ldap.py:1213
+#: lib/pp_admintools/app/ldap.py:1413 lib/pp_admintools/app/ldap.py:1447
+#: lib/pp_admintools/app/ldap.py:1481 lib/pp_admintools/app/ldap.py:1515
msgid "Got a response entry:"
msgstr "Erhaltener Antwort-Eintrag:"
-#: lib/pp_admintools/app/ldap.py:891
+#: lib/pp_admintools/app/ldap.py:904
msgid "Getting all Entry DNs of LDAP instance {i!r} below {b!r}."
msgstr "Hole DNs aller Einträge der LDAP-Instanz {i!r} unterhalb von {b!r}."
-#: lib/pp_admintools/app/ldap.py:930
+#: lib/pp_admintools/app/ldap.py:943
msgid "Trying to evaluate DN of user {user!r} in LDAP instance {inst} ..."
msgstr "Versuche den DN des Nutzer {user!r} auf der LDAP-Instanz {inst} zu ermitteln …"
-#: lib/pp_admintools/app/ldap.py:935
+#: lib/pp_admintools/app/ldap.py:948
msgid "Trying to evaluate DN of user {u!r} as a mail address ..."
msgstr "Versuche den DN des Nutzer {u!r} als Mailadresse zu ermitteln …"
-#: lib/pp_admintools/app/ldap.py:942
+#: lib/pp_admintools/app/ldap.py:955
msgid "Trying to evaluate DN of user {u!r} as a LDAP DN ..."
msgstr "Versuche den DN des Nutzer {u!r} als LDAP DN zu ermitteln …"
-#: lib/pp_admintools/app/ldap.py:949
+#: lib/pp_admintools/app/ldap.py:962
msgid "Trying to evaluate DN of user {u!r} as a UID (Posix user name) ..."
msgstr "Versuche den DN des Nutzer {u!r} als UID (POSIX Benutzername) zu ermitteln …"
-#: lib/pp_admintools/app/ldap.py:958 lib/pp_admintools/app/remove_ldap_user.py:319
+#: lib/pp_admintools/app/ldap.py:971 lib/pp_admintools/app/remove_ldap_user.py:317
msgid "Empty user given."
msgstr "Leere Nutzername übergeben."
-#: lib/pp_admintools/app/ldap.py:961
+#: lib/pp_admintools/app/ldap.py:974
msgid "Trying to evaluate DN of user {u!r} as a CN ({c}) ..."
msgstr "Versuche den DN des Nutzer {u!r} als CN ({c}) zu ermitteln …"
-#: lib/pp_admintools/app/ldap.py:991 lib/pp_admintools/app/ldap.py:1044
-#: lib/pp_admintools/app/ldap.py:1097 lib/pp_admintools/app/ldap.py:1388
-#: lib/pp_admintools/app/ldap.py:1422 lib/pp_admintools/app/ldap.py:1456
-#: lib/pp_admintools/app/ldap.py:1490
+#: lib/pp_admintools/app/ldap.py:1004 lib/pp_admintools/app/ldap.py:1057
+#: lib/pp_admintools/app/ldap.py:1110 lib/pp_admintools/app/ldap.py:1401
+#: lib/pp_admintools/app/ldap.py:1435 lib/pp_admintools/app/ldap.py:1469
+#: lib/pp_admintools/app/ldap.py:1503
msgid "Searching in {uri}/{bdn} with filter: {fltr}"
msgstr "Suche in {uri}/{bdn} mit dem Filter: {fltr}"
-#: lib/pp_admintools/app/ldap.py:1002
+#: lib/pp_admintools/app/ldap.py:1015
msgid "Result of searching for mail address {m!r}:"
msgstr "Ergebnis der Suche nach der Mailadresse {m!r}:"
-#: lib/pp_admintools/app/ldap.py:1013
+#: lib/pp_admintools/app/ldap.py:1026
msgid "User with mail address {m!r} not found in {uri}/{bdn}."
msgstr "Ein Nutzer mit der Mailadresse {m!r} wurde nicht in {uri}/{bdn} gefunden."
-#: lib/pp_admintools/app/ldap.py:1055
+#: lib/pp_admintools/app/ldap.py:1068
msgid "Result of searching for uid {u!r}:"
msgstr "Ergebnis der Suche nach UID {u!r}:"
-#: lib/pp_admintools/app/ldap.py:1066
+#: lib/pp_admintools/app/ldap.py:1079
msgid "User with uid {u!r} not found in {uri}/{bdn}."
msgstr "Ein Nutzer mit der UID {u!r} wurde nicht in {uri}/{bdn} gefunden."
-#: lib/pp_admintools/app/ldap.py:1108
+#: lib/pp_admintools/app/ldap.py:1121
msgid "Result of searching for CN {cn!r}:"
msgstr "Ergebnis der Suche nach CN {cn!r}:"
-#: lib/pp_admintools/app/ldap.py:1119
+#: lib/pp_admintools/app/ldap.py:1132
msgid "User with cn {cn!r} not found in {uri}/{bdn}."
msgstr "Ein Nutzer mit dem CN {cn!r} wurde nicht in {uri}/{bdn} gefunden."
-#: lib/pp_admintools/app/ldap.py:1136 lib/pp_admintools/app/set_ldap_password.py:411
+#: lib/pp_admintools/app/ldap.py:1149 lib/pp_admintools/app/set_ldap_password.py:411
msgid "User with DN {dn!r} not found in {uri}."
msgstr "Ein Nutzer mit dem DN {dn!r} wurde nicht in {uri} gefunden."
-#: lib/pp_admintools/app/ldap.py:1154
+#: lib/pp_admintools/app/ldap.py:1167
msgid "ObjectClasses of {dn!r}:"
msgstr "ObjectClasses von {dn!r}:"
-#: lib/pp_admintools/app/ldap.py:1164
+#: lib/pp_admintools/app/ldap.py:1177
msgid "Entry {dn!r} in {uri} seems not to be an account."
msgstr "Der Eintrag {dn!r} in {uri} scheint kein Nutzerkonto zu sein."
-#: lib/pp_admintools/app/ldap.py:1186
+#: lib/pp_admintools/app/ldap.py:1199
msgid "Searching DN {dn!r} in {uri}."
msgstr "Suche DN {dn!r} in {uri}."
-#: lib/pp_admintools/app/ldap.py:1196
+#: lib/pp_admintools/app/ldap.py:1209
msgid "Result of searching for DN {dn!r}:"
msgstr "Ergebnis der Suche nach dem DN {dn!r}:"
-#: lib/pp_admintools/app/ldap.py:1204
+#: lib/pp_admintools/app/ldap.py:1217
msgid "Entry with DN {dn!r} not found in {uri}."
msgstr "Ein Eintrag bit dem DN {dn!r} wurde nicht in {uri} gefunden."
-#: lib/pp_admintools/app/ldap.py:1249
+#: lib/pp_admintools/app/ldap.py:1262
msgid "Creating entry {dn!r} on {uri}:"
msgstr "Erstelle Eintrag {dn!r} in {uri} …"
-#: lib/pp_admintools/app/ldap.py:1255
+#: lib/pp_admintools/app/ldap.py:1268
msgid "Simulation mode - entry will not be created."
msgstr "Simulationsmodus - der Eintrag wird nicht erstellt."
-#: lib/pp_admintools/app/ldap.py:1262
+#: lib/pp_admintools/app/ldap.py:1275
msgid "Creation of entry {dn!r} was NOT successfull - {c}: {e}"
msgstr "Die Erstellung des Eintrags {dn!r} war NICHT erfolgreich - {c}: {e}"
-#: lib/pp_admintools/app/ldap.py:1277
+#: lib/pp_admintools/app/ldap.py:1290
msgid "Creation status: {!r}."
msgstr "Erstellungsstatus: {!r}"
-#: lib/pp_admintools/app/ldap.py:1279
+#: lib/pp_admintools/app/ldap.py:1292
msgid "Result of creating:"
msgstr "Ergebnis der Erstellung:"
-#: lib/pp_admintools/app/ldap.py:1282
+#: lib/pp_admintools/app/ldap.py:1295
msgid "Creation of entry {dn!r} was NOT successful: {desc} - {msg}"
msgstr "Die Erstellung des Eintrags {dn!r} war NICHT erfolgreich - {desc}: {msg}"
-#: lib/pp_admintools/app/ldap.py:1288
+#: lib/pp_admintools/app/ldap.py:1301
msgid "Creation successful."
msgstr "Die Erstellung war erfolgreich."
-#: lib/pp_admintools/app/ldap.py:1299
+#: lib/pp_admintools/app/ldap.py:1312
msgid "Applying changes on {uri} to DN {dn!r}:"
msgstr "Wende Änderungen in {uri} an DN {dn!r} an:"
-#: lib/pp_admintools/app/ldap.py:1304
+#: lib/pp_admintools/app/ldap.py:1317
msgid "Simulation mode - changes are not applied."
msgstr "Simulationsmodus - hier wird jetzt nichts geändert."
-#: lib/pp_admintools/app/ldap.py:1310
+#: lib/pp_admintools/app/ldap.py:1323
msgid "Modification of {dn!r} was NOT successfull - {c}: {e}"
msgstr "Die Änderung von {dn!r} war NICHT erfolgreich - {c}: {e}"
-#: lib/pp_admintools/app/ldap.py:1312 lib/pp_admintools/app/ldap.py:1331
-#: lib/pp_admintools/app/remove_ldap_user.py:449 lib/pp_admintools/app/remove_ldap_user.py:476
-#: lib/pp_admintools/app/remove_ldap_user.py:503 lib/pp_admintools/app/remove_ldap_user.py:534
-#: lib/pp_admintools/app/remove_ldap_user.py:565 lib/pp_admintools/app/set_ldap_password.py:521
+#: lib/pp_admintools/app/ldap.py:1325 lib/pp_admintools/app/ldap.py:1344
+#: lib/pp_admintools/app/remove_ldap_user.py:448 lib/pp_admintools/app/remove_ldap_user.py:475
+#: lib/pp_admintools/app/remove_ldap_user.py:502 lib/pp_admintools/app/remove_ldap_user.py:533
+#: lib/pp_admintools/app/remove_ldap_user.py:564 lib/pp_admintools/app/remove_ldap_user.py:680
+#: lib/pp_admintools/app/set_ldap_password.py:521
msgid "Changes:"
msgstr "Änderungen:"
-#: lib/pp_admintools/app/ldap.py:1324
+#: lib/pp_admintools/app/ldap.py:1337
msgid "Modification status: {!r}."
msgstr "Änderungsstatus: {!r}."
-#: lib/pp_admintools/app/ldap.py:1326
+#: lib/pp_admintools/app/ldap.py:1339
msgid "Result of modifying:"
msgstr "Ergebnis der Änderung:"
-#: lib/pp_admintools/app/ldap.py:1329
+#: lib/pp_admintools/app/ldap.py:1342
msgid "Modification of {dn!r} was NOT successful: {desc} - {msg}"
msgstr "Die Änderung von {dn!r} war NICHT erfolgreich - {desc}: {msg}"
-#: lib/pp_admintools/app/ldap.py:1334
+#: lib/pp_admintools/app/ldap.py:1347
msgid "Modification successful."
msgstr "Die Änderung war erfolgreich."
-#: lib/pp_admintools/app/ldap.py:1344
+#: lib/pp_admintools/app/ldap.py:1357
msgid "Deleting LDAP entry {dn!r} on {uri} ..."
msgstr "Lösche LDAP-Eintrag {dn!r} in {uri} …"
-#: lib/pp_admintools/app/ldap.py:1349
+#: lib/pp_admintools/app/ldap.py:1362
msgid "Simulation mode - deletion will not be executed."
msgstr "Simulationsmodus - hier wird jetzt nichts gelöscht."
-#: lib/pp_admintools/app/ldap.py:1355
+#: lib/pp_admintools/app/ldap.py:1368
msgid "Deletion of {dn!r} was NOT successfull - {c}: {e}"
msgstr "Das Löschen von {dn!r} war NICHT erfolgreich - {c}: {e}"
-#: lib/pp_admintools/app/ldap.py:1360
+#: lib/pp_admintools/app/ldap.py:1373
msgid "Deletion status: {!r}."
msgstr "Löschstatus: {!r}"
-#: lib/pp_admintools/app/ldap.py:1362
+#: lib/pp_admintools/app/ldap.py:1375
msgid "Result of deletion:"
msgstr "Ergebnis der Löschung:"
-#: lib/pp_admintools/app/ldap.py:1365
+#: lib/pp_admintools/app/ldap.py:1378
msgid "Deletion of {dn!r} was NOT successful: {desc} - {msg}"
msgstr "Das Löschen von {dn!r} war NICHT erfolgreich - {desc}: {msg}"
-#: lib/pp_admintools/app/ldap.py:1369
+#: lib/pp_admintools/app/ldap.py:1382
msgid "Deletion successful."
msgstr "Die Löschung war erfolgreich."
-#: lib/pp_admintools/app/ldap.py:1518
+#: lib/pp_admintools/app/ldap.py:1531
msgid "Reading password file {!r} ..."
msgstr "Lese Passwortdatei {!r} …"
-#: lib/pp_admintools/app/ldap.py:1549
+#: lib/pp_admintools/app/ldap.py:1562
msgid "Could not detect RDN from DN {!r}."
msgstr "Konnte RDN nich aus {!r} ermitteln."
-#: lib/pp_admintools/app/ldap.py:1553
+#: lib/pp_admintools/app/ldap.py:1566
msgid "Found RDN attribute {!r}."
msgstr "Fand RDN-Attribut {!r}."
-#: lib/pp_admintools/app/ldap.py:1559
+#: lib/pp_admintools/app/ldap.py:1572
msgid "RDN attribute {!r} will not be touched."
msgstr "Das RDN-Attribut {!r} wird nicht angefasst."
-#: lib/pp_admintools/app/ldap.py:1565 lib/pp_admintools/app/ldap.py:1584
-#: lib/pp_admintools/app/ldap.py:1662
+#: lib/pp_admintools/app/ldap.py:1578 lib/pp_admintools/app/ldap.py:1597
+#: lib/pp_admintools/app/ldap.py:1675
msgid "Attribute {!r} will not be touched."
msgstr "Das Attribut {!r} wird nicht angefasst."
-#: lib/pp_admintools/app/ldap.py:1622
+#: lib/pp_admintools/app/ldap.py:1635
msgid "Values to removed from attribute {!r}:"
msgstr "Werte, die von Attribut {!r} gelöscht werden."
"Starte Spiegelung der LDAP-Instanz {src!r} ({src_url}) zur Instanz {tgt!r} ({tgt_url}) "
"[{yes}/{no}]?"
-#: lib/pp_admintools/app/mirror_ldap.py:238 lib/pp_admintools/app/remove_ldap_user.py:309
+#: lib/pp_admintools/app/mirror_ldap.py:238 lib/pp_admintools/app/remove_ldap_user.py:307
#: lib/pp_admintools/app/set_ldap_password.py:492
msgid "yes"
msgstr "ja"
msgid "Zone object:"
msgstr "Zonen-Objekt:"
-#: lib/pp_admintools/app/remove_ldap_user.py:74
+#: lib/pp_admintools/app/remove_ldap_user.py:76
msgid ""
"Disables or removes the given users from LDAP. If disabling, then the user will not be really "
"removed, but disabled by locking the password, setting all status flags to {inact!r}, assigning "
"auf {inact!r}, Zuweisen von {shell!r} als Login-Shell und Löschen des Nutzers aus allen Gruppen "
"deaktiviert. Beim Löschen wird der Nutzer tatsächlich im LDAP gelöscht."
-#: lib/pp_admintools/app/remove_ldap_user.py:131
+#: lib/pp_admintools/app/remove_ldap_user.py:133
msgid "Removing options"
msgstr "Lösch-Optionen"
-#: lib/pp_admintools/app/remove_ldap_user.py:134
+#: lib/pp_admintools/app/remove_ldap_user.py:136
msgid "This is the default."
msgstr "Dieses ist die Vorgabe."
-#: lib/pp_admintools/app/remove_ldap_user.py:135
+#: lib/pp_admintools/app/remove_ldap_user.py:137
msgid "This is mutually exclusive to {!r}."
msgstr "Das schließt sich mit {!r} gegenseitig aus."
-#: lib/pp_admintools/app/remove_ldap_user.py:137
+#: lib/pp_admintools/app/remove_ldap_user.py:139
msgid "Deactivating the user instead of removing it."
msgstr "Deaktivieren der Nutzer anstatt Löschung."
-#: lib/pp_admintools/app/remove_ldap_user.py:144
+#: lib/pp_admintools/app/remove_ldap_user.py:146
msgid "Removing the user from LDAP."
msgstr "Löschen der übergebenen Nutzer im LDAP."
-#: lib/pp_admintools/app/remove_ldap_user.py:151
+#: lib/pp_admintools/app/remove_ldap_user.py:153
msgid "Don't remove all mail addresses of the users to remove from all mailing lists."
msgstr "Kein Löschen aller Mailadressen der zu löschenden Nutzer aus allen Mailing-Listen."
-#: lib/pp_admintools/app/remove_ldap_user.py:159 lib/pp_admintools/app/set_ldap_password.py:200
+#: lib/pp_admintools/app/remove_ldap_user.py:161 lib/pp_admintools/app/set_ldap_password.py:200
#: lib/pp_admintools/app/set_ldap_password.py:203
msgid "USER"
msgstr "NUTZER"
-#: lib/pp_admintools/app/remove_ldap_user.py:160
+#: lib/pp_admintools/app/remove_ldap_user.py:162
msgid ""
"The user, which should be deactivated or removed. They may be given by their Uid (the "
"alphanumeric POSIX name), their mail address or their LDAP DN (be aware, that this may be "
"angegeben werden. Bitte beachten, dass sich letzterer bei den verschiedenen LDAP-Instanzen "
"unterscheiden kann."
-#: lib/pp_admintools/app/remove_ldap_user.py:184
+#: lib/pp_admintools/app/remove_ldap_user.py:183
msgid "No users to remove given."
msgstr "Kein Nutzername zum Löschen angegeben."
-#: lib/pp_admintools/app/remove_ldap_user.py:203
+#: lib/pp_admintools/app/remove_ldap_user.py:201
msgid "Checking given instances for admin and read/write access."
msgstr "Überprüfe die gegebenen Instanzen nach Admin- und Schreib-/Lesezugriffsrechten."
-#: lib/pp_admintools/app/remove_ldap_user.py:210
+#: lib/pp_admintools/app/remove_ldap_user.py:208
msgid "LDAP instance {!r} not found in configuration."
msgstr "Die LDAP-Instanz {!r} wurde nicht in der Konfiguration gefunden."
-#: lib/pp_admintools/app/remove_ldap_user.py:218
+#: lib/pp_admintools/app/remove_ldap_user.py:216
msgid "LDAP instance {!r} has only readonly access."
msgstr "Die LDAP-Instanz {!r} besitzt nur Lesezugriffsrechte."
-#: lib/pp_admintools/app/remove_ldap_user.py:223
+#: lib/pp_admintools/app/remove_ldap_user.py:221
msgid "No admin access to LDAP instance {!r}."
msgstr "Keine Admin-Zugriffsrechte bei LDAP-Instanz {!r}."
-#: lib/pp_admintools/app/remove_ldap_user.py:240
+#: lib/pp_admintools/app/remove_ldap_user.py:238
msgid "All given users were not found in any LDAP instance."
msgstr "Alle übergebenen Nutzer wurden in keiner der LDAP-Instanzen gefunden."
-#: lib/pp_admintools/app/remove_ldap_user.py:245
+#: lib/pp_admintools/app/remove_ldap_user.py:243
msgid "Evaluated DNs to remove:"
msgstr "Zum Löschen ermittelte DNs:"
-#: lib/pp_admintools/app/remove_ldap_user.py:254
+#: lib/pp_admintools/app/remove_ldap_user.py:252
msgid "Start disabling user entries in:"
msgstr "Beginne Deaktivierung der Nutzereinträge in:"
-#: lib/pp_admintools/app/remove_ldap_user.py:256
+#: lib/pp_admintools/app/remove_ldap_user.py:254
msgid "Start removing user entries in:"
msgstr "Beginne Löschung der Nutzereinträge in:"
-#: lib/pp_admintools/app/remove_ldap_user.py:260
+#: lib/pp_admintools/app/remove_ldap_user.py:258
msgid "Start disabling user entries ..."
msgstr "Beginne Deaktivierung der Nutzereinträge …"
-#: lib/pp_admintools/app/remove_ldap_user.py:262
+#: lib/pp_admintools/app/remove_ldap_user.py:260
msgid "Start removing user entries ..."
msgstr "Beginne Löschung der Nutzereinträge …"
-#: lib/pp_admintools/app/remove_ldap_user.py:277
+#: lib/pp_admintools/app/remove_ldap_user.py:275
msgid "Do you really want to deactivate the following users?"
msgstr "Möchten Sie die folgenden Nutzer wirklich deaktivieren?"
-#: lib/pp_admintools/app/remove_ldap_user.py:279
+#: lib/pp_admintools/app/remove_ldap_user.py:277
msgid "Do you really want to remove the following users?"
msgstr "Möchten Sie die folgenden Nutzer wirklich löschen?"
-#: lib/pp_admintools/app/remove_ldap_user.py:305
+#: lib/pp_admintools/app/remove_ldap_user.py:303
msgid "Deactivate [{yes}/{no}]?"
msgstr "Deaktivieren [{yes}/{no}]?"
-#: lib/pp_admintools/app/remove_ldap_user.py:307
+#: lib/pp_admintools/app/remove_ldap_user.py:305
msgid "Remove [{yes}/{no}]?"
msgstr "Löschen [{yes}/{no}]?"
-#: lib/pp_admintools/app/remove_ldap_user.py:315
+#: lib/pp_admintools/app/remove_ldap_user.py:313
msgid "Evaluating DNs of the user {!r} to remove ..."
msgstr "Ermitteln der DNs des Nutzers {!r} zum Löschen …"
-#: lib/pp_admintools/app/remove_ldap_user.py:329 lib/pp_admintools/app/set_ldap_password.py:434
+#: lib/pp_admintools/app/remove_ldap_user.py:327 lib/pp_admintools/app/set_ldap_password.py:434
msgid "Got DN {dn!r} for user {user!r} in LDAP instance {inst}."
msgstr "Habe DN {dn!r} für den Nutzer {user!r} in der LDAP-Instanz {inst} ermittelt."
-#: lib/pp_admintools/app/remove_ldap_user.py:336 lib/pp_admintools/app/set_ldap_password.py:439
+#: lib/pp_admintools/app/remove_ldap_user.py:334 lib/pp_admintools/app/set_ldap_password.py:439
msgid "Found {nr} entries for user {u!r} in LDAP instance {i}."
msgstr "Fand {nr} Einträge für den Nutzer {u!r} in der LDAP-Instanz {i}."
-#: lib/pp_admintools/app/remove_ldap_user.py:348 lib/pp_admintools/app/set_ldap_password.py:453
+#: lib/pp_admintools/app/remove_ldap_user.py:346 lib/pp_admintools/app/set_ldap_password.py:453
msgid "Did not found user {user!r} in LDAP instance {inst}."
msgstr "Der Nutzer {user!r} wurde nicht in der LDAP-Instanz {inst} gefunden."
-#: lib/pp_admintools/app/remove_ldap_user.py:357
+#: lib/pp_admintools/app/remove_ldap_user.py:355
msgid "Deactivating all given users from {} ..."
msgstr "Deaktivieren aller übergebenen Nutzer in {} …"
-#: lib/pp_admintools/app/remove_ldap_user.py:359
+#: lib/pp_admintools/app/remove_ldap_user.py:357
msgid "Removing all given users from {} ..."
msgstr "Lösche alle übergebenen Nutzer in {} …"
-#: lib/pp_admintools/app/remove_ldap_user.py:374
+#: lib/pp_admintools/app/remove_ldap_user.py:372
msgid "Deactivating user {dn!r} from {inst} ..."
msgstr "Deaktivieren von Nutzer {dn!r} in {inst} …"
-#: lib/pp_admintools/app/remove_ldap_user.py:377
+#: lib/pp_admintools/app/remove_ldap_user.py:375
msgid "Removing user {dn!r} from {inst} ..."
msgstr "Lösche Nutzer {dn!r} in {inst} …"
-#: lib/pp_admintools/app/remove_ldap_user.py:383
+#: lib/pp_admintools/app/remove_ldap_user.py:381
msgid "Attributes of {!r}:"
msgstr "Attribute von {!r}:"
-#: lib/pp_admintools/app/remove_ldap_user.py:407
+#: lib/pp_admintools/app/remove_ldap_user.py:406
msgid "{c} on removing user {dn!r}: {e}"
msgstr "{c} beim Löschen des Nutzers {dn!r}: {e}"
-#: lib/pp_admintools/app/remove_ldap_user.py:413
+#: lib/pp_admintools/app/remove_ldap_user.py:412
msgid "User {dn!r} successful deactivated on {inst}."
msgstr "Der Nutzer {dn!r} wurde erfolgreich auf {inst} deaktiviert."
-#: lib/pp_admintools/app/remove_ldap_user.py:416
+#: lib/pp_admintools/app/remove_ldap_user.py:415
msgid "User {dn!r} successful removed from {inst}."
msgstr "Der Nutzer {dn!r} wurde erfolgreich von {inst} gelöscht."
-#: lib/pp_admintools/app/remove_ldap_user.py:442
+#: lib/pp_admintools/app/remove_ldap_user.py:441
msgid "Updating user info for {dn!r} on {inst} ..."
msgstr "Aktualisiere die Nutzerinformationenn für {dn!r} in {inst} …"
-#: lib/pp_admintools/app/remove_ldap_user.py:447 lib/pp_admintools/app/set_ldap_password.py:519
+#: lib/pp_admintools/app/remove_ldap_user.py:446 lib/pp_admintools/app/set_ldap_password.py:519
msgid "{c} on deactivating user {dn!r}: {e}"
msgstr "{c} beim Deaktivieren des Nutzers {dn!r}: {e}"
-#: lib/pp_admintools/app/remove_ldap_user.py:463
+#: lib/pp_admintools/app/remove_ldap_user.py:462
msgid "Did not found any group memberships of {dn!r} in {inst}."
msgstr "Keine Gruppenmitgliedschaften von {dn!r} in {inst} gefunden."
-#: lib/pp_admintools/app/remove_ldap_user.py:469 lib/pp_admintools/app/remove_ldap_user.py:496
-#: lib/pp_admintools/app/remove_ldap_user.py:527 lib/pp_admintools/app/remove_ldap_user.py:558
+#: lib/pp_admintools/app/remove_ldap_user.py:468 lib/pp_admintools/app/remove_ldap_user.py:495
+#: lib/pp_admintools/app/remove_ldap_user.py:526 lib/pp_admintools/app/remove_ldap_user.py:557
msgid "Removing user {u!r} from group {g!r} ..."
msgstr "Lösche Nutzer {u!r} aus der Gruppe {g!r} …"
-#: lib/pp_admintools/app/remove_ldap_user.py:474 lib/pp_admintools/app/remove_ldap_user.py:501
-#: lib/pp_admintools/app/remove_ldap_user.py:532 lib/pp_admintools/app/remove_ldap_user.py:563
+#: lib/pp_admintools/app/remove_ldap_user.py:473 lib/pp_admintools/app/remove_ldap_user.py:500
+#: lib/pp_admintools/app/remove_ldap_user.py:531 lib/pp_admintools/app/remove_ldap_user.py:562
msgid "{c} on removing user {dn!r} from group {g!r}: {e}"
msgstr "{c} beim Löschen des Nutzers {dn!r} von der Gruppe {g!r}: {e}"
-#: lib/pp_admintools/app/remove_ldap_user.py:490
+#: lib/pp_admintools/app/remove_ldap_user.py:489
msgid "Did not found any unique group memberships of {dn!r} in {inst}."
msgstr "Keine eindeutigen Gruppenmitgliedschaften von {dn!r} in {inst} gefunden."
-#: lib/pp_admintools/app/remove_ldap_user.py:514
+#: lib/pp_admintools/app/remove_ldap_user.py:513
msgid "Deleting user {uid!r} from all POSIX groups in {inst}."
msgstr "Lösche Nutzer {uid!r} aus allen POSIX-Gruppen in {inst} …"
-#: lib/pp_admintools/app/remove_ldap_user.py:521
+#: lib/pp_admintools/app/remove_ldap_user.py:520
msgid "Did not found any POSIX group memberships of {uid!r} in {inst}."
msgstr "Keine POSIX-Gruppenmitgliedschaften von {uid!r} in {inst} gefunden."
-#: lib/pp_admintools/app/remove_ldap_user.py:545
+#: lib/pp_admintools/app/remove_ldap_user.py:544
msgid "Deleting user {uid!r} from all sudo groups in {inst}."
msgstr "Lösche Nutzer {uid!r} aus allen sudo-Gruppen in {inst}."
-#: lib/pp_admintools/app/remove_ldap_user.py:552
+#: lib/pp_admintools/app/remove_ldap_user.py:551
msgid "Did not found any sudo group memberships of {uid!r} in {inst}."
msgstr "Keine sudo-Gruppenmitgliedschaften von {uid!r} in {inst} gefunden."
-#: lib/pp_admintools/app/remove_ldap_user.py:587
+#: lib/pp_admintools/app/remove_ldap_user.py:584
msgid "No mail addresses found to remove for user {!r}."
msgstr "Keine Mailadressen des Nutzers {!r} zum Löschen efunden."
-#: lib/pp_admintools/app/remove_ldap_user.py:591
+#: lib/pp_admintools/app/remove_ldap_user.py:588
msgid "Trying to remove the following mail addresses from mailing lists:"
msgstr "Versuche die folgenden Mailadressen aus Mailinglisten zu löschen:"
+#: lib/pp_admintools/app/remove_ldap_user.py:608
+msgid "Ignoring mailing list {!r} ..."
+msgstr "Ignoriere Mailingliste {!r} …"
+
+#: lib/pp_admintools/app/remove_ldap_user.py:613
+msgid "Found DNs of mailing lists:"
+msgstr "Gefundene DNs für Mailinglisten:"
+
+#: lib/pp_admintools/app/remove_ldap_user.py:618
+msgid "Did not found any mail groups including address {!r}."
+msgstr "Keine Mailgruppen gefunden, die die Adresse {!r} enthalten."
+
+#: lib/pp_admintools/app/remove_ldap_user.py:631
+msgid "Removing address {address!r} from mailing list {dn!r}."
+msgstr "Lösche Adresse {address!r} von Mailingliste {dn!r}."
+
+#: lib/pp_admintools/app/remove_ldap_user.py:670
+msgid "There are no changes for mail {mail!r} on {dn!r}?!?"
+msgstr "Es gibt keine Änderungen für die Mailadresse {mail!r} in {dn!r}?!?"
+
+#: lib/pp_admintools/app/remove_ldap_user.py:678
+msgid "{c} on removing mail {mail!r} from {dn!r}: {e}"
+msgstr "{c} beim Löschen des der Mailadresse {mail!r} von {dn!r}: {e}"
+
#: lib/pp_admintools/app/set_ldap_password.py:90
msgid ""
"Changing the password of the given user. If no user was given, then {app} tries to use the name "
msgstr ""
"Project-Id-Version: pp_admintools 0.9.0\n"
"Report-Msgid-Bugs-To: frank.brehm@pixelpark.com\n"
-"POT-Creation-Date: 2023-06-12 11:53+0200\n"
-"PO-Revision-Date: 2023-05-31 10:53+0200\n"
+"POT-Creation-Date: 2023-06-12 16:57+0200\n"
+"PO-Revision-Date: 2023-06-12 17:05+0200\n"
"Last-Translator: Frank Brehm <frank.brehm@pixelpark.com>\n"
"Language: en_US\n"
"Language-Team: Frank Brehm <frank.brehm@pixelpark.com>\n"
#: lib/pp_admintools/app/barracuda_sync.py:231 lib/pp_admintools/app/barracuda_sync.py:427
#: lib/pp_admintools/app/dns_deploy_zones.py:434 lib/pp_admintools/app/dns_deploy_zones.py:788
-#: lib/pp_admintools/app/ldap.py:876 lib/pp_admintools/app/ldap.py:1009
-#: lib/pp_admintools/app/ldap.py:1062 lib/pp_admintools/app/ldap.py:1115
-#: lib/pp_admintools/app/ldap.py:1403 lib/pp_admintools/app/ldap.py:1437
-#: lib/pp_admintools/app/ldap.py:1471 lib/pp_admintools/app/ldap.py:1505
+#: lib/pp_admintools/app/ldap.py:889 lib/pp_admintools/app/ldap.py:1022
+#: lib/pp_admintools/app/ldap.py:1075 lib/pp_admintools/app/ldap.py:1128
+#: lib/pp_admintools/app/ldap.py:1416 lib/pp_admintools/app/ldap.py:1450
+#: lib/pp_admintools/app/ldap.py:1484 lib/pp_admintools/app/ldap.py:1518
msgid "Result:"
msgstr ""
msgid "LDAP Entries to modified:"
msgstr ""
-#: lib/pp_admintools/app/barracuda_sync.py:756 lib/pp_admintools/app/ldap.py:1618
+#: lib/pp_admintools/app/barracuda_sync.py:756 lib/pp_admintools/app/ldap.py:1631
msgid "Values to add to attribute {!r}:"
msgstr ""
msgid "Values to be removed from attribute {!r}:"
msgstr ""
-#: lib/pp_admintools/app/barracuda_sync.py:777 lib/pp_admintools/app/ldap.py:1639
+#: lib/pp_admintools/app/barracuda_sync.py:777 lib/pp_admintools/app/ldap.py:1652
msgid "Changes for attribute {!r}:"
msgstr ""
-#: lib/pp_admintools/app/barracuda_sync.py:780 lib/pp_admintools/app/ldap.py:1642
+#: lib/pp_admintools/app/barracuda_sync.py:780 lib/pp_admintools/app/ldap.py:1655
msgid "No changes to attribute {!r}."
msgstr ""
msgstr ""
#: lib/pp_admintools/app/ldap.py:121 lib/pp_admintools/app/ldap.py:287
-#: lib/pp_admintools/app/ldap.py:1521
+#: lib/pp_admintools/app/ldap.py:1534
msgid "The file {!r} does not exists."
msgstr ""
#: lib/pp_admintools/app/ldap.py:125 lib/pp_admintools/app/ldap.py:291
-#: lib/pp_admintools/app/ldap.py:1526
+#: lib/pp_admintools/app/ldap.py:1539
msgid "The given path {!r} exists, but is not a regular file."
msgstr ""
#: lib/pp_admintools/app/ldap.py:129 lib/pp_admintools/app/ldap.py:295
-#: lib/pp_admintools/app/ldap.py:1531
+#: lib/pp_admintools/app/ldap.py:1544
msgid "The given file {!r} is not readable."
msgstr ""
msgstr ""
#: lib/pp_admintools/app/ldap.py:335 lib/pp_admintools/app/mirror_ldap.py:238
-#: lib/pp_admintools/app/remove_ldap_user.py:309 lib/pp_admintools/app/set_ldap_password.py:492
+#: lib/pp_admintools/app/remove_ldap_user.py:307 lib/pp_admintools/app/set_ldap_password.py:492
msgid "No"
msgstr ""
msgid "Found entry {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:822
+#: lib/pp_admintools/app/ldap.py:822 lib/pp_admintools/app/ldap.py:866
msgid "Found one entry with filter {fltr!r} in {uri}/{bdn}."
msgid_plural "Found {nr} enries with filter {fltr!r} in {uri}/{bdn}."
msgstr[0] ""
msgid "Got response entries:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:830
+#: lib/pp_admintools/app/ldap.py:830 lib/pp_admintools/app/ldap.py:878
msgid "No entry found with filter {fltr!r} in {uri}/{bdn}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:853 lib/pp_admintools/app/ldap.py:895
+#: lib/pp_admintools/app/ldap.py:854 lib/pp_admintools/app/ldap.py:908
msgid "Using LDAP filter: {!r}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:862 lib/pp_admintools/app/ldap.py:904
+#: lib/pp_admintools/app/ldap.py:870 lib/pp_admintools/app/ldap.py:917
msgid "Result of searching for DNs of all entries:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:866 lib/pp_admintools/app/ldap.py:908
-#: lib/pp_admintools/app/ldap.py:1006 lib/pp_admintools/app/ldap.py:1059
-#: lib/pp_admintools/app/ldap.py:1112 lib/pp_admintools/app/ldap.py:1200
-#: lib/pp_admintools/app/ldap.py:1400 lib/pp_admintools/app/ldap.py:1434
-#: lib/pp_admintools/app/ldap.py:1468 lib/pp_admintools/app/ldap.py:1502
+#: lib/pp_admintools/app/ldap.py:874 lib/pp_admintools/app/ldap.py:921
+#: lib/pp_admintools/app/ldap.py:1019 lib/pp_admintools/app/ldap.py:1072
+#: lib/pp_admintools/app/ldap.py:1125 lib/pp_admintools/app/ldap.py:1213
+#: lib/pp_admintools/app/ldap.py:1413 lib/pp_admintools/app/ldap.py:1447
+#: lib/pp_admintools/app/ldap.py:1481 lib/pp_admintools/app/ldap.py:1515
msgid "Got a response entry:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:891
+#: lib/pp_admintools/app/ldap.py:904
msgid "Getting all Entry DNs of LDAP instance {i!r} below {b!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:930
+#: lib/pp_admintools/app/ldap.py:943
msgid "Trying to evaluate DN of user {user!r} in LDAP instance {inst} ..."
msgstr "Trying to evaluate DN of user {user!r} in LDAP instance {inst} …"
-#: lib/pp_admintools/app/ldap.py:935
+#: lib/pp_admintools/app/ldap.py:948
msgid "Trying to evaluate DN of user {u!r} as a mail address ..."
msgstr "Trying to evaluate DN of user {u!r} as a mail address …"
-#: lib/pp_admintools/app/ldap.py:942
+#: lib/pp_admintools/app/ldap.py:955
msgid "Trying to evaluate DN of user {u!r} as a LDAP DN ..."
msgstr "Trying to evaluate DN of user {u!r} as a LDAP DN …"
-#: lib/pp_admintools/app/ldap.py:949
+#: lib/pp_admintools/app/ldap.py:962
msgid "Trying to evaluate DN of user {u!r} as a UID (Posix user name) ..."
msgstr "Trying to evaluate DN of user {u!r} as a UID (Posix user name) …"
-#: lib/pp_admintools/app/ldap.py:958 lib/pp_admintools/app/remove_ldap_user.py:319
+#: lib/pp_admintools/app/ldap.py:971 lib/pp_admintools/app/remove_ldap_user.py:317
msgid "Empty user given."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:961
+#: lib/pp_admintools/app/ldap.py:974
msgid "Trying to evaluate DN of user {u!r} as a CN ({c}) ..."
msgstr "Trying to evaluate DN of user {u!r} as a CN ({c}) …"
-#: lib/pp_admintools/app/ldap.py:991 lib/pp_admintools/app/ldap.py:1044
-#: lib/pp_admintools/app/ldap.py:1097 lib/pp_admintools/app/ldap.py:1388
-#: lib/pp_admintools/app/ldap.py:1422 lib/pp_admintools/app/ldap.py:1456
-#: lib/pp_admintools/app/ldap.py:1490
+#: lib/pp_admintools/app/ldap.py:1004 lib/pp_admintools/app/ldap.py:1057
+#: lib/pp_admintools/app/ldap.py:1110 lib/pp_admintools/app/ldap.py:1401
+#: lib/pp_admintools/app/ldap.py:1435 lib/pp_admintools/app/ldap.py:1469
+#: lib/pp_admintools/app/ldap.py:1503
msgid "Searching in {uri}/{bdn} with filter: {fltr}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1002
+#: lib/pp_admintools/app/ldap.py:1015
msgid "Result of searching for mail address {m!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1013
+#: lib/pp_admintools/app/ldap.py:1026
msgid "User with mail address {m!r} not found in {uri}/{bdn}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1055
+#: lib/pp_admintools/app/ldap.py:1068
msgid "Result of searching for uid {u!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1066
+#: lib/pp_admintools/app/ldap.py:1079
msgid "User with uid {u!r} not found in {uri}/{bdn}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1108
+#: lib/pp_admintools/app/ldap.py:1121
msgid "Result of searching for CN {cn!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1119
+#: lib/pp_admintools/app/ldap.py:1132
msgid "User with cn {cn!r} not found in {uri}/{bdn}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1136 lib/pp_admintools/app/set_ldap_password.py:411
+#: lib/pp_admintools/app/ldap.py:1149 lib/pp_admintools/app/set_ldap_password.py:411
msgid "User with DN {dn!r} not found in {uri}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1154
+#: lib/pp_admintools/app/ldap.py:1167
msgid "ObjectClasses of {dn!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1164
+#: lib/pp_admintools/app/ldap.py:1177
msgid "Entry {dn!r} in {uri} seems not to be an account."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1186
+#: lib/pp_admintools/app/ldap.py:1199
msgid "Searching DN {dn!r} in {uri}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1196
+#: lib/pp_admintools/app/ldap.py:1209
msgid "Result of searching for DN {dn!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1204
+#: lib/pp_admintools/app/ldap.py:1217
msgid "Entry with DN {dn!r} not found in {uri}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1249
+#: lib/pp_admintools/app/ldap.py:1262
msgid "Creating entry {dn!r} on {uri}:"
msgstr "Creating entry {dn!r} on {uri}:"
-#: lib/pp_admintools/app/ldap.py:1255
+#: lib/pp_admintools/app/ldap.py:1268
msgid "Simulation mode - entry will not be created."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1262
+#: lib/pp_admintools/app/ldap.py:1275
msgid "Creation of entry {dn!r} was NOT successfull - {c}: {e}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1277
+#: lib/pp_admintools/app/ldap.py:1290
msgid "Creation status: {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1279
+#: lib/pp_admintools/app/ldap.py:1292
msgid "Result of creating:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1282
+#: lib/pp_admintools/app/ldap.py:1295
msgid "Creation of entry {dn!r} was NOT successful: {desc} - {msg}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1288
+#: lib/pp_admintools/app/ldap.py:1301
msgid "Creation successful."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1299
+#: lib/pp_admintools/app/ldap.py:1312
msgid "Applying changes on {uri} to DN {dn!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1304
+#: lib/pp_admintools/app/ldap.py:1317
msgid "Simulation mode - changes are not applied."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1310
+#: lib/pp_admintools/app/ldap.py:1323
msgid "Modification of {dn!r} was NOT successfull - {c}: {e}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1312 lib/pp_admintools/app/ldap.py:1331
-#: lib/pp_admintools/app/remove_ldap_user.py:449 lib/pp_admintools/app/remove_ldap_user.py:476
-#: lib/pp_admintools/app/remove_ldap_user.py:503 lib/pp_admintools/app/remove_ldap_user.py:534
-#: lib/pp_admintools/app/remove_ldap_user.py:565 lib/pp_admintools/app/set_ldap_password.py:521
+#: lib/pp_admintools/app/ldap.py:1325 lib/pp_admintools/app/ldap.py:1344
+#: lib/pp_admintools/app/remove_ldap_user.py:448 lib/pp_admintools/app/remove_ldap_user.py:475
+#: lib/pp_admintools/app/remove_ldap_user.py:502 lib/pp_admintools/app/remove_ldap_user.py:533
+#: lib/pp_admintools/app/remove_ldap_user.py:564 lib/pp_admintools/app/remove_ldap_user.py:680
+#: lib/pp_admintools/app/set_ldap_password.py:521
msgid "Changes:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1324
+#: lib/pp_admintools/app/ldap.py:1337
msgid "Modification status: {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1326
+#: lib/pp_admintools/app/ldap.py:1339
msgid "Result of modifying:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1329
+#: lib/pp_admintools/app/ldap.py:1342
msgid "Modification of {dn!r} was NOT successful: {desc} - {msg}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1334
+#: lib/pp_admintools/app/ldap.py:1347
msgid "Modification successful."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1344
+#: lib/pp_admintools/app/ldap.py:1357
msgid "Deleting LDAP entry {dn!r} on {uri} ..."
msgstr "Deleting LDAP entry {dn!r} on {uri} …"
-#: lib/pp_admintools/app/ldap.py:1349
+#: lib/pp_admintools/app/ldap.py:1362
msgid "Simulation mode - deletion will not be executed."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1355
+#: lib/pp_admintools/app/ldap.py:1368
msgid "Deletion of {dn!r} was NOT successfull - {c}: {e}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1360
+#: lib/pp_admintools/app/ldap.py:1373
msgid "Deletion status: {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1362
+#: lib/pp_admintools/app/ldap.py:1375
msgid "Result of deletion:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1365
+#: lib/pp_admintools/app/ldap.py:1378
msgid "Deletion of {dn!r} was NOT successful: {desc} - {msg}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1369
+#: lib/pp_admintools/app/ldap.py:1382
msgid "Deletion successful."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1518
+#: lib/pp_admintools/app/ldap.py:1531
msgid "Reading password file {!r} ..."
msgstr "Reading password file {!r} …"
-#: lib/pp_admintools/app/ldap.py:1549
+#: lib/pp_admintools/app/ldap.py:1562
msgid "Could not detect RDN from DN {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1553
+#: lib/pp_admintools/app/ldap.py:1566
msgid "Found RDN attribute {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1559
+#: lib/pp_admintools/app/ldap.py:1572
msgid "RDN attribute {!r} will not be touched."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1565 lib/pp_admintools/app/ldap.py:1584
-#: lib/pp_admintools/app/ldap.py:1662
+#: lib/pp_admintools/app/ldap.py:1578 lib/pp_admintools/app/ldap.py:1597
+#: lib/pp_admintools/app/ldap.py:1675
msgid "Attribute {!r} will not be touched."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1622
+#: lib/pp_admintools/app/ldap.py:1635
msgid "Values to removed from attribute {!r}:"
msgstr ""
msgid "Start mirroring LDAP instance {src!r} ({src_url}) to instance {tgt!r} ({tgt_url}) [{yes}/{no}]?"
msgstr "Start mirroring LDAP instance {src!r} ({src_url}) to instance {tgt!r} ({tgt_url}) [{yes}/{no}]?"
-#: lib/pp_admintools/app/mirror_ldap.py:238 lib/pp_admintools/app/remove_ldap_user.py:309
+#: lib/pp_admintools/app/mirror_ldap.py:238 lib/pp_admintools/app/remove_ldap_user.py:307
#: lib/pp_admintools/app/set_ldap_password.py:492
msgid "yes"
msgstr ""
msgid "Zone object:"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:74
+#: lib/pp_admintools/app/remove_ldap_user.py:76
msgid ""
"Disables or removes the given users from LDAP. If disabling, then the user will not be really "
"removed, but disabled by locking the password, setting all status flags to {inact!r}, assigning "
"user will be really removed from LDAP."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:131
+#: lib/pp_admintools/app/remove_ldap_user.py:133
msgid "Removing options"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:134
+#: lib/pp_admintools/app/remove_ldap_user.py:136
msgid "This is the default."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:135
+#: lib/pp_admintools/app/remove_ldap_user.py:137
msgid "This is mutually exclusive to {!r}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:137
+#: lib/pp_admintools/app/remove_ldap_user.py:139
msgid "Deactivating the user instead of removing it."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:144
+#: lib/pp_admintools/app/remove_ldap_user.py:146
msgid "Removing the user from LDAP."
msgstr "Removing the user from LDAP."
-#: lib/pp_admintools/app/remove_ldap_user.py:151
+#: lib/pp_admintools/app/remove_ldap_user.py:153
msgid "Don't remove all mail addresses of the users to remove from all mailing lists."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:159 lib/pp_admintools/app/set_ldap_password.py:200
+#: lib/pp_admintools/app/remove_ldap_user.py:161 lib/pp_admintools/app/set_ldap_password.py:200
#: lib/pp_admintools/app/set_ldap_password.py:203
msgid "USER"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:160
+#: lib/pp_admintools/app/remove_ldap_user.py:162
msgid ""
"The user, which should be deactivated or removed. They may be given by their Uid (the "
"alphanumeric POSIX name), their mail address or their LDAP DN (be aware, that this may be "
"different in the particular LDAP instances)."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:184
+#: lib/pp_admintools/app/remove_ldap_user.py:183
msgid "No users to remove given."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:203
+#: lib/pp_admintools/app/remove_ldap_user.py:201
msgid "Checking given instances for admin and read/write access."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:210
+#: lib/pp_admintools/app/remove_ldap_user.py:208
msgid "LDAP instance {!r} not found in configuration."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:218
+#: lib/pp_admintools/app/remove_ldap_user.py:216
msgid "LDAP instance {!r} has only readonly access."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:223
+#: lib/pp_admintools/app/remove_ldap_user.py:221
msgid "No admin access to LDAP instance {!r}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:240
+#: lib/pp_admintools/app/remove_ldap_user.py:238
msgid "All given users were not found in any LDAP instance."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:245
+#: lib/pp_admintools/app/remove_ldap_user.py:243
msgid "Evaluated DNs to remove:"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:254
+#: lib/pp_admintools/app/remove_ldap_user.py:252
msgid "Start disabling user entries in:"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:256
+#: lib/pp_admintools/app/remove_ldap_user.py:254
msgid "Start removing user entries in:"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:260
+#: lib/pp_admintools/app/remove_ldap_user.py:258
msgid "Start disabling user entries ..."
msgstr "Start disabling user entries …"
-#: lib/pp_admintools/app/remove_ldap_user.py:262
+#: lib/pp_admintools/app/remove_ldap_user.py:260
msgid "Start removing user entries ..."
msgstr "Start removing user entries …"
-#: lib/pp_admintools/app/remove_ldap_user.py:277
+#: lib/pp_admintools/app/remove_ldap_user.py:275
msgid "Do you really want to deactivate the following users?"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:279
+#: lib/pp_admintools/app/remove_ldap_user.py:277
msgid "Do you really want to remove the following users?"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:305
+#: lib/pp_admintools/app/remove_ldap_user.py:303
msgid "Deactivate [{yes}/{no}]?"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:307
+#: lib/pp_admintools/app/remove_ldap_user.py:305
msgid "Remove [{yes}/{no}]?"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:315
+#: lib/pp_admintools/app/remove_ldap_user.py:313
msgid "Evaluating DNs of the user {!r} to remove ..."
msgstr "Evaluating DNs of the user {!r} to remove …"
-#: lib/pp_admintools/app/remove_ldap_user.py:329 lib/pp_admintools/app/set_ldap_password.py:434
+#: lib/pp_admintools/app/remove_ldap_user.py:327 lib/pp_admintools/app/set_ldap_password.py:434
msgid "Got DN {dn!r} for user {user!r} in LDAP instance {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:336 lib/pp_admintools/app/set_ldap_password.py:439
+#: lib/pp_admintools/app/remove_ldap_user.py:334 lib/pp_admintools/app/set_ldap_password.py:439
msgid "Found {nr} entries for user {u!r} in LDAP instance {i}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:348 lib/pp_admintools/app/set_ldap_password.py:453
+#: lib/pp_admintools/app/remove_ldap_user.py:346 lib/pp_admintools/app/set_ldap_password.py:453
msgid "Did not found user {user!r} in LDAP instance {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:357
+#: lib/pp_admintools/app/remove_ldap_user.py:355
msgid "Deactivating all given users from {} ..."
msgstr "Deactivating all given users from {} …"
-#: lib/pp_admintools/app/remove_ldap_user.py:359
+#: lib/pp_admintools/app/remove_ldap_user.py:357
msgid "Removing all given users from {} ..."
msgstr "Removing all given users from {} …"
-#: lib/pp_admintools/app/remove_ldap_user.py:374
+#: lib/pp_admintools/app/remove_ldap_user.py:372
msgid "Deactivating user {dn!r} from {inst} ..."
msgstr "Deactivating user {dn!r} from {inst} …"
-#: lib/pp_admintools/app/remove_ldap_user.py:377
+#: lib/pp_admintools/app/remove_ldap_user.py:375
msgid "Removing user {dn!r} from {inst} ..."
msgstr "Removing user {dn!r} from {inst} …"
-#: lib/pp_admintools/app/remove_ldap_user.py:383
+#: lib/pp_admintools/app/remove_ldap_user.py:381
msgid "Attributes of {!r}:"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:407
+#: lib/pp_admintools/app/remove_ldap_user.py:406
msgid "{c} on removing user {dn!r}: {e}"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:413
+#: lib/pp_admintools/app/remove_ldap_user.py:412
msgid "User {dn!r} successful deactivated on {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:416
+#: lib/pp_admintools/app/remove_ldap_user.py:415
msgid "User {dn!r} successful removed from {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:442
+#: lib/pp_admintools/app/remove_ldap_user.py:441
msgid "Updating user info for {dn!r} on {inst} ..."
msgstr "Updating user info for {dn!r} on {inst} …"
-#: lib/pp_admintools/app/remove_ldap_user.py:447 lib/pp_admintools/app/set_ldap_password.py:519
+#: lib/pp_admintools/app/remove_ldap_user.py:446 lib/pp_admintools/app/set_ldap_password.py:519
msgid "{c} on deactivating user {dn!r}: {e}"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:463
+#: lib/pp_admintools/app/remove_ldap_user.py:462
msgid "Did not found any group memberships of {dn!r} in {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:469 lib/pp_admintools/app/remove_ldap_user.py:496
-#: lib/pp_admintools/app/remove_ldap_user.py:527 lib/pp_admintools/app/remove_ldap_user.py:558
+#: lib/pp_admintools/app/remove_ldap_user.py:468 lib/pp_admintools/app/remove_ldap_user.py:495
+#: lib/pp_admintools/app/remove_ldap_user.py:526 lib/pp_admintools/app/remove_ldap_user.py:557
msgid "Removing user {u!r} from group {g!r} ..."
msgstr "Removing user {u!r} from group {g!r} …"
-#: lib/pp_admintools/app/remove_ldap_user.py:474 lib/pp_admintools/app/remove_ldap_user.py:501
-#: lib/pp_admintools/app/remove_ldap_user.py:532 lib/pp_admintools/app/remove_ldap_user.py:563
+#: lib/pp_admintools/app/remove_ldap_user.py:473 lib/pp_admintools/app/remove_ldap_user.py:500
+#: lib/pp_admintools/app/remove_ldap_user.py:531 lib/pp_admintools/app/remove_ldap_user.py:562
msgid "{c} on removing user {dn!r} from group {g!r}: {e}"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:490
+#: lib/pp_admintools/app/remove_ldap_user.py:489
msgid "Did not found any unique group memberships of {dn!r} in {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:514
+#: lib/pp_admintools/app/remove_ldap_user.py:513
msgid "Deleting user {uid!r} from all POSIX groups in {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:521
+#: lib/pp_admintools/app/remove_ldap_user.py:520
msgid "Did not found any POSIX group memberships of {uid!r} in {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:545
+#: lib/pp_admintools/app/remove_ldap_user.py:544
msgid "Deleting user {uid!r} from all sudo groups in {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:552
+#: lib/pp_admintools/app/remove_ldap_user.py:551
msgid "Did not found any sudo group memberships of {uid!r} in {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:587
+#: lib/pp_admintools/app/remove_ldap_user.py:584
msgid "No mail addresses found to remove for user {!r}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:591
+#: lib/pp_admintools/app/remove_ldap_user.py:588
msgid "Trying to remove the following mail addresses from mailing lists:"
msgstr ""
+#: lib/pp_admintools/app/remove_ldap_user.py:608
+msgid "Ignoring mailing list {!r} ..."
+msgstr "Ignoring mailing list {!r} …"
+
+#: lib/pp_admintools/app/remove_ldap_user.py:613
+msgid "Found DNs of mailing lists:"
+msgstr ""
+
+#: lib/pp_admintools/app/remove_ldap_user.py:618
+msgid "Did not found any mail groups including address {!r}."
+msgstr ""
+
+#: lib/pp_admintools/app/remove_ldap_user.py:631
+msgid "Removing address {address!r} from mailing list {dn!r}."
+msgstr ""
+
+#: lib/pp_admintools/app/remove_ldap_user.py:670
+msgid "There are no changes for mail {mail!r} on {dn!r}?!?"
+msgstr ""
+
+#: lib/pp_admintools/app/remove_ldap_user.py:678
+msgid "{c} on removing mail {mail!r} from {dn!r}: {e}"
+msgstr ""
+
#: lib/pp_admintools/app/set_ldap_password.py:90
msgid ""
"Changing the password of the given user. If no user was given, then {app} tries to use the name "
msgstr ""
"Project-Id-Version: pp_admintools 0.9.0\n"
"Report-Msgid-Bugs-To: frank.brehm@pixelpark.com\n"
-"POT-Creation-Date: 2023-06-12 11:53+0200\n"
+"POT-Creation-Date: 2023-06-12 16:57+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <frank.brehm@pixelpark.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
#: lib/pp_admintools/app/barracuda_sync.py:231 lib/pp_admintools/app/barracuda_sync.py:427
#: lib/pp_admintools/app/dns_deploy_zones.py:434 lib/pp_admintools/app/dns_deploy_zones.py:788
-#: lib/pp_admintools/app/ldap.py:876 lib/pp_admintools/app/ldap.py:1009
-#: lib/pp_admintools/app/ldap.py:1062 lib/pp_admintools/app/ldap.py:1115
-#: lib/pp_admintools/app/ldap.py:1403 lib/pp_admintools/app/ldap.py:1437
-#: lib/pp_admintools/app/ldap.py:1471 lib/pp_admintools/app/ldap.py:1505
+#: lib/pp_admintools/app/ldap.py:889 lib/pp_admintools/app/ldap.py:1022
+#: lib/pp_admintools/app/ldap.py:1075 lib/pp_admintools/app/ldap.py:1128
+#: lib/pp_admintools/app/ldap.py:1416 lib/pp_admintools/app/ldap.py:1450
+#: lib/pp_admintools/app/ldap.py:1484 lib/pp_admintools/app/ldap.py:1518
msgid "Result:"
msgstr ""
msgid "LDAP Entries to modified:"
msgstr ""
-#: lib/pp_admintools/app/barracuda_sync.py:756 lib/pp_admintools/app/ldap.py:1618
+#: lib/pp_admintools/app/barracuda_sync.py:756 lib/pp_admintools/app/ldap.py:1631
msgid "Values to add to attribute {!r}:"
msgstr ""
msgid "Values to be removed from attribute {!r}:"
msgstr ""
-#: lib/pp_admintools/app/barracuda_sync.py:777 lib/pp_admintools/app/ldap.py:1639
+#: lib/pp_admintools/app/barracuda_sync.py:777 lib/pp_admintools/app/ldap.py:1652
msgid "Changes for attribute {!r}:"
msgstr ""
-#: lib/pp_admintools/app/barracuda_sync.py:780 lib/pp_admintools/app/ldap.py:1642
+#: lib/pp_admintools/app/barracuda_sync.py:780 lib/pp_admintools/app/ldap.py:1655
msgid "No changes to attribute {!r}."
msgstr ""
msgstr ""
#: lib/pp_admintools/app/ldap.py:121 lib/pp_admintools/app/ldap.py:287
-#: lib/pp_admintools/app/ldap.py:1521
+#: lib/pp_admintools/app/ldap.py:1534
msgid "The file {!r} does not exists."
msgstr ""
#: lib/pp_admintools/app/ldap.py:125 lib/pp_admintools/app/ldap.py:291
-#: lib/pp_admintools/app/ldap.py:1526
+#: lib/pp_admintools/app/ldap.py:1539
msgid "The given path {!r} exists, but is not a regular file."
msgstr ""
#: lib/pp_admintools/app/ldap.py:129 lib/pp_admintools/app/ldap.py:295
-#: lib/pp_admintools/app/ldap.py:1531
+#: lib/pp_admintools/app/ldap.py:1544
msgid "The given file {!r} is not readable."
msgstr ""
msgstr ""
#: lib/pp_admintools/app/ldap.py:335 lib/pp_admintools/app/mirror_ldap.py:238
-#: lib/pp_admintools/app/remove_ldap_user.py:309 lib/pp_admintools/app/set_ldap_password.py:492
+#: lib/pp_admintools/app/remove_ldap_user.py:307 lib/pp_admintools/app/set_ldap_password.py:492
msgid "No"
msgstr ""
msgid "Found entry {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:822
+#: lib/pp_admintools/app/ldap.py:822 lib/pp_admintools/app/ldap.py:866
msgid "Found one entry with filter {fltr!r} in {uri}/{bdn}."
msgid_plural "Found {nr} enries with filter {fltr!r} in {uri}/{bdn}."
msgstr[0] ""
msgid "Got response entries:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:830
+#: lib/pp_admintools/app/ldap.py:830 lib/pp_admintools/app/ldap.py:878
msgid "No entry found with filter {fltr!r} in {uri}/{bdn}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:853 lib/pp_admintools/app/ldap.py:895
+#: lib/pp_admintools/app/ldap.py:854 lib/pp_admintools/app/ldap.py:908
msgid "Using LDAP filter: {!r}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:862 lib/pp_admintools/app/ldap.py:904
+#: lib/pp_admintools/app/ldap.py:870 lib/pp_admintools/app/ldap.py:917
msgid "Result of searching for DNs of all entries:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:866 lib/pp_admintools/app/ldap.py:908
-#: lib/pp_admintools/app/ldap.py:1006 lib/pp_admintools/app/ldap.py:1059
-#: lib/pp_admintools/app/ldap.py:1112 lib/pp_admintools/app/ldap.py:1200
-#: lib/pp_admintools/app/ldap.py:1400 lib/pp_admintools/app/ldap.py:1434
-#: lib/pp_admintools/app/ldap.py:1468 lib/pp_admintools/app/ldap.py:1502
+#: lib/pp_admintools/app/ldap.py:874 lib/pp_admintools/app/ldap.py:921
+#: lib/pp_admintools/app/ldap.py:1019 lib/pp_admintools/app/ldap.py:1072
+#: lib/pp_admintools/app/ldap.py:1125 lib/pp_admintools/app/ldap.py:1213
+#: lib/pp_admintools/app/ldap.py:1413 lib/pp_admintools/app/ldap.py:1447
+#: lib/pp_admintools/app/ldap.py:1481 lib/pp_admintools/app/ldap.py:1515
msgid "Got a response entry:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:891
+#: lib/pp_admintools/app/ldap.py:904
msgid "Getting all Entry DNs of LDAP instance {i!r} below {b!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:930
+#: lib/pp_admintools/app/ldap.py:943
msgid "Trying to evaluate DN of user {user!r} in LDAP instance {inst} ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:935
+#: lib/pp_admintools/app/ldap.py:948
msgid "Trying to evaluate DN of user {u!r} as a mail address ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:942
+#: lib/pp_admintools/app/ldap.py:955
msgid "Trying to evaluate DN of user {u!r} as a LDAP DN ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:949
+#: lib/pp_admintools/app/ldap.py:962
msgid "Trying to evaluate DN of user {u!r} as a UID (Posix user name) ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:958 lib/pp_admintools/app/remove_ldap_user.py:319
+#: lib/pp_admintools/app/ldap.py:971 lib/pp_admintools/app/remove_ldap_user.py:317
msgid "Empty user given."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:961
+#: lib/pp_admintools/app/ldap.py:974
msgid "Trying to evaluate DN of user {u!r} as a CN ({c}) ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:991 lib/pp_admintools/app/ldap.py:1044
-#: lib/pp_admintools/app/ldap.py:1097 lib/pp_admintools/app/ldap.py:1388
-#: lib/pp_admintools/app/ldap.py:1422 lib/pp_admintools/app/ldap.py:1456
-#: lib/pp_admintools/app/ldap.py:1490
+#: lib/pp_admintools/app/ldap.py:1004 lib/pp_admintools/app/ldap.py:1057
+#: lib/pp_admintools/app/ldap.py:1110 lib/pp_admintools/app/ldap.py:1401
+#: lib/pp_admintools/app/ldap.py:1435 lib/pp_admintools/app/ldap.py:1469
+#: lib/pp_admintools/app/ldap.py:1503
msgid "Searching in {uri}/{bdn} with filter: {fltr}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1002
+#: lib/pp_admintools/app/ldap.py:1015
msgid "Result of searching for mail address {m!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1013
+#: lib/pp_admintools/app/ldap.py:1026
msgid "User with mail address {m!r} not found in {uri}/{bdn}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1055
+#: lib/pp_admintools/app/ldap.py:1068
msgid "Result of searching for uid {u!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1066
+#: lib/pp_admintools/app/ldap.py:1079
msgid "User with uid {u!r} not found in {uri}/{bdn}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1108
+#: lib/pp_admintools/app/ldap.py:1121
msgid "Result of searching for CN {cn!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1119
+#: lib/pp_admintools/app/ldap.py:1132
msgid "User with cn {cn!r} not found in {uri}/{bdn}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1136 lib/pp_admintools/app/set_ldap_password.py:411
+#: lib/pp_admintools/app/ldap.py:1149 lib/pp_admintools/app/set_ldap_password.py:411
msgid "User with DN {dn!r} not found in {uri}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1154
+#: lib/pp_admintools/app/ldap.py:1167
msgid "ObjectClasses of {dn!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1164
+#: lib/pp_admintools/app/ldap.py:1177
msgid "Entry {dn!r} in {uri} seems not to be an account."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1186
+#: lib/pp_admintools/app/ldap.py:1199
msgid "Searching DN {dn!r} in {uri}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1196
+#: lib/pp_admintools/app/ldap.py:1209
msgid "Result of searching for DN {dn!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1204
+#: lib/pp_admintools/app/ldap.py:1217
msgid "Entry with DN {dn!r} not found in {uri}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1249
+#: lib/pp_admintools/app/ldap.py:1262
msgid "Creating entry {dn!r} on {uri}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1255
+#: lib/pp_admintools/app/ldap.py:1268
msgid "Simulation mode - entry will not be created."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1262
+#: lib/pp_admintools/app/ldap.py:1275
msgid "Creation of entry {dn!r} was NOT successfull - {c}: {e}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1277
+#: lib/pp_admintools/app/ldap.py:1290
msgid "Creation status: {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1279
+#: lib/pp_admintools/app/ldap.py:1292
msgid "Result of creating:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1282
+#: lib/pp_admintools/app/ldap.py:1295
msgid "Creation of entry {dn!r} was NOT successful: {desc} - {msg}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1288
+#: lib/pp_admintools/app/ldap.py:1301
msgid "Creation successful."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1299
+#: lib/pp_admintools/app/ldap.py:1312
msgid "Applying changes on {uri} to DN {dn!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1304
+#: lib/pp_admintools/app/ldap.py:1317
msgid "Simulation mode - changes are not applied."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1310
+#: lib/pp_admintools/app/ldap.py:1323
msgid "Modification of {dn!r} was NOT successfull - {c}: {e}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1312 lib/pp_admintools/app/ldap.py:1331
-#: lib/pp_admintools/app/remove_ldap_user.py:449 lib/pp_admintools/app/remove_ldap_user.py:476
-#: lib/pp_admintools/app/remove_ldap_user.py:503 lib/pp_admintools/app/remove_ldap_user.py:534
-#: lib/pp_admintools/app/remove_ldap_user.py:565 lib/pp_admintools/app/set_ldap_password.py:521
+#: lib/pp_admintools/app/ldap.py:1325 lib/pp_admintools/app/ldap.py:1344
+#: lib/pp_admintools/app/remove_ldap_user.py:448 lib/pp_admintools/app/remove_ldap_user.py:475
+#: lib/pp_admintools/app/remove_ldap_user.py:502 lib/pp_admintools/app/remove_ldap_user.py:533
+#: lib/pp_admintools/app/remove_ldap_user.py:564 lib/pp_admintools/app/remove_ldap_user.py:680
+#: lib/pp_admintools/app/set_ldap_password.py:521
msgid "Changes:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1324
+#: lib/pp_admintools/app/ldap.py:1337
msgid "Modification status: {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1326
+#: lib/pp_admintools/app/ldap.py:1339
msgid "Result of modifying:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1329
+#: lib/pp_admintools/app/ldap.py:1342
msgid "Modification of {dn!r} was NOT successful: {desc} - {msg}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1334
+#: lib/pp_admintools/app/ldap.py:1347
msgid "Modification successful."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1344
+#: lib/pp_admintools/app/ldap.py:1357
msgid "Deleting LDAP entry {dn!r} on {uri} ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1349
+#: lib/pp_admintools/app/ldap.py:1362
msgid "Simulation mode - deletion will not be executed."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1355
+#: lib/pp_admintools/app/ldap.py:1368
msgid "Deletion of {dn!r} was NOT successfull - {c}: {e}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1360
+#: lib/pp_admintools/app/ldap.py:1373
msgid "Deletion status: {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1362
+#: lib/pp_admintools/app/ldap.py:1375
msgid "Result of deletion:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1365
+#: lib/pp_admintools/app/ldap.py:1378
msgid "Deletion of {dn!r} was NOT successful: {desc} - {msg}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1369
+#: lib/pp_admintools/app/ldap.py:1382
msgid "Deletion successful."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1518
+#: lib/pp_admintools/app/ldap.py:1531
msgid "Reading password file {!r} ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1549
+#: lib/pp_admintools/app/ldap.py:1562
msgid "Could not detect RDN from DN {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1553
+#: lib/pp_admintools/app/ldap.py:1566
msgid "Found RDN attribute {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1559
+#: lib/pp_admintools/app/ldap.py:1572
msgid "RDN attribute {!r} will not be touched."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1565 lib/pp_admintools/app/ldap.py:1584
-#: lib/pp_admintools/app/ldap.py:1662
+#: lib/pp_admintools/app/ldap.py:1578 lib/pp_admintools/app/ldap.py:1597
+#: lib/pp_admintools/app/ldap.py:1675
msgid "Attribute {!r} will not be touched."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1622
+#: lib/pp_admintools/app/ldap.py:1635
msgid "Values to removed from attribute {!r}:"
msgstr ""
msgid "Start mirroring LDAP instance {src!r} ({src_url}) to instance {tgt!r} ({tgt_url}) [{yes}/{no}]?"
msgstr ""
-#: lib/pp_admintools/app/mirror_ldap.py:238 lib/pp_admintools/app/remove_ldap_user.py:309
+#: lib/pp_admintools/app/mirror_ldap.py:238 lib/pp_admintools/app/remove_ldap_user.py:307
#: lib/pp_admintools/app/set_ldap_password.py:492
msgid "yes"
msgstr ""
msgid "Zone object:"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:74
+#: lib/pp_admintools/app/remove_ldap_user.py:76
msgid ""
"Disables or removes the given users from LDAP. If disabling, then the user will not be really "
"removed, but disabled by locking the password, setting all status flags to {inact!r}, assigning "
"user will be really removed from LDAP."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:131
+#: lib/pp_admintools/app/remove_ldap_user.py:133
msgid "Removing options"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:134
+#: lib/pp_admintools/app/remove_ldap_user.py:136
msgid "This is the default."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:135
+#: lib/pp_admintools/app/remove_ldap_user.py:137
msgid "This is mutually exclusive to {!r}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:137
+#: lib/pp_admintools/app/remove_ldap_user.py:139
msgid "Deactivating the user instead of removing it."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:144
+#: lib/pp_admintools/app/remove_ldap_user.py:146
msgid "Removing the user from LDAP."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:151
+#: lib/pp_admintools/app/remove_ldap_user.py:153
msgid "Don't remove all mail addresses of the users to remove from all mailing lists."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:159 lib/pp_admintools/app/set_ldap_password.py:200
+#: lib/pp_admintools/app/remove_ldap_user.py:161 lib/pp_admintools/app/set_ldap_password.py:200
#: lib/pp_admintools/app/set_ldap_password.py:203
msgid "USER"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:160
+#: lib/pp_admintools/app/remove_ldap_user.py:162
msgid ""
"The user, which should be deactivated or removed. They may be given by their Uid (the "
"alphanumeric POSIX name), their mail address or their LDAP DN (be aware, that this may be "
"different in the particular LDAP instances)."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:184
+#: lib/pp_admintools/app/remove_ldap_user.py:183
msgid "No users to remove given."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:203
+#: lib/pp_admintools/app/remove_ldap_user.py:201
msgid "Checking given instances for admin and read/write access."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:210
+#: lib/pp_admintools/app/remove_ldap_user.py:208
msgid "LDAP instance {!r} not found in configuration."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:218
+#: lib/pp_admintools/app/remove_ldap_user.py:216
msgid "LDAP instance {!r} has only readonly access."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:223
+#: lib/pp_admintools/app/remove_ldap_user.py:221
msgid "No admin access to LDAP instance {!r}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:240
+#: lib/pp_admintools/app/remove_ldap_user.py:238
msgid "All given users were not found in any LDAP instance."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:245
+#: lib/pp_admintools/app/remove_ldap_user.py:243
msgid "Evaluated DNs to remove:"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:254
+#: lib/pp_admintools/app/remove_ldap_user.py:252
msgid "Start disabling user entries in:"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:256
+#: lib/pp_admintools/app/remove_ldap_user.py:254
msgid "Start removing user entries in:"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:260
+#: lib/pp_admintools/app/remove_ldap_user.py:258
msgid "Start disabling user entries ..."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:262
+#: lib/pp_admintools/app/remove_ldap_user.py:260
msgid "Start removing user entries ..."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:277
+#: lib/pp_admintools/app/remove_ldap_user.py:275
msgid "Do you really want to deactivate the following users?"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:279
+#: lib/pp_admintools/app/remove_ldap_user.py:277
msgid "Do you really want to remove the following users?"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:305
+#: lib/pp_admintools/app/remove_ldap_user.py:303
msgid "Deactivate [{yes}/{no}]?"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:307
+#: lib/pp_admintools/app/remove_ldap_user.py:305
msgid "Remove [{yes}/{no}]?"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:315
+#: lib/pp_admintools/app/remove_ldap_user.py:313
msgid "Evaluating DNs of the user {!r} to remove ..."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:329 lib/pp_admintools/app/set_ldap_password.py:434
+#: lib/pp_admintools/app/remove_ldap_user.py:327 lib/pp_admintools/app/set_ldap_password.py:434
msgid "Got DN {dn!r} for user {user!r} in LDAP instance {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:336 lib/pp_admintools/app/set_ldap_password.py:439
+#: lib/pp_admintools/app/remove_ldap_user.py:334 lib/pp_admintools/app/set_ldap_password.py:439
msgid "Found {nr} entries for user {u!r} in LDAP instance {i}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:348 lib/pp_admintools/app/set_ldap_password.py:453
+#: lib/pp_admintools/app/remove_ldap_user.py:346 lib/pp_admintools/app/set_ldap_password.py:453
msgid "Did not found user {user!r} in LDAP instance {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:357
+#: lib/pp_admintools/app/remove_ldap_user.py:355
msgid "Deactivating all given users from {} ..."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:359
+#: lib/pp_admintools/app/remove_ldap_user.py:357
msgid "Removing all given users from {} ..."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:374
+#: lib/pp_admintools/app/remove_ldap_user.py:372
msgid "Deactivating user {dn!r} from {inst} ..."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:377
+#: lib/pp_admintools/app/remove_ldap_user.py:375
msgid "Removing user {dn!r} from {inst} ..."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:383
+#: lib/pp_admintools/app/remove_ldap_user.py:381
msgid "Attributes of {!r}:"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:407
+#: lib/pp_admintools/app/remove_ldap_user.py:406
msgid "{c} on removing user {dn!r}: {e}"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:413
+#: lib/pp_admintools/app/remove_ldap_user.py:412
msgid "User {dn!r} successful deactivated on {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:416
+#: lib/pp_admintools/app/remove_ldap_user.py:415
msgid "User {dn!r} successful removed from {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:442
+#: lib/pp_admintools/app/remove_ldap_user.py:441
msgid "Updating user info for {dn!r} on {inst} ..."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:447 lib/pp_admintools/app/set_ldap_password.py:519
+#: lib/pp_admintools/app/remove_ldap_user.py:446 lib/pp_admintools/app/set_ldap_password.py:519
msgid "{c} on deactivating user {dn!r}: {e}"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:463
+#: lib/pp_admintools/app/remove_ldap_user.py:462
msgid "Did not found any group memberships of {dn!r} in {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:469 lib/pp_admintools/app/remove_ldap_user.py:496
-#: lib/pp_admintools/app/remove_ldap_user.py:527 lib/pp_admintools/app/remove_ldap_user.py:558
+#: lib/pp_admintools/app/remove_ldap_user.py:468 lib/pp_admintools/app/remove_ldap_user.py:495
+#: lib/pp_admintools/app/remove_ldap_user.py:526 lib/pp_admintools/app/remove_ldap_user.py:557
msgid "Removing user {u!r} from group {g!r} ..."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:474 lib/pp_admintools/app/remove_ldap_user.py:501
-#: lib/pp_admintools/app/remove_ldap_user.py:532 lib/pp_admintools/app/remove_ldap_user.py:563
+#: lib/pp_admintools/app/remove_ldap_user.py:473 lib/pp_admintools/app/remove_ldap_user.py:500
+#: lib/pp_admintools/app/remove_ldap_user.py:531 lib/pp_admintools/app/remove_ldap_user.py:562
msgid "{c} on removing user {dn!r} from group {g!r}: {e}"
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:490
+#: lib/pp_admintools/app/remove_ldap_user.py:489
msgid "Did not found any unique group memberships of {dn!r} in {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:514
+#: lib/pp_admintools/app/remove_ldap_user.py:513
msgid "Deleting user {uid!r} from all POSIX groups in {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:521
+#: lib/pp_admintools/app/remove_ldap_user.py:520
msgid "Did not found any POSIX group memberships of {uid!r} in {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:545
+#: lib/pp_admintools/app/remove_ldap_user.py:544
msgid "Deleting user {uid!r} from all sudo groups in {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:552
+#: lib/pp_admintools/app/remove_ldap_user.py:551
msgid "Did not found any sudo group memberships of {uid!r} in {inst}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:587
+#: lib/pp_admintools/app/remove_ldap_user.py:584
msgid "No mail addresses found to remove for user {!r}."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:591
+#: lib/pp_admintools/app/remove_ldap_user.py:588
msgid "Trying to remove the following mail addresses from mailing lists:"
msgstr ""
+#: lib/pp_admintools/app/remove_ldap_user.py:608
+msgid "Ignoring mailing list {!r} ..."
+msgstr ""
+
+#: lib/pp_admintools/app/remove_ldap_user.py:613
+msgid "Found DNs of mailing lists:"
+msgstr ""
+
+#: lib/pp_admintools/app/remove_ldap_user.py:618
+msgid "Did not found any mail groups including address {!r}."
+msgstr ""
+
+#: lib/pp_admintools/app/remove_ldap_user.py:631
+msgid "Removing address {address!r} from mailing list {dn!r}."
+msgstr ""
+
+#: lib/pp_admintools/app/remove_ldap_user.py:670
+msgid "There are no changes for mail {mail!r} on {dn!r}?!?"
+msgstr ""
+
+#: lib/pp_admintools/app/remove_ldap_user.py:678
+msgid "{c} on removing mail {mail!r} from {dn!r}: {e}"
+msgstr ""
+
#: lib/pp_admintools/app/set_ldap_password.py:90
msgid ""
"Changing the password of the given user. If no user was given, then {app} tries to use the name "