# Standard modules
import logging
-import os
-import getpass
import sys
# Own modules
# from fb_tools.common import to_bool, is_sequence, pp
-from fb_tools.common import is_sequence
from fb_tools.app import BaseApplication
from .. import pp
from ..errors import PpAppError
-from .ldap import PasswordFileOptionAction
-
from ..handler.ldap_password import WrongPwdSchemaError
from ..handler.ldap_password import LdapPasswordHandler
-from ..handler.ldap_password import HAS_CRACKLIB
from ..handler.ldap_password import WrongSaltError, WrongRoundsError
-__version__ = '0.1.1'
+__version__ = '0.1.2'
LOG = logging.getLogger(__name__)
_ = XLATOR.gettext
msgstr ""
"Project-Id-Version: pp_admintools 0.9.1\n"
"Report-Msgid-Bugs-To: frank.brehm@pixelpark.com\n"
-"POT-Creation-Date: 2022-11-03 16:37+0100\n"
+"POT-Creation-Date: 2022-11-11 16:38+0100\n"
"PO-Revision-Date: 2022-11-03 16:40+0200\n"
"Last-Translator: Frank Brehm <frank.brehm@pixelpark.com>\n"
"Language: de_DE\n"
msgid "Generation of the BIND9 configuration file for slave zones."
msgstr "Generierung der BIND9-Konfigurationsdatei für Slave-Zonen."
-#: lib/pp_admintools/app/dns_deploy_zones.py:262 lib/pp_admintools/app/set_ldap_password.py:200
+#: lib/pp_admintools/app/dns_deploy_zones.py:262 lib/pp_admintools/app/mk_ldap_passwd.py:95
+#: lib/pp_admintools/app/set_ldap_password.py:124
msgid "Options for {}"
msgstr "Optionen für {}"
msgstr "Führe aus: {}"
#: lib/pp_admintools/app/dns_deploy_zones.py:453 lib/pp_admintools/app/dns_deploy_zones.py:807
-#: lib/pp_admintools/app/ldap.py:805 lib/pp_admintools/app/ldap.py:935
-#: lib/pp_admintools/app/ldap.py:988 lib/pp_admintools/app/ldap.py:1041
-#: lib/pp_admintools/app/ldap.py:1329 lib/pp_admintools/app/ldap.py:1363
-#: lib/pp_admintools/app/ldap.py:1397 lib/pp_admintools/app/ldap.py:1431
+#: lib/pp_admintools/app/ldap.py:806 lib/pp_admintools/app/ldap.py:936
+#: lib/pp_admintools/app/ldap.py:989 lib/pp_admintools/app/ldap.py:1042
+#: lib/pp_admintools/app/ldap.py:1330 lib/pp_admintools/app/ldap.py:1364
+#: lib/pp_admintools/app/ldap.py:1398 lib/pp_admintools/app/ldap.py:1432
msgid "Result:"
msgstr "Ergebnis:"
msgstr "Der Pfad {!r} muss ein absoluter Pfad sein."
#: lib/pp_admintools/app/ldap.py:123 lib/pp_admintools/app/ldap.py:284
-#: lib/pp_admintools/app/ldap.py:1445
+#: lib/pp_admintools/app/ldap.py:1446
msgid "The file {!r} does not exists."
msgstr "Die Datei {!r} existiert nicht."
#: lib/pp_admintools/app/ldap.py:127 lib/pp_admintools/app/ldap.py:288
-#: lib/pp_admintools/app/ldap.py:1450
+#: lib/pp_admintools/app/ldap.py:1451
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:131 lib/pp_admintools/app/ldap.py:292
-#: lib/pp_admintools/app/ldap.py:1455
+#: lib/pp_admintools/app/ldap.py:1456
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:336 lib/pp_admintools/app/mirror_ldap.py:244
-#: lib/pp_admintools/app/remove_ldap_user.py:280 lib/pp_admintools/app/set_ldap_password.py:585
+#: lib/pp_admintools/app/remove_ldap_user.py:280 lib/pp_admintools/app/set_ldap_password.py:492
msgid "No"
msgstr "Nein"
msgid "The Bind DN to use to connect to the LDAP server. Default: {!r}"
msgstr "Die Bind-DN, die zur Verbindung mit dem LDAP-Server verwendet werden soll. Vorgabe: {!r}"
-#: lib/pp_admintools/app/ldap.py:380 lib/pp_admintools/app/set_ldap_password.py:206
-#: lib/pp_admintools/app/set_ldap_password.py:207 lib/pp_admintools/app/set_ldap_password.py:224
-#: lib/pp_admintools/app/set_ldap_password.py:227
+#: lib/pp_admintools/app/ldap.py:380 lib/pp_admintools/app/mk_ldap_passwd.py:140
+#: lib/pp_admintools/app/set_ldap_password.py:130 lib/pp_admintools/app/set_ldap_password.py:131
+#: lib/pp_admintools/app/set_ldap_password.py:148 lib/pp_admintools/app/set_ldap_password.py:151
msgid "PASSWORD"
msgstr "PASSWORT"
"Nachfrage nach dem Passwort für eine einfache LDAP-Authentifizierung. Dies wird anstelle der "
"Angabe des Passwortes an der Kommandozeile verwendet."
-#: lib/pp_admintools/app/ldap.py:392 lib/pp_admintools/app/set_ldap_password.py:218
-#: lib/pp_admintools/app/set_ldap_password.py:220
+#: lib/pp_admintools/app/ldap.py:392 lib/pp_admintools/app/set_ldap_password.py:142
+#: lib/pp_admintools/app/set_ldap_password.py:144
msgid "PASSWORD_FILE"
msgstr "PASSWORT_DATEI"
msgid "Finishing ..."
msgstr "Beende …"
-#: lib/pp_admintools/app/ldap.py:749
+#: lib/pp_admintools/app/ldap.py:750
msgid "Disconnecting from all remaining LDAP instances ..."
msgstr "Trenne Verbindung zu allen verbleibenden LDAP-Instanzen …"
-#: lib/pp_admintools/app/ldap.py:762
+#: lib/pp_admintools/app/ldap.py:763
msgid "Unbinding from LDAP server {!r} ..."
msgstr "Trenne Bindung zu LDAP-Server {!r} …"
-#: lib/pp_admintools/app/ldap.py:769
+#: lib/pp_admintools/app/ldap.py:770
msgid "Disconnecting from LDAP server {!r} ..."
msgstr "Trenne Verbindung zu LDAP-Server {!r} …"
-#: lib/pp_admintools/app/ldap.py:791 lib/pp_admintools/app/ldap.py:830
+#: lib/pp_admintools/app/ldap.py:792 lib/pp_admintools/app/ldap.py:831
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:795 lib/pp_admintools/app/ldap.py:834
-#: lib/pp_admintools/app/ldap.py:932 lib/pp_admintools/app/ldap.py:985
-#: lib/pp_admintools/app/ldap.py:1038 lib/pp_admintools/app/ldap.py:1126
-#: lib/pp_admintools/app/ldap.py:1326 lib/pp_admintools/app/ldap.py:1360
-#: lib/pp_admintools/app/ldap.py:1394 lib/pp_admintools/app/ldap.py:1428
+#: lib/pp_admintools/app/ldap.py:796 lib/pp_admintools/app/ldap.py:835
+#: lib/pp_admintools/app/ldap.py:933 lib/pp_admintools/app/ldap.py:986
+#: lib/pp_admintools/app/ldap.py:1039 lib/pp_admintools/app/ldap.py:1127
+#: lib/pp_admintools/app/ldap.py:1327 lib/pp_admintools/app/ldap.py:1361
+#: lib/pp_admintools/app/ldap.py:1395 lib/pp_admintools/app/ldap.py:1429
msgid "Got a response entry:"
msgstr "Erhaltener Antwort-Eintrag:"
-#: lib/pp_admintools/app/ldap.py:820
+#: lib/pp_admintools/app/ldap.py:821
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:856
+#: lib/pp_admintools/app/ldap.py:857
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:861
+#: lib/pp_admintools/app/ldap.py:862
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:868
+#: lib/pp_admintools/app/ldap.py:869
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:875
+#: lib/pp_admintools/app/ldap.py:876
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:884 lib/pp_admintools/app/remove_ldap_user.py:290
+#: lib/pp_admintools/app/ldap.py:885 lib/pp_admintools/app/remove_ldap_user.py:290
msgid "Empty user given."
msgstr "Leere Nutzername übergeben."
-#: lib/pp_admintools/app/ldap.py:887
+#: lib/pp_admintools/app/ldap.py:888
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:917 lib/pp_admintools/app/ldap.py:970
-#: lib/pp_admintools/app/ldap.py:1023 lib/pp_admintools/app/ldap.py:1314
-#: lib/pp_admintools/app/ldap.py:1348 lib/pp_admintools/app/ldap.py:1382
-#: lib/pp_admintools/app/ldap.py:1416
+#: lib/pp_admintools/app/ldap.py:918 lib/pp_admintools/app/ldap.py:971
+#: lib/pp_admintools/app/ldap.py:1024 lib/pp_admintools/app/ldap.py:1315
+#: lib/pp_admintools/app/ldap.py:1349 lib/pp_admintools/app/ldap.py:1383
+#: lib/pp_admintools/app/ldap.py:1417
msgid "Searching in {uri}/{bdn} with filter: {fltr}"
msgstr "Suche in {uri}/{bdn} mit dem Filter: {fltr}"
-#: lib/pp_admintools/app/ldap.py:928
+#: lib/pp_admintools/app/ldap.py:929
msgid "Result of searching for mail address {m!r}:"
msgstr "Ergebnis der Suche nach der Mailadresse {m!r}:"
-#: lib/pp_admintools/app/ldap.py:939
+#: lib/pp_admintools/app/ldap.py:940
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:981
+#: lib/pp_admintools/app/ldap.py:982
msgid "Result of searching for uid {u!r}:"
msgstr "Ergebnis der Suche nach UID {u!r}:"
-#: lib/pp_admintools/app/ldap.py:992
+#: lib/pp_admintools/app/ldap.py:993
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:1034
+#: lib/pp_admintools/app/ldap.py:1035
msgid "Result of searching for CN {cn!r}:"
msgstr "Ergebnis der Suche nach CN {cn!r}:"
-#: lib/pp_admintools/app/ldap.py:1045
+#: lib/pp_admintools/app/ldap.py:1046
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:1062 lib/pp_admintools/app/set_ldap_password.py:510
+#: lib/pp_admintools/app/ldap.py:1063 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:1080
+#: lib/pp_admintools/app/ldap.py:1081
msgid "ObjectClasses of {dn!r}:"
msgstr "ObjectClasses von {dn!r}:"
-#: lib/pp_admintools/app/ldap.py:1090
+#: lib/pp_admintools/app/ldap.py:1091
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:1112
+#: lib/pp_admintools/app/ldap.py:1113
msgid "Searching DN {dn!r} in {uri}."
msgstr "Suche DN {dn!r} in {uri}."
-#: lib/pp_admintools/app/ldap.py:1122
+#: lib/pp_admintools/app/ldap.py:1123
msgid "Result of searching for DN {dn!r}:"
msgstr "Ergebnis der Suche nach dem DN {dn!r}:"
-#: lib/pp_admintools/app/ldap.py:1130
+#: lib/pp_admintools/app/ldap.py:1131
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:1175
+#: lib/pp_admintools/app/ldap.py:1176
msgid "Creating entry {dn!r} on {uri}:"
msgstr "Erstelle Eintrag {dn!r} in {uri} …"
-#: lib/pp_admintools/app/ldap.py:1181
+#: lib/pp_admintools/app/ldap.py:1182
msgid "Simulation mode - entry will not be created."
msgstr "Simulationsmodus - der Eintrag wird nicht erstellt."
-#: lib/pp_admintools/app/ldap.py:1188
+#: lib/pp_admintools/app/ldap.py:1189
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:1203
+#: lib/pp_admintools/app/ldap.py:1204
msgid "Creation status: {!r}."
msgstr "Erstellungsstatus: {!r}"
-#: lib/pp_admintools/app/ldap.py:1205
+#: lib/pp_admintools/app/ldap.py:1206
msgid "Result of creating:"
msgstr "Ergebnis der Erstellung:"
-#: lib/pp_admintools/app/ldap.py:1208
+#: lib/pp_admintools/app/ldap.py:1209
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:1214
+#: lib/pp_admintools/app/ldap.py:1215
msgid "Creation successful."
msgstr "Die Erstellung war erfolgreich."
-#: lib/pp_admintools/app/ldap.py:1225
+#: lib/pp_admintools/app/ldap.py:1226
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:1230
+#: lib/pp_admintools/app/ldap.py:1231
msgid "Simulation mode - changes are not applied."
msgstr "Simulationsmodus - hier wird jetzt nichts geändert."
-#: lib/pp_admintools/app/ldap.py:1236
+#: lib/pp_admintools/app/ldap.py:1237
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:1238 lib/pp_admintools/app/ldap.py:1257
+#: lib/pp_admintools/app/ldap.py:1239 lib/pp_admintools/app/ldap.py:1258
#: lib/pp_admintools/app/remove_ldap_user.py:417 lib/pp_admintools/app/remove_ldap_user.py:444
#: lib/pp_admintools/app/remove_ldap_user.py:471 lib/pp_admintools/app/remove_ldap_user.py:502
-#: lib/pp_admintools/app/remove_ldap_user.py:533 lib/pp_admintools/app/set_ldap_password.py:614
+#: lib/pp_admintools/app/remove_ldap_user.py:533 lib/pp_admintools/app/set_ldap_password.py:521
msgid "Changes:"
msgstr "Änderungen:"
-#: lib/pp_admintools/app/ldap.py:1250
+#: lib/pp_admintools/app/ldap.py:1251
msgid "Modification status: {!r}."
msgstr "Änderungsstatus: {!r}."
-#: lib/pp_admintools/app/ldap.py:1252
+#: lib/pp_admintools/app/ldap.py:1253
msgid "Result of modifying:"
msgstr "Ergebnis der Änderung:"
-#: lib/pp_admintools/app/ldap.py:1255
+#: lib/pp_admintools/app/ldap.py:1256
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:1260
+#: lib/pp_admintools/app/ldap.py:1261
msgid "Modification successful."
msgstr "Die Änderung war erfolgreich."
-#: lib/pp_admintools/app/ldap.py:1270
+#: lib/pp_admintools/app/ldap.py:1271
msgid "Deleting LDAP entry {dn!r} on {uri} ..."
msgstr "Lösche LDAP-Eintrag {dn!r} in {uri} …"
-#: lib/pp_admintools/app/ldap.py:1275
+#: lib/pp_admintools/app/ldap.py:1276
msgid "Simulation mode - deletion will not be executed."
msgstr "Simulationsmodus - hier wird jetzt nichts gelöscht."
-#: lib/pp_admintools/app/ldap.py:1281
+#: lib/pp_admintools/app/ldap.py:1282
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:1286
+#: lib/pp_admintools/app/ldap.py:1287
msgid "Deletion status: {!r}."
msgstr "Löschstatus: {!r}"
-#: lib/pp_admintools/app/ldap.py:1288
+#: lib/pp_admintools/app/ldap.py:1289
msgid "Result of deletion:"
msgstr "Ergebnis der Löschung:"
-#: lib/pp_admintools/app/ldap.py:1291
+#: lib/pp_admintools/app/ldap.py:1292
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:1295
+#: lib/pp_admintools/app/ldap.py:1296
msgid "Deletion successful."
msgstr "Die Löschung war erfolgreich."
-#: lib/pp_admintools/app/ldap.py:1442
+#: lib/pp_admintools/app/ldap.py:1443
msgid "Reading password file {!r} ..."
msgstr "Lese Passwortdatei {!r} …"
-#: lib/pp_admintools/app/ldap.py:1473
+#: lib/pp_admintools/app/ldap.py:1474
msgid "Could not detect RDN from DN {!r}."
msgstr "Konnte RDN nich aus {!r} ermitteln."
-#: lib/pp_admintools/app/ldap.py:1477
+#: lib/pp_admintools/app/ldap.py:1478
msgid "Found RDN attribute {!r}."
msgstr "Fand RDN-Attribut {!r}."
-#: lib/pp_admintools/app/ldap.py:1483
+#: lib/pp_admintools/app/ldap.py:1484
msgid "RDN attribute {!r} will not be touched."
msgstr "Das RDN-Attribut {!r} wird nicht angefasst."
-#: lib/pp_admintools/app/ldap.py:1489 lib/pp_admintools/app/ldap.py:1508
-#: lib/pp_admintools/app/ldap.py:1573
+#: lib/pp_admintools/app/ldap.py:1490 lib/pp_admintools/app/ldap.py:1509
+#: lib/pp_admintools/app/ldap.py:1574
msgid "Attribute {!r} will not be touched."
msgstr "Das Attribut {!r} wird nicht angefasst."
-#: lib/pp_admintools/app/ldap.py:1542
+#: lib/pp_admintools/app/ldap.py:1543
msgid "Values to add to attribute {!r}:"
msgstr "Werte, die zu Attribut {!r} hinzugefügt werden:"
-#: lib/pp_admintools/app/ldap.py:1546
+#: lib/pp_admintools/app/ldap.py:1547
msgid "Values to removed from attribute {!r}:"
msgstr "Werte, die von Attribut {!r} gelöscht werden."
"angegeben, und wenn sie auf Null gesetzt werden, erfolgt kein Warten nach dem Schreiben. "
"(Vorgabe: {:.1f})"
-#: lib/pp_admintools/app/mirror_ldap.py:132
+#: lib/pp_admintools/app/mirror_ldap.py:132 lib/pp_admintools/app/mk_ldap_passwd.py:130
msgid "NUMBER"
msgstr "ANZAHL"
"[{yes}/{no}]?"
#: lib/pp_admintools/app/mirror_ldap.py:244 lib/pp_admintools/app/remove_ldap_user.py:280
-#: lib/pp_admintools/app/set_ldap_password.py:585
+#: lib/pp_admintools/app/set_ldap_password.py:492
msgid "yes"
msgstr "ja"
msgid "Mirrored no group entries to target LDAP instance."
msgstr "Es wurden keine Gruppeneinträge in die Ziel-LDAP-Instanz gespiegelt."
+#: lib/pp_admintools/app/mk_ldap_passwd.py:66
+msgid "Encrypting the password with a defined password schema."
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:108
+#, fuzzy
+msgid "The schema (hashing method) to use to hash the new password. Default: {default!r}."
+msgstr ""
+"Das Schema (die Hashing-Methode), das zum Hashen des neuen Passwortes verwendet wird. Es ist "
+"möglich, hier den Wert {val_list!r} anzugeben, dann werden alle verfügbaren Schemen aufgelistet."
+" Vorgabe: {default!r}."
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:113
+msgid "TYPE"
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:119
+msgid "Like {}"
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:124 lib/pp_admintools/app/set_ldap_password.py:207
+msgid ""
+"A possible salt to use on hashing the password. Caution: not all hashing schemes are supporting "
+"a salt."
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:131 lib/pp_admintools/app/set_ldap_password.py:214
+msgid ""
+"The number of calculation rounds to use on hashing the password. Caution: not all hashing "
+"schemes are supporting calculation rounds."
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:136
+msgid ""
+"The password to hash. If not given and no file desriptor was given, then the password will be "
+"requested on TTY."
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:187
+#, fuzzy
+msgid "Got no password by {}."
+msgstr "Passwort für {!r} wird nicht gesetzt."
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:190
+#, fuzzy
+msgid "Password:"
+msgstr "Passwort-Wiederholung:"
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:191 lib/pp_admintools/app/set_ldap_password.py:307
+#: lib/pp_admintools/app/set_ldap_password.py:327
+msgid "Repeat password:"
+msgstr "Passwort-Wiederholung:"
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:205
+#, fuzzy
+msgid "Encrypting password with hashing schema '{schema}' ..."
+msgstr "Setze das Passwort von '{dn}' mit dem Hashing-Schema '{schema}'."
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:212 lib/pp_admintools/app/set_ldap_password.py:481
+msgid "Used schema: {!r}."
+msgstr "Verwendetes Schama : {!r}."
+
#: lib/pp_admintools/app/pdns.py:99 lib/pp_admintools/app/pdns.py:183
msgid "Configuration not available."
msgstr "Die Konfiguration ist nicht verfügbar."
msgid "Removing the user from LDAP."
msgstr "Löschen der übergebenen Nutzer im LDAP."
-#: lib/pp_admintools/app/remove_ldap_user.py:136 lib/pp_admintools/app/set_ldap_password.py:275
-#: lib/pp_admintools/app/set_ldap_password.py:278
+#: lib/pp_admintools/app/remove_ldap_user.py:136 lib/pp_admintools/app/set_ldap_password.py:200
+#: lib/pp_admintools/app/set_ldap_password.py:203
msgid "USER"
msgstr "NUTZER"
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:300 lib/pp_admintools/app/set_ldap_password.py:533
+#: lib/pp_admintools/app/remove_ldap_user.py:300 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:307 lib/pp_admintools/app/set_ldap_password.py:538
+#: lib/pp_admintools/app/remove_ldap_user.py:307 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:319 lib/pp_admintools/app/set_ldap_password.py:552
+#: lib/pp_admintools/app/remove_ldap_user.py:319 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."
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:415 lib/pp_admintools/app/set_ldap_password.py:612
+#: lib/pp_admintools/app/remove_ldap_user.py:415 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}"
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/set_ldap_password.py:106
-msgid "The ancient and notorious 3 DES crypt method."
-msgstr "Die antike und berüchtigte 3 DES Verschlüsselungsmethode."
-
-#: lib/pp_admintools/app/set_ldap_password.py:107 lib/pp_admintools/app/set_ldap_password.py:110
-msgid "Pure {} hashing method."
-msgstr "Reine {}-hashing Methode."
-
-#: lib/pp_admintools/app/set_ldap_password.py:108 lib/pp_admintools/app/set_ldap_password.py:111
-#: lib/pp_admintools/app/set_ldap_password.py:113 lib/pp_admintools/app/set_ldap_password.py:115
-msgid "A {} based hashing algorithm."
-msgstr "Ein {}-basierter Hashing-Algorithmus"
-
-#: lib/pp_admintools/app/set_ldap_password.py:109 lib/pp_admintools/app/set_ldap_password.py:112
-#: lib/pp_admintools/app/set_ldap_password.py:114 lib/pp_admintools/app/set_ldap_password.py:116
-msgid "Salted {} hashing method."
-msgstr "Gesalzene {}-hashing Methode."
-
-#: lib/pp_admintools/app/set_ldap_password.py:117
-msgid "A hashing method derived from {} with additional computing rounds."
-msgstr "Eine von {} abgeleitete Hashing-Methode mit zusätzlichen Berechnungsrunden."
-
-#: lib/pp_admintools/app/set_ldap_password.py:163
+#: 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 "
"of the user logged in on the controlling terminal."
"Ändern des Passwortes des angegebenen Nutzers. Wenn kein Nutzer angegeben wird, versucht {app} "
"den Namen des am Terminal angemeldeten Nutzers zu verwenden."
-#: lib/pp_admintools/app/set_ldap_password.py:207
+#: lib/pp_admintools/app/set_ldap_password.py:131
msgid "Use {} as the current user password."
msgstr "Verwende {} als das aktuelle Nutzerpasswort."
-#: lib/pp_admintools/app/set_ldap_password.py:212
+#: lib/pp_admintools/app/set_ldap_password.py:136
msgid ""
"Prompt for current user password. This is used instead of specifying the password on the command"
" line."
"Nachfrage nach dem aktuellen Passwort des Nutzers. Das wird anstelle der Angabe des Passortes in"
" der Kommandozeile verwendet."
-#: lib/pp_admintools/app/set_ldap_password.py:220
+#: lib/pp_admintools/app/set_ldap_password.py:144
msgid "Use contents of {} as the current user password."
msgstr "Verwende den Inhalt von {} als das aktuelle Nutzerpasswort."
-#: lib/pp_admintools/app/set_ldap_password.py:225
+#: lib/pp_admintools/app/set_ldap_password.py:149
msgid "Use {} as the new user password. If not given, it will be asked for it."
msgstr "Verwende {} als das neue Nutzerpasswort. Wenn nicht angegeben, wird danach gefragt."
-#: lib/pp_admintools/app/set_ldap_password.py:233
+#: lib/pp_admintools/app/set_ldap_password.py:157
msgid "Do not check the quality of the new password with the {} library."
msgstr "Keine Überprüfung der Qualität des neuen Passwortes mit der {}-Bibliothek."
-#: lib/pp_admintools/app/set_ldap_password.py:247
+#: lib/pp_admintools/app/set_ldap_password.py:172
msgid ""
"The schema (hashing method) to use to hash the new password. It is possible to give here the "
"value {val_list!r}, then all possible schemes are shown and exit. Default: {default!r}."
"möglich, hier den Wert {val_list!r} anzugeben, dann werden alle verfügbaren Schemen aufgelistet."
" Vorgabe: {default!r}."
-#: lib/pp_admintools/app/set_ldap_password.py:252
+#: lib/pp_admintools/app/set_ldap_password.py:177
msgid "If you are not using an admin account, then the password will hashed only by the default schema."
msgstr ""
"Wenn kein Admin-Account verwendet wird, dann wird das Passwort ausschließlich mit dem Vorgabe-"
"Schema gehasht."
-#: lib/pp_admintools/app/set_ldap_password.py:257
+#: lib/pp_admintools/app/set_ldap_password.py:182
msgid "SCHEMA"
msgstr "SCHEMA"
-#: lib/pp_admintools/app/set_ldap_password.py:261
+#: lib/pp_admintools/app/set_ldap_password.py:186
msgid ""
"The user, which password in the given LDAP instance should be changed. It may be given by its "
"Uid (the alphanumeric POSIX name), its mail address or its LDAP DN."
"seine Uid (der alphanumerische POSIX-Nutzername), als seine Mailadresse oder als seine LDAP-DN "
"angegeben werden."
-#: lib/pp_admintools/app/set_ldap_password.py:266
+#: lib/pp_admintools/app/set_ldap_password.py:191
msgid "If not given, then your current user name {!r} will be used."
msgstr "Wenn nicht angegeben, dann wird der aktuelle Nutzername {!r} verwendet."
-#: lib/pp_admintools/app/set_ldap_password.py:269
+#: lib/pp_admintools/app/set_ldap_password.py:194
msgid ""
"If you are using a readonly LDAP instance or an instance w/o admin access, then you must provide"
" somehow the current password of the user to change."
"Wenn eine LDAP-Instanz verwendet wird, die nur Leserechte oder keinen Admin-Zugriff hat, dann "
"muss irgendwie das neue Passwort des Nutzer zum Ändern angegeben werden."
-#: lib/pp_admintools/app/set_ldap_password.py:322
+#: lib/pp_admintools/app/set_ldap_password.py:263
msgid "Could not detect your current login name."
msgstr "Konnte den aktuellen Anmeldenamen nicht ermitteln."
-#: lib/pp_admintools/app/set_ldap_password.py:327
+#: lib/pp_admintools/app/set_ldap_password.py:268
msgid "The user {!r} will never be managed by LDAP."
msgstr "Der Nutzer {!r} wird niemals nimmer nicht von LDAP gemanagt."
-#: lib/pp_admintools/app/set_ldap_password.py:363
-msgid "Usable Hashing schemes:"
-msgstr "Verfügbare Hashing-Schemen:"
-
-#: lib/pp_admintools/app/set_ldap_password.py:372
-msgid "This schema cannot be used for authentication on a current freeradius server."
-msgstr ""
-"Dieses Schema kann nicht zur Authentifizierung an einem aktuellen Freeradius-Server verwendet "
-"werden."
-
-#: lib/pp_admintools/app/set_ldap_password.py:376
-msgid "This is the default schema."
-msgstr "Das ist das Vorgabe-Schema."
-
-#: lib/pp_admintools/app/set_ldap_password.py:391
+#: lib/pp_admintools/app/set_ldap_password.py:302
msgid "Using LDAP instance {inst!r} - {url}."
msgstr "Verwende LDAP-Instanz {inst!r} - {url}."
-#: lib/pp_admintools/app/set_ldap_password.py:395
+#: lib/pp_admintools/app/set_ldap_password.py:306
msgid "Current password of user {!r}:"
msgstr "Aktuelles Passwort des Nutzers {!r}:"
-#: lib/pp_admintools/app/set_ldap_password.py:396 lib/pp_admintools/app/set_ldap_password.py:416
-msgid "Repeat password:"
-msgstr "Passwort-Wiederholung:"
-
-#: lib/pp_admintools/app/set_ldap_password.py:409
+#: lib/pp_admintools/app/set_ldap_password.py:320
msgid "Non admin users must use the default schema {!r} for hashing their password."
msgstr "Nicht-Admin-Nutzer müssen das Vorgabeschema {!r} für das Hashen des Passwortes verwenden."
-#: lib/pp_admintools/app/set_ldap_password.py:415
+#: lib/pp_admintools/app/set_ldap_password.py:326
msgid "New password of user {!r}:"
msgstr "Neues Passwort für Nutzer {!r}:"
-#: lib/pp_admintools/app/set_ldap_password.py:422
+#: lib/pp_admintools/app/set_ldap_password.py:332
msgid "Checking the quality of the new password was disabled."
msgstr "Die Überprüfung der Qualität des neuen Passwortes wurde deaktiviert."
-#: lib/pp_admintools/app/set_ldap_password.py:425
-msgid "Testing quality of new password ..."
-msgstr "Teste Qualität des neuen Passwortes …"
-
-#: lib/pp_admintools/app/set_ldap_password.py:429
-msgid "Quality of the new password is not sufficient:"
-msgstr "Die Qualität des neuen Passwortes ist nicht ausreichend:"
-
-#: lib/pp_admintools/app/set_ldap_password.py:434
-msgid "Cannot testing the quality of the new password, because the Python module {!r} is not installed."
-msgstr ""
-"Kann die Qualität des neuen Passwortes nicht überprüfen, da das Pythod-Modul {!r} nicht "
-"installiert ist."
-
-#: lib/pp_admintools/app/set_ldap_password.py:461
+#: lib/pp_admintools/app/set_ldap_password.py:362
msgid "Unbinding user connection from LDAP server {} ..."
msgstr "Trenne Verbindung des Nutzers zu LDAP-Server {} …"
-#: lib/pp_admintools/app/set_ldap_password.py:472
+#: lib/pp_admintools/app/set_ldap_password.py:373
msgid "Testing connect to LDAP-Server {url} with current user {dn!r} and password ..."
msgstr "Teste eine Anmeldung am LDAP-Server {url} als aktueller Nutzer {dn!r} mit Passwort …"
-#: lib/pp_admintools/app/set_ldap_password.py:484
+#: lib/pp_admintools/app/set_ldap_password.py:385
msgid "Successful connected as {dn!r} to {url}."
msgstr "Erfolgreich als {dn!r} an {url} angemeldet."
-#: lib/pp_admintools/app/set_ldap_password.py:490
+#: lib/pp_admintools/app/set_ldap_password.py:391
msgid "Could not connect to {url} as {dn!r}: {e}"
msgstr "Nutzer {dn!r} konnte nicht an {url} angemeldet werden: {e}"
-#: lib/pp_admintools/app/set_ldap_password.py:501
+#: lib/pp_admintools/app/set_ldap_password.py:402
msgid "Trying to get current password hash of user {!r} ..."
msgstr "Versuche den aktuellen Passwort-Hash des Nutzers {!r} zu holen …"
-#: lib/pp_admintools/app/set_ldap_password.py:540
+#: lib/pp_admintools/app/set_ldap_password.py:441
msgid ""
"Please use another username, or use the correct DN from the following list as a parameter for "
"this script instead of the username:"
"Bitte einen anderen Nutzernamen oder den richtigen DN aus der folgenden Liste als Parameter für "
"dieses Skript als Nutzername angeben:"
-#: lib/pp_admintools/app/set_ldap_password.py:557
+#: lib/pp_admintools/app/set_ldap_password.py:458
msgid "Changing the password of user {dn!r} in LDAP instance {inst}."
msgstr "Ändern des Passwortes des Nutzers {dn!r} in der LDAP-Instanz {inst}."
-#: lib/pp_admintools/app/set_ldap_password.py:564
-msgid "Setting password of {dn!r} with hashing schema {schema!r}."
-msgstr "Setze das Passwort von {dn!r} mit dem Hashing-Schema {schema!r}."
-
-#: lib/pp_admintools/app/set_ldap_password.py:566
+#: lib/pp_admintools/app/set_ldap_password.py:465
msgid "Setting password of '{dn}' with hashing schema '{schema}' ..."
msgstr "Setze das Passwort von '{dn}' mit dem Hashing-Schema '{schema}'."
-#: lib/pp_admintools/app/set_ldap_password.py:571
+#: lib/pp_admintools/app/set_ldap_password.py:471
msgid "Current password hash: '{}'."
msgstr "Aktueller Passwort-Hash: '{}'"
-#: lib/pp_admintools/app/set_ldap_password.py:574
+#: lib/pp_admintools/app/set_ldap_password.py:474
msgid "The user '{}' has currently no password."
msgstr "Der Nutzer '{}' hat aktuell kein Passwort."
-#: lib/pp_admintools/app/set_ldap_password.py:578
-msgid "Used schema: {!r}."
-msgstr "Verwendetes Schama : {!r}."
-
-#: lib/pp_admintools/app/set_ldap_password.py:580
+#: lib/pp_admintools/app/set_ldap_password.py:487
msgid "New password hash: '{}'."
msgstr "Neuer Passwort-Hash: '{}'."
-#: lib/pp_admintools/app/set_ldap_password.py:584
+#: lib/pp_admintools/app/set_ldap_password.py:491
msgid "Apply new password? [{yes}/{no}]?"
msgstr "Neues Passwort setzen [{yes}/{no}]?"
-#: lib/pp_admintools/app/set_ldap_password.py:590
+#: lib/pp_admintools/app/set_ldap_password.py:497
msgid "Do not setting password for {!r}."
msgstr "Passwort für {!r} wird nicht gesetzt."
-#: lib/pp_admintools/app/set_ldap_password.py:606
+#: lib/pp_admintools/app/set_ldap_password.py:513
msgid "Setting password ..."
msgstr "Setze Passwort …"
msgid "Found API key of PDNS instance {inst!r}: {key!r}."
msgstr "Fand API-Schlüssel für PowerDNS-Instanz {inst!r}: {key!r}."
+#: lib/pp_admintools/handler/ldap_password.py:56
+#, fuzzy
+msgid "Encryption schema {!r} inot found."
+msgstr "Der Ziel-Eintrag {!r} wurde nicht gefunden."
+
+#: lib/pp_admintools/handler/ldap_password.py:108
+msgid "The ancient and notorious 3 DES crypt method."
+msgstr "Die antike und berüchtigte 3 DES Verschlüsselungsmethode."
+
+#: lib/pp_admintools/handler/ldap_password.py:109 lib/pp_admintools/handler/ldap_password.py:112
+msgid "Pure {} hashing method."
+msgstr "Reine {}-hashing Methode."
+
+#: lib/pp_admintools/handler/ldap_password.py:110 lib/pp_admintools/handler/ldap_password.py:113
+#: lib/pp_admintools/handler/ldap_password.py:115 lib/pp_admintools/handler/ldap_password.py:117
+msgid "A {} based hashing algorithm."
+msgstr "Ein {}-basierter Hashing-Algorithmus"
+
+#: lib/pp_admintools/handler/ldap_password.py:111 lib/pp_admintools/handler/ldap_password.py:114
+#: lib/pp_admintools/handler/ldap_password.py:116 lib/pp_admintools/handler/ldap_password.py:118
+msgid "Salted {} hashing method."
+msgstr "Gesalzene {}-hashing Methode."
+
+#: lib/pp_admintools/handler/ldap_password.py:119
+msgid "A hashing method derived from {} with additional computing rounds."
+msgstr "Eine von {} abgeleitete Hashing-Methode mit zusätzlichen Berechnungsrunden."
+
+#: lib/pp_admintools/handler/ldap_password.py:240
+#, fuzzy
+msgid "Invalid schema {!r} given for update."
+msgstr "Ungültige Instanz {!r} angegeben."
+
+#: lib/pp_admintools/handler/ldap_password.py:277
+msgid "Usable Hashing schemes:"
+msgstr "Verfügbare Hashing-Schemen:"
+
+#: lib/pp_admintools/handler/ldap_password.py:286
+msgid "This schema cannot be used for authentication on a current freeradius server."
+msgstr ""
+"Dieses Schema kann nicht zur Authentifizierung an einem aktuellen Freeradius-Server verwendet "
+"werden."
+
+#: lib/pp_admintools/handler/ldap_password.py:290
+msgid "This is the default schema."
+msgstr "Das ist das Vorgabe-Schema."
+
+#: lib/pp_admintools/handler/ldap_password.py:334
+msgid "The password schema {!r} does not support a password salt."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:338
+msgid "The password salt must be at least by {} characters."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:342
+msgid "The password salt may have a length of maximum {} characters."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:352
+#, fuzzy
+msgid "Found invalid character {!r} in password salt."
+msgstr "Ungültige {what} {addr!r} in der Konfiguration gefunden."
+
+#: lib/pp_admintools/handler/ldap_password.py:365
+msgid "The password schema {!r} does not support calculation rounds."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:371
+msgid "Wrong value {v!r} for calculation rounds: {e}"
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:375
+msgid "The value for the calculation rounds has to be at least {}."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:380
+msgid "The value for the calculation rounds has to at most {}."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:413
+msgid "Cannot testing the quality of the new password, because the Python module {!r} is not installed."
+msgstr ""
+"Kann die Qualität des neuen Passwortes nicht überprüfen, da das Pythod-Modul {!r} nicht "
+"installiert ist."
+
+#: lib/pp_admintools/handler/ldap_password.py:419
+msgid "Testing quality of new password ..."
+msgstr "Teste Qualität des neuen Passwortes …"
+
+#: lib/pp_admintools/handler/ldap_password.py:423
+msgid "Quality of the new password is not sufficient:"
+msgstr "Die Qualität des neuen Passwortes ist nicht ausreichend:"
+
#: lib/pp_admintools/xlate.py:97
msgid "Module directory: {!r}"
msgstr "Modul-Verzeichnis: {!r}"
msgstr ""
"Project-Id-Version: pp_admintools 0.9.1\n"
"Report-Msgid-Bugs-To: frank.brehm@pixelpark.com\n"
-"POT-Creation-Date: 2022-11-03 16:37+0100\n"
+"POT-Creation-Date: 2022-11-11 16:38+0100\n"
"PO-Revision-Date: 2022-11-03 16:45+0200\n"
"Last-Translator: Frank Brehm <frank.brehm@pixelpark.com>\n"
"Language: en_US\n"
msgid "Generation of the BIND9 configuration file for slave zones."
msgstr ""
-#: lib/pp_admintools/app/dns_deploy_zones.py:262 lib/pp_admintools/app/set_ldap_password.py:200
+#: lib/pp_admintools/app/dns_deploy_zones.py:262 lib/pp_admintools/app/mk_ldap_passwd.py:95
+#: lib/pp_admintools/app/set_ldap_password.py:124
msgid "Options for {}"
msgstr ""
msgstr ""
#: lib/pp_admintools/app/dns_deploy_zones.py:453 lib/pp_admintools/app/dns_deploy_zones.py:807
-#: lib/pp_admintools/app/ldap.py:805 lib/pp_admintools/app/ldap.py:935
-#: lib/pp_admintools/app/ldap.py:988 lib/pp_admintools/app/ldap.py:1041
-#: lib/pp_admintools/app/ldap.py:1329 lib/pp_admintools/app/ldap.py:1363
-#: lib/pp_admintools/app/ldap.py:1397 lib/pp_admintools/app/ldap.py:1431
+#: lib/pp_admintools/app/ldap.py:806 lib/pp_admintools/app/ldap.py:936
+#: lib/pp_admintools/app/ldap.py:989 lib/pp_admintools/app/ldap.py:1042
+#: lib/pp_admintools/app/ldap.py:1330 lib/pp_admintools/app/ldap.py:1364
+#: lib/pp_admintools/app/ldap.py:1398 lib/pp_admintools/app/ldap.py:1432
msgid "Result:"
msgstr ""
msgstr ""
#: lib/pp_admintools/app/ldap.py:123 lib/pp_admintools/app/ldap.py:284
-#: lib/pp_admintools/app/ldap.py:1445
+#: lib/pp_admintools/app/ldap.py:1446
msgid "The file {!r} does not exists."
msgstr ""
#: lib/pp_admintools/app/ldap.py:127 lib/pp_admintools/app/ldap.py:288
-#: lib/pp_admintools/app/ldap.py:1450
+#: lib/pp_admintools/app/ldap.py:1451
msgid "The given path {!r} exists, but is not a regular file."
msgstr ""
#: lib/pp_admintools/app/ldap.py:131 lib/pp_admintools/app/ldap.py:292
-#: lib/pp_admintools/app/ldap.py:1455
+#: lib/pp_admintools/app/ldap.py:1456
msgid "The given file {!r} is not readable."
msgstr ""
msgstr ""
#: lib/pp_admintools/app/ldap.py:336 lib/pp_admintools/app/mirror_ldap.py:244
-#: lib/pp_admintools/app/remove_ldap_user.py:280 lib/pp_admintools/app/set_ldap_password.py:585
+#: lib/pp_admintools/app/remove_ldap_user.py:280 lib/pp_admintools/app/set_ldap_password.py:492
msgid "No"
msgstr ""
msgid "The Bind DN to use to connect to the LDAP server. Default: {!r}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:380 lib/pp_admintools/app/set_ldap_password.py:206
-#: lib/pp_admintools/app/set_ldap_password.py:207 lib/pp_admintools/app/set_ldap_password.py:224
-#: lib/pp_admintools/app/set_ldap_password.py:227
+#: lib/pp_admintools/app/ldap.py:380 lib/pp_admintools/app/mk_ldap_passwd.py:140
+#: lib/pp_admintools/app/set_ldap_password.py:130 lib/pp_admintools/app/set_ldap_password.py:131
+#: lib/pp_admintools/app/set_ldap_password.py:148 lib/pp_admintools/app/set_ldap_password.py:151
msgid "PASSWORD"
msgstr ""
"command line."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:392 lib/pp_admintools/app/set_ldap_password.py:218
-#: lib/pp_admintools/app/set_ldap_password.py:220
+#: lib/pp_admintools/app/ldap.py:392 lib/pp_admintools/app/set_ldap_password.py:142
+#: lib/pp_admintools/app/set_ldap_password.py:144
msgid "PASSWORD_FILE"
msgstr ""
msgid "Finishing ..."
msgstr "Finishing …"
-#: lib/pp_admintools/app/ldap.py:749
+#: lib/pp_admintools/app/ldap.py:750
msgid "Disconnecting from all remaining LDAP instances ..."
msgstr "Disconnecting from all remaining LDAP instances …"
-#: lib/pp_admintools/app/ldap.py:762
+#: lib/pp_admintools/app/ldap.py:763
msgid "Unbinding from LDAP server {!r} ..."
msgstr "Unbinding from LDAP server {!r} …"
-#: lib/pp_admintools/app/ldap.py:769
+#: lib/pp_admintools/app/ldap.py:770
msgid "Disconnecting from LDAP server {!r} ..."
msgstr "Disconnecting from LDAP server {!r} …"
-#: lib/pp_admintools/app/ldap.py:791 lib/pp_admintools/app/ldap.py:830
+#: lib/pp_admintools/app/ldap.py:792 lib/pp_admintools/app/ldap.py:831
msgid "Result of searching for DNs of all entries:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:795 lib/pp_admintools/app/ldap.py:834
-#: lib/pp_admintools/app/ldap.py:932 lib/pp_admintools/app/ldap.py:985
-#: lib/pp_admintools/app/ldap.py:1038 lib/pp_admintools/app/ldap.py:1126
-#: lib/pp_admintools/app/ldap.py:1326 lib/pp_admintools/app/ldap.py:1360
-#: lib/pp_admintools/app/ldap.py:1394 lib/pp_admintools/app/ldap.py:1428
+#: lib/pp_admintools/app/ldap.py:796 lib/pp_admintools/app/ldap.py:835
+#: lib/pp_admintools/app/ldap.py:933 lib/pp_admintools/app/ldap.py:986
+#: lib/pp_admintools/app/ldap.py:1039 lib/pp_admintools/app/ldap.py:1127
+#: lib/pp_admintools/app/ldap.py:1327 lib/pp_admintools/app/ldap.py:1361
+#: lib/pp_admintools/app/ldap.py:1395 lib/pp_admintools/app/ldap.py:1429
msgid "Got a response entry:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:820
+#: lib/pp_admintools/app/ldap.py:821
msgid "Getting all Entry DNs of LDAP instance {i!r} below {b!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:856
+#: lib/pp_admintools/app/ldap.py:857
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:861
+#: lib/pp_admintools/app/ldap.py:862
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:868
+#: lib/pp_admintools/app/ldap.py:869
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:875
+#: lib/pp_admintools/app/ldap.py:876
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:884 lib/pp_admintools/app/remove_ldap_user.py:290
+#: lib/pp_admintools/app/ldap.py:885 lib/pp_admintools/app/remove_ldap_user.py:290
msgid "Empty user given."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:887
+#: lib/pp_admintools/app/ldap.py:888
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:917 lib/pp_admintools/app/ldap.py:970
-#: lib/pp_admintools/app/ldap.py:1023 lib/pp_admintools/app/ldap.py:1314
-#: lib/pp_admintools/app/ldap.py:1348 lib/pp_admintools/app/ldap.py:1382
-#: lib/pp_admintools/app/ldap.py:1416
+#: lib/pp_admintools/app/ldap.py:918 lib/pp_admintools/app/ldap.py:971
+#: lib/pp_admintools/app/ldap.py:1024 lib/pp_admintools/app/ldap.py:1315
+#: lib/pp_admintools/app/ldap.py:1349 lib/pp_admintools/app/ldap.py:1383
+#: lib/pp_admintools/app/ldap.py:1417
msgid "Searching in {uri}/{bdn} with filter: {fltr}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:928
+#: lib/pp_admintools/app/ldap.py:929
msgid "Result of searching for mail address {m!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:939
+#: lib/pp_admintools/app/ldap.py:940
msgid "User with mail address {m!r} not found in {uri}/{bdn}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:981
+#: lib/pp_admintools/app/ldap.py:982
msgid "Result of searching for uid {u!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:992
+#: lib/pp_admintools/app/ldap.py:993
msgid "User with uid {u!r} not found in {uri}/{bdn}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1034
+#: lib/pp_admintools/app/ldap.py:1035
msgid "Result of searching for CN {cn!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1045
+#: lib/pp_admintools/app/ldap.py:1046
msgid "User with cn {cn!r} not found in {uri}/{bdn}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1062 lib/pp_admintools/app/set_ldap_password.py:510
+#: lib/pp_admintools/app/ldap.py:1063 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:1080
+#: lib/pp_admintools/app/ldap.py:1081
msgid "ObjectClasses of {dn!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1090
+#: lib/pp_admintools/app/ldap.py:1091
msgid "Entry {dn!r} in {uri} seems not to be an account."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1112
+#: lib/pp_admintools/app/ldap.py:1113
msgid "Searching DN {dn!r} in {uri}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1122
+#: lib/pp_admintools/app/ldap.py:1123
msgid "Result of searching for DN {dn!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1130
+#: lib/pp_admintools/app/ldap.py:1131
msgid "Entry with DN {dn!r} not found in {uri}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1175
+#: lib/pp_admintools/app/ldap.py:1176
msgid "Creating entry {dn!r} on {uri}:"
msgstr "Creating entry {dn!r} on {uri}:"
-#: lib/pp_admintools/app/ldap.py:1181
+#: lib/pp_admintools/app/ldap.py:1182
msgid "Simulation mode - entry will not be created."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1188
+#: lib/pp_admintools/app/ldap.py:1189
msgid "Creation of entry {dn!r} was NOT successfull - {c}: {e}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1203
+#: lib/pp_admintools/app/ldap.py:1204
msgid "Creation status: {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1205
+#: lib/pp_admintools/app/ldap.py:1206
msgid "Result of creating:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1208
+#: lib/pp_admintools/app/ldap.py:1209
msgid "Creation of entry {dn!r} was NOT successful: {desc} - {msg}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1214
+#: lib/pp_admintools/app/ldap.py:1215
msgid "Creation successful."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1225
+#: lib/pp_admintools/app/ldap.py:1226
msgid "Applying changes on {uri} to DN {dn!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1230
+#: lib/pp_admintools/app/ldap.py:1231
msgid "Simulation mode - changes are not applied."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1236
+#: lib/pp_admintools/app/ldap.py:1237
msgid "Modification of {dn!r} was NOT successfull - {c}: {e}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1238 lib/pp_admintools/app/ldap.py:1257
+#: lib/pp_admintools/app/ldap.py:1239 lib/pp_admintools/app/ldap.py:1258
#: lib/pp_admintools/app/remove_ldap_user.py:417 lib/pp_admintools/app/remove_ldap_user.py:444
#: lib/pp_admintools/app/remove_ldap_user.py:471 lib/pp_admintools/app/remove_ldap_user.py:502
-#: lib/pp_admintools/app/remove_ldap_user.py:533 lib/pp_admintools/app/set_ldap_password.py:614
+#: lib/pp_admintools/app/remove_ldap_user.py:533 lib/pp_admintools/app/set_ldap_password.py:521
msgid "Changes:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1250
+#: lib/pp_admintools/app/ldap.py:1251
msgid "Modification status: {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1252
+#: lib/pp_admintools/app/ldap.py:1253
msgid "Result of modifying:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1255
+#: lib/pp_admintools/app/ldap.py:1256
msgid "Modification of {dn!r} was NOT successful: {desc} - {msg}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1260
+#: lib/pp_admintools/app/ldap.py:1261
msgid "Modification successful."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1270
+#: lib/pp_admintools/app/ldap.py:1271
msgid "Deleting LDAP entry {dn!r} on {uri} ..."
msgstr "Deleting LDAP entry {dn!r} on {uri} …"
-#: lib/pp_admintools/app/ldap.py:1275
+#: lib/pp_admintools/app/ldap.py:1276
msgid "Simulation mode - deletion will not be executed."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1281
+#: lib/pp_admintools/app/ldap.py:1282
msgid "Deletion of {dn!r} was NOT successfull - {c}: {e}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1286
+#: lib/pp_admintools/app/ldap.py:1287
msgid "Deletion status: {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1288
+#: lib/pp_admintools/app/ldap.py:1289
msgid "Result of deletion:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1291
+#: lib/pp_admintools/app/ldap.py:1292
msgid "Deletion of {dn!r} was NOT successful: {desc} - {msg}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1295
+#: lib/pp_admintools/app/ldap.py:1296
msgid "Deletion successful."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1442
+#: lib/pp_admintools/app/ldap.py:1443
msgid "Reading password file {!r} ..."
msgstr "Reading password file {!r} …"
-#: lib/pp_admintools/app/ldap.py:1473
+#: lib/pp_admintools/app/ldap.py:1474
msgid "Could not detect RDN from DN {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1477
+#: lib/pp_admintools/app/ldap.py:1478
msgid "Found RDN attribute {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1483
+#: lib/pp_admintools/app/ldap.py:1484
msgid "RDN attribute {!r} will not be touched."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1489 lib/pp_admintools/app/ldap.py:1508
-#: lib/pp_admintools/app/ldap.py:1573
+#: lib/pp_admintools/app/ldap.py:1490 lib/pp_admintools/app/ldap.py:1509
+#: lib/pp_admintools/app/ldap.py:1574
msgid "Attribute {!r} will not be touched."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1542
+#: lib/pp_admintools/app/ldap.py:1543
msgid "Values to add to attribute {!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1546
+#: lib/pp_admintools/app/ldap.py:1547
msgid "Values to removed from attribute {!r}:"
msgstr ""
"zero, there is no waiting after a write. (default: {:.1f})"
msgstr ""
-#: lib/pp_admintools/app/mirror_ldap.py:132
+#: lib/pp_admintools/app/mirror_ldap.py:132 lib/pp_admintools/app/mk_ldap_passwd.py:130
msgid "NUMBER"
msgstr ""
msgstr "Start mirroring LDAP instance {src!r} ({src_url}) to instance {tgt!r} ({tgt_url}) [{yes}/{no}]?"
#: lib/pp_admintools/app/mirror_ldap.py:244 lib/pp_admintools/app/remove_ldap_user.py:280
-#: lib/pp_admintools/app/set_ldap_password.py:585
+#: lib/pp_admintools/app/set_ldap_password.py:492
msgid "yes"
msgstr ""
msgid "Mirrored no group entries to target LDAP instance."
msgstr ""
+#: lib/pp_admintools/app/mk_ldap_passwd.py:66
+msgid "Encrypting the password with a defined password schema."
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:108
+msgid "The schema (hashing method) to use to hash the new password. Default: {default!r}."
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:113
+msgid "TYPE"
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:119
+msgid "Like {}"
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:124 lib/pp_admintools/app/set_ldap_password.py:207
+msgid ""
+"A possible salt to use on hashing the password. Caution: not all hashing schemes are supporting "
+"a salt."
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:131 lib/pp_admintools/app/set_ldap_password.py:214
+msgid ""
+"The number of calculation rounds to use on hashing the password. Caution: not all hashing "
+"schemes are supporting calculation rounds."
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:136
+msgid ""
+"The password to hash. If not given and no file desriptor was given, then the password will be "
+"requested on TTY."
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:187
+#, fuzzy
+msgid "Got no password by {}."
+msgstr "Setting password …"
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:190
+msgid "Password:"
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:191 lib/pp_admintools/app/set_ldap_password.py:307
+#: lib/pp_admintools/app/set_ldap_password.py:327
+msgid "Repeat password:"
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:205
+#, fuzzy
+msgid "Encrypting password with hashing schema '{schema}' ..."
+msgstr "Setting password of '{dn}' with hashing schema '{schema}' …"
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:212 lib/pp_admintools/app/set_ldap_password.py:481
+msgid "Used schema: {!r}."
+msgstr ""
+
#: lib/pp_admintools/app/pdns.py:99 lib/pp_admintools/app/pdns.py:183
msgid "Configuration not available."
msgstr ""
msgid "Removing the user from LDAP."
msgstr "Removing the user from LDAP."
-#: lib/pp_admintools/app/remove_ldap_user.py:136 lib/pp_admintools/app/set_ldap_password.py:275
-#: lib/pp_admintools/app/set_ldap_password.py:278
+#: lib/pp_admintools/app/remove_ldap_user.py:136 lib/pp_admintools/app/set_ldap_password.py:200
+#: lib/pp_admintools/app/set_ldap_password.py:203
msgid "USER"
msgstr ""
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:300 lib/pp_admintools/app/set_ldap_password.py:533
+#: lib/pp_admintools/app/remove_ldap_user.py:300 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:307 lib/pp_admintools/app/set_ldap_password.py:538
+#: lib/pp_admintools/app/remove_ldap_user.py:307 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:319 lib/pp_admintools/app/set_ldap_password.py:552
+#: lib/pp_admintools/app/remove_ldap_user.py:319 lib/pp_admintools/app/set_ldap_password.py:453
msgid "Did not found user {user!r} in LDAP instance {inst}."
msgstr ""
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:415 lib/pp_admintools/app/set_ldap_password.py:612
+#: lib/pp_admintools/app/remove_ldap_user.py:415 lib/pp_admintools/app/set_ldap_password.py:519
msgid "{c} on deactivating user {dn!r}: {e}"
msgstr ""
msgid "Did not found any sudo group memberships of {uid!r} in {inst}."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:106
-msgid "The ancient and notorious 3 DES crypt method."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:107 lib/pp_admintools/app/set_ldap_password.py:110
-msgid "Pure {} hashing method."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:108 lib/pp_admintools/app/set_ldap_password.py:111
-#: lib/pp_admintools/app/set_ldap_password.py:113 lib/pp_admintools/app/set_ldap_password.py:115
-msgid "A {} based hashing algorithm."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:109 lib/pp_admintools/app/set_ldap_password.py:112
-#: lib/pp_admintools/app/set_ldap_password.py:114 lib/pp_admintools/app/set_ldap_password.py:116
-msgid "Salted {} hashing method."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:117
-msgid "A hashing method derived from {} with additional computing rounds."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:163
+#: 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 "
"of the user logged in on the controlling terminal."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:207
+#: lib/pp_admintools/app/set_ldap_password.py:131
msgid "Use {} as the current user password."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:212
+#: lib/pp_admintools/app/set_ldap_password.py:136
msgid ""
"Prompt for current user password. This is used instead of specifying the password on the command"
" line."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:220
+#: lib/pp_admintools/app/set_ldap_password.py:144
msgid "Use contents of {} as the current user password."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:225
+#: lib/pp_admintools/app/set_ldap_password.py:149
msgid "Use {} as the new user password. If not given, it will be asked for it."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:233
+#: lib/pp_admintools/app/set_ldap_password.py:157
msgid "Do not check the quality of the new password with the {} library."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:247
+#: lib/pp_admintools/app/set_ldap_password.py:172
msgid ""
"The schema (hashing method) to use to hash the new password. It is possible to give here the "
"value {val_list!r}, then all possible schemes are shown and exit. Default: {default!r}."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:252
+#: lib/pp_admintools/app/set_ldap_password.py:177
msgid "If you are not using an admin account, then the password will hashed only by the default schema."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:257
+#: lib/pp_admintools/app/set_ldap_password.py:182
msgid "SCHEMA"
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:261
+#: lib/pp_admintools/app/set_ldap_password.py:186
msgid ""
"The user, which password in the given LDAP instance should be changed. It may be given by its "
"Uid (the alphanumeric POSIX name), its mail address or its LDAP DN."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:266
+#: lib/pp_admintools/app/set_ldap_password.py:191
msgid "If not given, then your current user name {!r} will be used."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:269
+#: lib/pp_admintools/app/set_ldap_password.py:194
msgid ""
"If you are using a readonly LDAP instance or an instance w/o admin access, then you must provide"
" somehow the current password of the user to change."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:322
+#: lib/pp_admintools/app/set_ldap_password.py:263
msgid "Could not detect your current login name."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:327
+#: lib/pp_admintools/app/set_ldap_password.py:268
msgid "The user {!r} will never be managed by LDAP."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:363
-msgid "Usable Hashing schemes:"
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:372
-msgid "This schema cannot be used for authentication on a current freeradius server."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:376
-msgid "This is the default schema."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:391
+#: lib/pp_admintools/app/set_ldap_password.py:302
msgid "Using LDAP instance {inst!r} - {url}."
msgstr "Using LDAP instance {inst!r} - {url}."
-#: lib/pp_admintools/app/set_ldap_password.py:395
+#: lib/pp_admintools/app/set_ldap_password.py:306
msgid "Current password of user {!r}:"
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:396 lib/pp_admintools/app/set_ldap_password.py:416
-msgid "Repeat password:"
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:409
+#: lib/pp_admintools/app/set_ldap_password.py:320
msgid "Non admin users must use the default schema {!r} for hashing their password."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:415
+#: lib/pp_admintools/app/set_ldap_password.py:326
msgid "New password of user {!r}:"
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:422
+#: lib/pp_admintools/app/set_ldap_password.py:332
msgid "Checking the quality of the new password was disabled."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:425
-msgid "Testing quality of new password ..."
-msgstr "Testing quality of new password …"
-
-#: lib/pp_admintools/app/set_ldap_password.py:429
-msgid "Quality of the new password is not sufficient:"
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:434
-msgid "Cannot testing the quality of the new password, because the Python module {!r} is not installed."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:461
+#: lib/pp_admintools/app/set_ldap_password.py:362
msgid "Unbinding user connection from LDAP server {} ..."
msgstr "Unbinding user connection from LDAP server {} …"
-#: lib/pp_admintools/app/set_ldap_password.py:472
+#: lib/pp_admintools/app/set_ldap_password.py:373
msgid "Testing connect to LDAP-Server {url} with current user {dn!r} and password ..."
msgstr "Testing connect to LDAP-Server {url} with current user {dn!r} and password …"
-#: lib/pp_admintools/app/set_ldap_password.py:484
+#: lib/pp_admintools/app/set_ldap_password.py:385
msgid "Successful connected as {dn!r} to {url}."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:490
+#: lib/pp_admintools/app/set_ldap_password.py:391
msgid "Could not connect to {url} as {dn!r}: {e}"
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:501
+#: lib/pp_admintools/app/set_ldap_password.py:402
msgid "Trying to get current password hash of user {!r} ..."
msgstr "Trying to get current password hash of user {!r} …"
-#: lib/pp_admintools/app/set_ldap_password.py:540
+#: lib/pp_admintools/app/set_ldap_password.py:441
msgid ""
"Please use another username, or use the correct DN from the following list as a parameter for "
"this script instead of the username:"
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:557
+#: lib/pp_admintools/app/set_ldap_password.py:458
msgid "Changing the password of user {dn!r} in LDAP instance {inst}."
msgstr "Changing the password of user {dn!r} in LDAP instance {inst}."
-#: lib/pp_admintools/app/set_ldap_password.py:564
-msgid "Setting password of {dn!r} with hashing schema {schema!r}."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:566
+#: lib/pp_admintools/app/set_ldap_password.py:465
msgid "Setting password of '{dn}' with hashing schema '{schema}' ..."
msgstr "Setting password of '{dn}' with hashing schema '{schema}' …"
-#: lib/pp_admintools/app/set_ldap_password.py:571
+#: lib/pp_admintools/app/set_ldap_password.py:471
msgid "Current password hash: '{}'."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:574
+#: lib/pp_admintools/app/set_ldap_password.py:474
msgid "The user '{}' has currently no password."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:578
-msgid "Used schema: {!r}."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:580
+#: lib/pp_admintools/app/set_ldap_password.py:487
msgid "New password hash: '{}'."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:584
+#: lib/pp_admintools/app/set_ldap_password.py:491
msgid "Apply new password? [{yes}/{no}]?"
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:590
+#: lib/pp_admintools/app/set_ldap_password.py:497
msgid "Do not setting password for {!r}."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:606
+#: lib/pp_admintools/app/set_ldap_password.py:513
msgid "Setting password ..."
msgstr "Setting password …"
msgid "Found API key of PDNS instance {inst!r}: {key!r}."
msgstr ""
+#: lib/pp_admintools/handler/ldap_password.py:56
+msgid "Encryption schema {!r} inot found."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:108
+msgid "The ancient and notorious 3 DES crypt method."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:109 lib/pp_admintools/handler/ldap_password.py:112
+msgid "Pure {} hashing method."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:110 lib/pp_admintools/handler/ldap_password.py:113
+#: lib/pp_admintools/handler/ldap_password.py:115 lib/pp_admintools/handler/ldap_password.py:117
+msgid "A {} based hashing algorithm."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:111 lib/pp_admintools/handler/ldap_password.py:114
+#: lib/pp_admintools/handler/ldap_password.py:116 lib/pp_admintools/handler/ldap_password.py:118
+msgid "Salted {} hashing method."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:119
+msgid "A hashing method derived from {} with additional computing rounds."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:240
+msgid "Invalid schema {!r} given for update."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:277
+msgid "Usable Hashing schemes:"
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:286
+msgid "This schema cannot be used for authentication on a current freeradius server."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:290
+msgid "This is the default schema."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:334
+msgid "The password schema {!r} does not support a password salt."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:338
+msgid "The password salt must be at least by {} characters."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:342
+msgid "The password salt may have a length of maximum {} characters."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:352
+msgid "Found invalid character {!r} in password salt."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:365
+msgid "The password schema {!r} does not support calculation rounds."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:371
+msgid "Wrong value {v!r} for calculation rounds: {e}"
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:375
+msgid "The value for the calculation rounds has to be at least {}."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:380
+msgid "The value for the calculation rounds has to at most {}."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:413
+msgid "Cannot testing the quality of the new password, because the Python module {!r} is not installed."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:419
+msgid "Testing quality of new password ..."
+msgstr "Testing quality of new password …"
+
+#: lib/pp_admintools/handler/ldap_password.py:423
+msgid "Quality of the new password is not sufficient:"
+msgstr ""
+
#: lib/pp_admintools/xlate.py:97
msgid "Module directory: {!r}"
msgstr ""
msgstr ""
"Project-Id-Version: pp_admintools 0.9.1\n"
"Report-Msgid-Bugs-To: frank.brehm@pixelpark.com\n"
-"POT-Creation-Date: 2022-11-03 16:37+0100\n"
+"POT-Creation-Date: 2022-11-11 16:38+0100\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"
msgid "Generation of the BIND9 configuration file for slave zones."
msgstr ""
-#: lib/pp_admintools/app/dns_deploy_zones.py:262 lib/pp_admintools/app/set_ldap_password.py:200
+#: lib/pp_admintools/app/dns_deploy_zones.py:262 lib/pp_admintools/app/mk_ldap_passwd.py:95
+#: lib/pp_admintools/app/set_ldap_password.py:124
msgid "Options for {}"
msgstr ""
msgstr ""
#: lib/pp_admintools/app/dns_deploy_zones.py:453 lib/pp_admintools/app/dns_deploy_zones.py:807
-#: lib/pp_admintools/app/ldap.py:805 lib/pp_admintools/app/ldap.py:935
-#: lib/pp_admintools/app/ldap.py:988 lib/pp_admintools/app/ldap.py:1041
-#: lib/pp_admintools/app/ldap.py:1329 lib/pp_admintools/app/ldap.py:1363
-#: lib/pp_admintools/app/ldap.py:1397 lib/pp_admintools/app/ldap.py:1431
+#: lib/pp_admintools/app/ldap.py:806 lib/pp_admintools/app/ldap.py:936
+#: lib/pp_admintools/app/ldap.py:989 lib/pp_admintools/app/ldap.py:1042
+#: lib/pp_admintools/app/ldap.py:1330 lib/pp_admintools/app/ldap.py:1364
+#: lib/pp_admintools/app/ldap.py:1398 lib/pp_admintools/app/ldap.py:1432
msgid "Result:"
msgstr ""
msgstr ""
#: lib/pp_admintools/app/ldap.py:123 lib/pp_admintools/app/ldap.py:284
-#: lib/pp_admintools/app/ldap.py:1445
+#: lib/pp_admintools/app/ldap.py:1446
msgid "The file {!r} does not exists."
msgstr ""
#: lib/pp_admintools/app/ldap.py:127 lib/pp_admintools/app/ldap.py:288
-#: lib/pp_admintools/app/ldap.py:1450
+#: lib/pp_admintools/app/ldap.py:1451
msgid "The given path {!r} exists, but is not a regular file."
msgstr ""
#: lib/pp_admintools/app/ldap.py:131 lib/pp_admintools/app/ldap.py:292
-#: lib/pp_admintools/app/ldap.py:1455
+#: lib/pp_admintools/app/ldap.py:1456
msgid "The given file {!r} is not readable."
msgstr ""
msgstr ""
#: lib/pp_admintools/app/ldap.py:336 lib/pp_admintools/app/mirror_ldap.py:244
-#: lib/pp_admintools/app/remove_ldap_user.py:280 lib/pp_admintools/app/set_ldap_password.py:585
+#: lib/pp_admintools/app/remove_ldap_user.py:280 lib/pp_admintools/app/set_ldap_password.py:492
msgid "No"
msgstr ""
msgid "The Bind DN to use to connect to the LDAP server. Default: {!r}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:380 lib/pp_admintools/app/set_ldap_password.py:206
-#: lib/pp_admintools/app/set_ldap_password.py:207 lib/pp_admintools/app/set_ldap_password.py:224
-#: lib/pp_admintools/app/set_ldap_password.py:227
+#: lib/pp_admintools/app/ldap.py:380 lib/pp_admintools/app/mk_ldap_passwd.py:140
+#: lib/pp_admintools/app/set_ldap_password.py:130 lib/pp_admintools/app/set_ldap_password.py:131
+#: lib/pp_admintools/app/set_ldap_password.py:148 lib/pp_admintools/app/set_ldap_password.py:151
msgid "PASSWORD"
msgstr ""
"command line."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:392 lib/pp_admintools/app/set_ldap_password.py:218
-#: lib/pp_admintools/app/set_ldap_password.py:220
+#: lib/pp_admintools/app/ldap.py:392 lib/pp_admintools/app/set_ldap_password.py:142
+#: lib/pp_admintools/app/set_ldap_password.py:144
msgid "PASSWORD_FILE"
msgstr ""
msgid "Finishing ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:749
+#: lib/pp_admintools/app/ldap.py:750
msgid "Disconnecting from all remaining LDAP instances ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:762
+#: lib/pp_admintools/app/ldap.py:763
msgid "Unbinding from LDAP server {!r} ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:769
+#: lib/pp_admintools/app/ldap.py:770
msgid "Disconnecting from LDAP server {!r} ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:791 lib/pp_admintools/app/ldap.py:830
+#: lib/pp_admintools/app/ldap.py:792 lib/pp_admintools/app/ldap.py:831
msgid "Result of searching for DNs of all entries:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:795 lib/pp_admintools/app/ldap.py:834
-#: lib/pp_admintools/app/ldap.py:932 lib/pp_admintools/app/ldap.py:985
-#: lib/pp_admintools/app/ldap.py:1038 lib/pp_admintools/app/ldap.py:1126
-#: lib/pp_admintools/app/ldap.py:1326 lib/pp_admintools/app/ldap.py:1360
-#: lib/pp_admintools/app/ldap.py:1394 lib/pp_admintools/app/ldap.py:1428
+#: lib/pp_admintools/app/ldap.py:796 lib/pp_admintools/app/ldap.py:835
+#: lib/pp_admintools/app/ldap.py:933 lib/pp_admintools/app/ldap.py:986
+#: lib/pp_admintools/app/ldap.py:1039 lib/pp_admintools/app/ldap.py:1127
+#: lib/pp_admintools/app/ldap.py:1327 lib/pp_admintools/app/ldap.py:1361
+#: lib/pp_admintools/app/ldap.py:1395 lib/pp_admintools/app/ldap.py:1429
msgid "Got a response entry:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:820
+#: lib/pp_admintools/app/ldap.py:821
msgid "Getting all Entry DNs of LDAP instance {i!r} below {b!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:856
+#: lib/pp_admintools/app/ldap.py:857
msgid "Trying to evaluate DN of user {user!r} in LDAP instance {inst} ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:861
+#: lib/pp_admintools/app/ldap.py:862
msgid "Trying to evaluate DN of user {u!r} as a mail address ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:868
+#: lib/pp_admintools/app/ldap.py:869
msgid "Trying to evaluate DN of user {u!r} as a LDAP DN ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:875
+#: lib/pp_admintools/app/ldap.py:876
msgid "Trying to evaluate DN of user {u!r} as a UID (Posix user name) ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:884 lib/pp_admintools/app/remove_ldap_user.py:290
+#: lib/pp_admintools/app/ldap.py:885 lib/pp_admintools/app/remove_ldap_user.py:290
msgid "Empty user given."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:887
+#: lib/pp_admintools/app/ldap.py:888
msgid "Trying to evaluate DN of user {u!r} as a CN ({c}) ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:917 lib/pp_admintools/app/ldap.py:970
-#: lib/pp_admintools/app/ldap.py:1023 lib/pp_admintools/app/ldap.py:1314
-#: lib/pp_admintools/app/ldap.py:1348 lib/pp_admintools/app/ldap.py:1382
-#: lib/pp_admintools/app/ldap.py:1416
+#: lib/pp_admintools/app/ldap.py:918 lib/pp_admintools/app/ldap.py:971
+#: lib/pp_admintools/app/ldap.py:1024 lib/pp_admintools/app/ldap.py:1315
+#: lib/pp_admintools/app/ldap.py:1349 lib/pp_admintools/app/ldap.py:1383
+#: lib/pp_admintools/app/ldap.py:1417
msgid "Searching in {uri}/{bdn} with filter: {fltr}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:928
+#: lib/pp_admintools/app/ldap.py:929
msgid "Result of searching for mail address {m!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:939
+#: lib/pp_admintools/app/ldap.py:940
msgid "User with mail address {m!r} not found in {uri}/{bdn}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:981
+#: lib/pp_admintools/app/ldap.py:982
msgid "Result of searching for uid {u!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:992
+#: lib/pp_admintools/app/ldap.py:993
msgid "User with uid {u!r} not found in {uri}/{bdn}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1034
+#: lib/pp_admintools/app/ldap.py:1035
msgid "Result of searching for CN {cn!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1045
+#: lib/pp_admintools/app/ldap.py:1046
msgid "User with cn {cn!r} not found in {uri}/{bdn}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1062 lib/pp_admintools/app/set_ldap_password.py:510
+#: lib/pp_admintools/app/ldap.py:1063 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:1080
+#: lib/pp_admintools/app/ldap.py:1081
msgid "ObjectClasses of {dn!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1090
+#: lib/pp_admintools/app/ldap.py:1091
msgid "Entry {dn!r} in {uri} seems not to be an account."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1112
+#: lib/pp_admintools/app/ldap.py:1113
msgid "Searching DN {dn!r} in {uri}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1122
+#: lib/pp_admintools/app/ldap.py:1123
msgid "Result of searching for DN {dn!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1130
+#: lib/pp_admintools/app/ldap.py:1131
msgid "Entry with DN {dn!r} not found in {uri}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1175
+#: lib/pp_admintools/app/ldap.py:1176
msgid "Creating entry {dn!r} on {uri}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1181
+#: lib/pp_admintools/app/ldap.py:1182
msgid "Simulation mode - entry will not be created."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1188
+#: lib/pp_admintools/app/ldap.py:1189
msgid "Creation of entry {dn!r} was NOT successfull - {c}: {e}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1203
+#: lib/pp_admintools/app/ldap.py:1204
msgid "Creation status: {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1205
+#: lib/pp_admintools/app/ldap.py:1206
msgid "Result of creating:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1208
+#: lib/pp_admintools/app/ldap.py:1209
msgid "Creation of entry {dn!r} was NOT successful: {desc} - {msg}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1214
+#: lib/pp_admintools/app/ldap.py:1215
msgid "Creation successful."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1225
+#: lib/pp_admintools/app/ldap.py:1226
msgid "Applying changes on {uri} to DN {dn!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1230
+#: lib/pp_admintools/app/ldap.py:1231
msgid "Simulation mode - changes are not applied."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1236
+#: lib/pp_admintools/app/ldap.py:1237
msgid "Modification of {dn!r} was NOT successfull - {c}: {e}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1238 lib/pp_admintools/app/ldap.py:1257
+#: lib/pp_admintools/app/ldap.py:1239 lib/pp_admintools/app/ldap.py:1258
#: lib/pp_admintools/app/remove_ldap_user.py:417 lib/pp_admintools/app/remove_ldap_user.py:444
#: lib/pp_admintools/app/remove_ldap_user.py:471 lib/pp_admintools/app/remove_ldap_user.py:502
-#: lib/pp_admintools/app/remove_ldap_user.py:533 lib/pp_admintools/app/set_ldap_password.py:614
+#: lib/pp_admintools/app/remove_ldap_user.py:533 lib/pp_admintools/app/set_ldap_password.py:521
msgid "Changes:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1250
+#: lib/pp_admintools/app/ldap.py:1251
msgid "Modification status: {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1252
+#: lib/pp_admintools/app/ldap.py:1253
msgid "Result of modifying:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1255
+#: lib/pp_admintools/app/ldap.py:1256
msgid "Modification of {dn!r} was NOT successful: {desc} - {msg}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1260
+#: lib/pp_admintools/app/ldap.py:1261
msgid "Modification successful."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1270
+#: lib/pp_admintools/app/ldap.py:1271
msgid "Deleting LDAP entry {dn!r} on {uri} ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1275
+#: lib/pp_admintools/app/ldap.py:1276
msgid "Simulation mode - deletion will not be executed."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1281
+#: lib/pp_admintools/app/ldap.py:1282
msgid "Deletion of {dn!r} was NOT successfull - {c}: {e}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1286
+#: lib/pp_admintools/app/ldap.py:1287
msgid "Deletion status: {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1288
+#: lib/pp_admintools/app/ldap.py:1289
msgid "Result of deletion:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1291
+#: lib/pp_admintools/app/ldap.py:1292
msgid "Deletion of {dn!r} was NOT successful: {desc} - {msg}"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1295
+#: lib/pp_admintools/app/ldap.py:1296
msgid "Deletion successful."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1442
+#: lib/pp_admintools/app/ldap.py:1443
msgid "Reading password file {!r} ..."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1473
+#: lib/pp_admintools/app/ldap.py:1474
msgid "Could not detect RDN from DN {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1477
+#: lib/pp_admintools/app/ldap.py:1478
msgid "Found RDN attribute {!r}."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1483
+#: lib/pp_admintools/app/ldap.py:1484
msgid "RDN attribute {!r} will not be touched."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1489 lib/pp_admintools/app/ldap.py:1508
-#: lib/pp_admintools/app/ldap.py:1573
+#: lib/pp_admintools/app/ldap.py:1490 lib/pp_admintools/app/ldap.py:1509
+#: lib/pp_admintools/app/ldap.py:1574
msgid "Attribute {!r} will not be touched."
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1542
+#: lib/pp_admintools/app/ldap.py:1543
msgid "Values to add to attribute {!r}:"
msgstr ""
-#: lib/pp_admintools/app/ldap.py:1546
+#: lib/pp_admintools/app/ldap.py:1547
msgid "Values to removed from attribute {!r}:"
msgstr ""
"zero, there is no waiting after a write. (default: {:.1f})"
msgstr ""
-#: lib/pp_admintools/app/mirror_ldap.py:132
+#: lib/pp_admintools/app/mirror_ldap.py:132 lib/pp_admintools/app/mk_ldap_passwd.py:130
msgid "NUMBER"
msgstr ""
msgstr ""
#: lib/pp_admintools/app/mirror_ldap.py:244 lib/pp_admintools/app/remove_ldap_user.py:280
-#: lib/pp_admintools/app/set_ldap_password.py:585
+#: lib/pp_admintools/app/set_ldap_password.py:492
msgid "yes"
msgstr ""
msgid "Mirrored no group entries to target LDAP instance."
msgstr ""
+#: lib/pp_admintools/app/mk_ldap_passwd.py:66
+msgid "Encrypting the password with a defined password schema."
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:108
+msgid "The schema (hashing method) to use to hash the new password. Default: {default!r}."
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:113
+msgid "TYPE"
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:119
+msgid "Like {}"
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:124 lib/pp_admintools/app/set_ldap_password.py:207
+msgid ""
+"A possible salt to use on hashing the password. Caution: not all hashing schemes are supporting "
+"a salt."
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:131 lib/pp_admintools/app/set_ldap_password.py:214
+msgid ""
+"The number of calculation rounds to use on hashing the password. Caution: not all hashing "
+"schemes are supporting calculation rounds."
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:136
+msgid ""
+"The password to hash. If not given and no file desriptor was given, then the password will be "
+"requested on TTY."
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:187
+msgid "Got no password by {}."
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:190
+msgid "Password:"
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:191 lib/pp_admintools/app/set_ldap_password.py:307
+#: lib/pp_admintools/app/set_ldap_password.py:327
+msgid "Repeat password:"
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:205
+msgid "Encrypting password with hashing schema '{schema}' ..."
+msgstr ""
+
+#: lib/pp_admintools/app/mk_ldap_passwd.py:212 lib/pp_admintools/app/set_ldap_password.py:481
+msgid "Used schema: {!r}."
+msgstr ""
+
#: lib/pp_admintools/app/pdns.py:99 lib/pp_admintools/app/pdns.py:183
msgid "Configuration not available."
msgstr ""
msgid "Removing the user from LDAP."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:136 lib/pp_admintools/app/set_ldap_password.py:275
-#: lib/pp_admintools/app/set_ldap_password.py:278
+#: lib/pp_admintools/app/remove_ldap_user.py:136 lib/pp_admintools/app/set_ldap_password.py:200
+#: lib/pp_admintools/app/set_ldap_password.py:203
msgid "USER"
msgstr ""
msgid "Evaluating DNs of the user {!r} to remove ..."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:300 lib/pp_admintools/app/set_ldap_password.py:533
+#: lib/pp_admintools/app/remove_ldap_user.py:300 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:307 lib/pp_admintools/app/set_ldap_password.py:538
+#: lib/pp_admintools/app/remove_ldap_user.py:307 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:319 lib/pp_admintools/app/set_ldap_password.py:552
+#: lib/pp_admintools/app/remove_ldap_user.py:319 lib/pp_admintools/app/set_ldap_password.py:453
msgid "Did not found user {user!r} in LDAP instance {inst}."
msgstr ""
msgid "Updating user info for {dn!r} on {inst} ..."
msgstr ""
-#: lib/pp_admintools/app/remove_ldap_user.py:415 lib/pp_admintools/app/set_ldap_password.py:612
+#: lib/pp_admintools/app/remove_ldap_user.py:415 lib/pp_admintools/app/set_ldap_password.py:519
msgid "{c} on deactivating user {dn!r}: {e}"
msgstr ""
msgid "Did not found any sudo group memberships of {uid!r} in {inst}."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:106
-msgid "The ancient and notorious 3 DES crypt method."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:107 lib/pp_admintools/app/set_ldap_password.py:110
-msgid "Pure {} hashing method."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:108 lib/pp_admintools/app/set_ldap_password.py:111
-#: lib/pp_admintools/app/set_ldap_password.py:113 lib/pp_admintools/app/set_ldap_password.py:115
-msgid "A {} based hashing algorithm."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:109 lib/pp_admintools/app/set_ldap_password.py:112
-#: lib/pp_admintools/app/set_ldap_password.py:114 lib/pp_admintools/app/set_ldap_password.py:116
-msgid "Salted {} hashing method."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:117
-msgid "A hashing method derived from {} with additional computing rounds."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:163
+#: 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 "
"of the user logged in on the controlling terminal."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:207
+#: lib/pp_admintools/app/set_ldap_password.py:131
msgid "Use {} as the current user password."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:212
+#: lib/pp_admintools/app/set_ldap_password.py:136
msgid ""
"Prompt for current user password. This is used instead of specifying the password on the command"
" line."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:220
+#: lib/pp_admintools/app/set_ldap_password.py:144
msgid "Use contents of {} as the current user password."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:225
+#: lib/pp_admintools/app/set_ldap_password.py:149
msgid "Use {} as the new user password. If not given, it will be asked for it."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:233
+#: lib/pp_admintools/app/set_ldap_password.py:157
msgid "Do not check the quality of the new password with the {} library."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:247
+#: lib/pp_admintools/app/set_ldap_password.py:172
msgid ""
"The schema (hashing method) to use to hash the new password. It is possible to give here the "
"value {val_list!r}, then all possible schemes are shown and exit. Default: {default!r}."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:252
+#: lib/pp_admintools/app/set_ldap_password.py:177
msgid "If you are not using an admin account, then the password will hashed only by the default schema."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:257
+#: lib/pp_admintools/app/set_ldap_password.py:182
msgid "SCHEMA"
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:261
+#: lib/pp_admintools/app/set_ldap_password.py:186
msgid ""
"The user, which password in the given LDAP instance should be changed. It may be given by its "
"Uid (the alphanumeric POSIX name), its mail address or its LDAP DN."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:266
+#: lib/pp_admintools/app/set_ldap_password.py:191
msgid "If not given, then your current user name {!r} will be used."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:269
+#: lib/pp_admintools/app/set_ldap_password.py:194
msgid ""
"If you are using a readonly LDAP instance or an instance w/o admin access, then you must provide"
" somehow the current password of the user to change."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:322
+#: lib/pp_admintools/app/set_ldap_password.py:263
msgid "Could not detect your current login name."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:327
+#: lib/pp_admintools/app/set_ldap_password.py:268
msgid "The user {!r} will never be managed by LDAP."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:363
-msgid "Usable Hashing schemes:"
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:372
-msgid "This schema cannot be used for authentication on a current freeradius server."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:376
-msgid "This is the default schema."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:391
+#: lib/pp_admintools/app/set_ldap_password.py:302
msgid "Using LDAP instance {inst!r} - {url}."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:395
+#: lib/pp_admintools/app/set_ldap_password.py:306
msgid "Current password of user {!r}:"
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:396 lib/pp_admintools/app/set_ldap_password.py:416
-msgid "Repeat password:"
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:409
+#: lib/pp_admintools/app/set_ldap_password.py:320
msgid "Non admin users must use the default schema {!r} for hashing their password."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:415
+#: lib/pp_admintools/app/set_ldap_password.py:326
msgid "New password of user {!r}:"
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:422
+#: lib/pp_admintools/app/set_ldap_password.py:332
msgid "Checking the quality of the new password was disabled."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:425
-msgid "Testing quality of new password ..."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:429
-msgid "Quality of the new password is not sufficient:"
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:434
-msgid "Cannot testing the quality of the new password, because the Python module {!r} is not installed."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:461
+#: lib/pp_admintools/app/set_ldap_password.py:362
msgid "Unbinding user connection from LDAP server {} ..."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:472
+#: lib/pp_admintools/app/set_ldap_password.py:373
msgid "Testing connect to LDAP-Server {url} with current user {dn!r} and password ..."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:484
+#: lib/pp_admintools/app/set_ldap_password.py:385
msgid "Successful connected as {dn!r} to {url}."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:490
+#: lib/pp_admintools/app/set_ldap_password.py:391
msgid "Could not connect to {url} as {dn!r}: {e}"
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:501
+#: lib/pp_admintools/app/set_ldap_password.py:402
msgid "Trying to get current password hash of user {!r} ..."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:540
+#: lib/pp_admintools/app/set_ldap_password.py:441
msgid ""
"Please use another username, or use the correct DN from the following list as a parameter for "
"this script instead of the username:"
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:557
+#: lib/pp_admintools/app/set_ldap_password.py:458
msgid "Changing the password of user {dn!r} in LDAP instance {inst}."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:564
-msgid "Setting password of {dn!r} with hashing schema {schema!r}."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:566
+#: lib/pp_admintools/app/set_ldap_password.py:465
msgid "Setting password of '{dn}' with hashing schema '{schema}' ..."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:571
+#: lib/pp_admintools/app/set_ldap_password.py:471
msgid "Current password hash: '{}'."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:574
+#: lib/pp_admintools/app/set_ldap_password.py:474
msgid "The user '{}' has currently no password."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:578
-msgid "Used schema: {!r}."
-msgstr ""
-
-#: lib/pp_admintools/app/set_ldap_password.py:580
+#: lib/pp_admintools/app/set_ldap_password.py:487
msgid "New password hash: '{}'."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:584
+#: lib/pp_admintools/app/set_ldap_password.py:491
msgid "Apply new password? [{yes}/{no}]?"
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:590
+#: lib/pp_admintools/app/set_ldap_password.py:497
msgid "Do not setting password for {!r}."
msgstr ""
-#: lib/pp_admintools/app/set_ldap_password.py:606
+#: lib/pp_admintools/app/set_ldap_password.py:513
msgid "Setting password ..."
msgstr ""
msgid "Found API key of PDNS instance {inst!r}: {key!r}."
msgstr ""
+#: lib/pp_admintools/handler/ldap_password.py:56
+msgid "Encryption schema {!r} inot found."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:108
+msgid "The ancient and notorious 3 DES crypt method."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:109 lib/pp_admintools/handler/ldap_password.py:112
+msgid "Pure {} hashing method."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:110 lib/pp_admintools/handler/ldap_password.py:113
+#: lib/pp_admintools/handler/ldap_password.py:115 lib/pp_admintools/handler/ldap_password.py:117
+msgid "A {} based hashing algorithm."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:111 lib/pp_admintools/handler/ldap_password.py:114
+#: lib/pp_admintools/handler/ldap_password.py:116 lib/pp_admintools/handler/ldap_password.py:118
+msgid "Salted {} hashing method."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:119
+msgid "A hashing method derived from {} with additional computing rounds."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:240
+msgid "Invalid schema {!r} given for update."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:277
+msgid "Usable Hashing schemes:"
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:286
+msgid "This schema cannot be used for authentication on a current freeradius server."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:290
+msgid "This is the default schema."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:334
+msgid "The password schema {!r} does not support a password salt."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:338
+msgid "The password salt must be at least by {} characters."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:342
+msgid "The password salt may have a length of maximum {} characters."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:352
+msgid "Found invalid character {!r} in password salt."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:365
+msgid "The password schema {!r} does not support calculation rounds."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:371
+msgid "Wrong value {v!r} for calculation rounds: {e}"
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:375
+msgid "The value for the calculation rounds has to be at least {}."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:380
+msgid "The value for the calculation rounds has to at most {}."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:413
+msgid "Cannot testing the quality of the new password, because the Python module {!r} is not installed."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:419
+msgid "Testing quality of new password ..."
+msgstr ""
+
+#: lib/pp_admintools/handler/ldap_password.py:423
+msgid "Quality of the new password is not sufficient:"
+msgstr ""
+
#: lib/pp_admintools/xlate.py:97
msgid "Module directory: {!r}"
msgstr ""