summaryrefslogtreecommitdiffstats
path: root/install/po
diff options
context:
space:
mode:
authorPetr Viktorin <pviktori+transifex@redhat.com>2014-06-27 16:33:47 +0200
committerPetr Viktorin <pviktori@redhat.com>2014-06-27 16:40:02 +0200
commit36d261e843dd6e8197e6f3ea16a97370215b50c2 (patch)
treeec77567bd8d5a915cbaebcc16417c167e9b35c63 /install/po
parentbd29d3cbbc91bc547fd52e96a8facbdcda91773c (diff)
downloadfreeipa-36d261e843dd6e8197e6f3ea16a97370215b50c2.tar.gz
freeipa-36d261e843dd6e8197e6f3ea16a97370215b50c2.tar.xz
freeipa-36d261e843dd6e8197e6f3ea16a97370215b50c2.zip
Update translations
Pull fresh translations from Transifex. Update the POT file. Thanks to all translators!
Diffstat (limited to 'install/po')
-rw-r--r--install/po/bn_IN.po7
-rw-r--r--install/po/ca.po63
-rw-r--r--install/po/cs.po6
-rw-r--r--install/po/de.po1916
-rw-r--r--install/po/es.po616
-rw-r--r--install/po/eu.po24
-rw-r--r--install/po/fr.po1331
-rw-r--r--install/po/id.po10
-rw-r--r--install/po/ipa.pot5946
-rw-r--r--install/po/ja.po27
-rw-r--r--install/po/kn.po28
-rw-r--r--install/po/nl.po6
-rw-r--r--install/po/pl.po85
-rw-r--r--install/po/ru.po69
-rw-r--r--install/po/tg.po26
-rw-r--r--install/po/uk.po2180
-rw-r--r--install/po/zh_CN.po19
17 files changed, 8428 insertions, 3931 deletions
diff --git a/install/po/bn_IN.po b/install/po/bn_IN.po
index c78bd86f1..f4639364a 100644
--- a/install/po/bn_IN.po
+++ b/install/po/bn_IN.po
@@ -10,10 +10,11 @@ msgstr ""
"Project-Id-Version: FreeIPA\n"
"Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/"
"newticket\n"
-"POT-Creation-Date: 2013-10-09 14:39+0200\n"
-"PO-Revision-Date: 2013-08-01 14:06+0000\n"
+"POT-Creation-Date: 2014-06-27 16:29+0200\n"
+"PO-Revision-Date: 2014-06-25 19:44+0000\n"
"Last-Translator: Petr Viktorin <encukou@gmail.com>\n"
-"Language-Team: Bengali (India) <anubad@lists.ankur.org.in>\n"
+"Language-Team: Bengali (India) (http://www.transifex.com/projects/p/freeipa/"
+"language/bn_IN/)\n"
"Language: bn_IN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
diff --git a/install/po/ca.po b/install/po/ca.po
index 3521c50f5..c7b4b6020 100644
--- a/install/po/ca.po
+++ b/install/po/ca.po
@@ -3,16 +3,17 @@
# This file is distributed under the same license as the PACKAGE package.
#
# Translators:
-# jordimash <jmas@softcatala.org>, 2013
+# Jordi Mas <jmas@softcatala.org>, 2013
msgid ""
msgstr ""
"Project-Id-Version: FreeIPA\n"
"Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/"
"newticket\n"
-"POT-Creation-Date: 2013-10-09 14:39+0200\n"
-"PO-Revision-Date: 2013-08-01 14:06+0000\n"
+"POT-Creation-Date: 2014-06-27 16:29+0200\n"
+"PO-Revision-Date: 2014-06-25 19:44+0000\n"
"Last-Translator: Petr Viktorin <encukou@gmail.com>\n"
-"Language-Team: Catalan <fedora@llistes.softcatala.org>\n"
+"Language-Team: Catalan (http://www.transifex.com/projects/p/freeipa/language/"
+"ca/)\n"
"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -46,6 +47,9 @@ msgstr "Subarbre"
msgid "Description"
msgstr "Descripció"
+msgid "Users"
+msgstr "Usuaris"
+
msgid "Location"
msgstr "Ubicació"
@@ -121,18 +125,12 @@ msgstr "Algorisme"
msgid "Target"
msgstr "Objectiu"
-msgid "Flags"
-msgstr "Indicadors"
-
-msgid "Protocol"
-msgstr "Protocol"
-
-msgid "Public Key"
-msgstr "Clau pública"
-
msgid "Size"
msgstr "Mida"
+msgid "Flags"
+msgstr "Indicadors"
+
msgid "Regular Expression"
msgstr "Expressió regular"
@@ -145,12 +143,6 @@ msgstr "Pes"
msgid "Port"
msgstr "Port"
-msgid "Labels"
-msgstr "Etiquetes"
-
-msgid "Signature"
-msgstr "Signatura"
-
msgid "Fingerprint"
msgstr "Empremta"
@@ -169,9 +161,6 @@ msgstr "Nom del grup"
msgid "Enabled"
msgstr "S'ha habilitat"
-msgid "Users"
-msgstr "Usuaris"
-
msgid "Services"
msgstr "Serveis"
@@ -421,9 +410,6 @@ msgstr "Nom de l'ordinador"
msgid "User"
msgstr "Usuari"
-msgid "Identity"
-msgstr "Identitat"
-
msgid "Active Directory domain"
msgstr "Domini d'Active Directory"
@@ -469,6 +455,9 @@ msgstr "Inhabilitat"
msgid "DNS"
msgstr "DNS"
+msgid "Identity"
+msgstr "Identitat"
+
msgid "Policy"
msgstr "Política"
@@ -493,6 +482,9 @@ msgstr "Continua"
msgid "Netgroup name"
msgstr "Nom de grup de xarxa"
+msgid "Manager"
+msgstr "Gestor"
+
msgid "Invalid credentials"
msgstr "Credencials no vàlides"
@@ -502,30 +494,30 @@ msgstr "permisos"
msgid "Group"
msgstr "Grup"
+msgid "Server"
+msgstr "Servidor"
+
msgid "Role"
msgstr "Rol"
msgid "services"
msgstr "serveis"
+msgid "user"
+msgstr "usuari"
+
+msgid "users"
+msgstr "usuaris"
+
msgid "Unknown"
msgstr "Desconegut"
msgid "Trust"
msgstr "Confiança"
-msgid "Server"
-msgstr "Servidor"
-
msgid "Time now"
msgstr "L'hora actual"
-msgid "user"
-msgstr "usuari"
-
-msgid "users"
-msgstr "usuaris"
-
msgid "User login"
msgstr "Entrada"
@@ -571,9 +563,6 @@ msgstr "Número de fax"
msgid "Job Title"
msgstr "Càrrec"
-msgid "Manager"
-msgstr "Gestor"
-
msgid "Self"
msgstr "Ell mateix"
diff --git a/install/po/cs.po b/install/po/cs.po
index 9de521e8c..561cca10a 100644
--- a/install/po/cs.po
+++ b/install/po/cs.po
@@ -9,10 +9,10 @@ msgstr ""
"Project-Id-Version: FreeIPA\n"
"Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/"
"newticket\n"
-"POT-Creation-Date: 2013-10-09 14:39+0200\n"
-"PO-Revision-Date: 2013-08-01 14:06+0000\n"
+"POT-Creation-Date: 2014-06-27 16:29+0200\n"
+"PO-Revision-Date: 2014-06-25 19:44+0000\n"
"Last-Translator: Petr Viktorin <encukou@gmail.com>\n"
-"Language-Team: Czech (http://www.transifex.com/projects/p/fedora/language/"
+"Language-Team: Czech (http://www.transifex.com/projects/p/freeipa/language/"
"cs/)\n"
"Language: cs\n"
"MIME-Version: 1.0\n"
diff --git a/install/po/de.po b/install/po/de.po
index ab59591a5..ca7d0cdc7 100644
--- a/install/po/de.po
+++ b/install/po/de.po
@@ -4,16 +4,18 @@
#
# Translators:
# Fabian Affolter <fab@fedoraproject.org>, 2011
+# Mario Blättermann <mario.blaettermann@gmail.com>, 2011,2014
# Mario Blättermann <mario.blaettermann@gmail.com>, 2011
msgid ""
msgstr ""
"Project-Id-Version: FreeIPA\n"
"Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/"
"newticket\n"
-"POT-Creation-Date: 2013-10-09 14:39+0200\n"
-"PO-Revision-Date: 2013-08-01 14:06+0000\n"
+"POT-Creation-Date: 2014-06-27 16:29+0200\n"
+"PO-Revision-Date: 2014-06-25 19:44+0000\n"
"Last-Translator: Petr Viktorin <encukou@gmail.com>\n"
-"Language-Team: German <trans-de@lists.fedoraproject.org>\n"
+"Language-Team: German (http://www.transifex.com/projects/p/freeipa/language/"
+"de/)\n"
"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -28,33 +30,392 @@ msgstr "Geben Sie %(label)s zum Überprüfen ein:"
msgid "Passwords do not match!"
msgstr "Passwörter stimmen nicht überein!"
+msgid "Command name"
+msgstr "Befehlsname"
+
+msgid "Positional arguments"
+msgstr "Positionale Argumente"
+
+msgid "No file to read"
+msgstr "Keine Datei zum Lesen"
+
+msgid "A string searched in all relevant object attributes"
+msgstr ""
+"Eine Zeichenkette, nach der in allen relevanten Objektattributen gesucht wird"
+
+#, python-format
+msgid "unknown error %(code)d from %(server)s: %(error)s"
+msgstr "Unbekannter Fehler %(code)d von %(server)s: %(error)s"
+
msgid "an internal error has occurred"
msgstr "Ein interner Fehler ist aufgetreten"
+#, python-format
+msgid "Invalid JSON-RPC request: %(error)s"
+msgstr "Ungültige JSON-RPC-Anfrage: %(error)s"
+
+#, python-format
+msgid "Missing or invalid HTTP Referer, %(referer)s"
+msgstr "Fehlende oder ungültige HTTP-Referenz, %(referer)s"
+
+#, python-format
+msgid "Kerberos error: %(major)s/%(minor)s"
+msgstr "Kerberos-Fehler: %(major)s/%(minor)s"
+
+msgid "did not receive Kerberos credentials"
+msgstr "Kerberos-Anmeldedaten wurden nicht empfangen"
+
msgid "No credentials cache found"
msgstr "Keine Anmeldeinformationen-Cache gefunden"
msgid "Ticket expired"
msgstr "Ticket abgelaufen"
+msgid "Credentials cache permissions incorrect"
+msgstr "Zugriffsrechte des Anmeldedaten-Zwischenspeichers sind inkorrekt."
+
+msgid "Bad format in credentials cache"
+msgstr "Falsches Format im Anmeldedaten-Zwischenspeicher"
+
+msgid "Cannot resolve KDC for requested realm"
+msgstr "KDC für angeforderten Realm konnte nicht aufgelöst werden."
+
+msgid "Session error"
+msgstr "Sitzungsfehler"
+
+#, python-format
+msgid "Insufficient access: %(info)s"
+msgstr "Unzureichender Zugriff: %(info)s"
+
msgid "Passwords do not match"
msgstr "Passwörter stimmen nicht überein"
msgid "Command not implemented"
msgstr "Befehl nicht implementiert"
+msgid "Client is not configured. Run ipa-client-install."
+msgstr "Client ist nicht konfiguriert. Rufen Sie ipa-client-install auf."
+
+#, python-format
+msgid "Could not get %(name)s interactively"
+msgstr "%(name)s konnte nicht interaktiv ermittelt werden"
+
+#, python-format
+msgid "%(reason)s"
+msgstr "%(reason)s"
+
msgid "This entry already exists"
msgstr "Dieser Eintrag existiert bereits"
#, python-format
+msgid ""
+"Service principal is not of the form: service/fully-qualified host name: "
+"%(reason)s"
+msgstr ""
+"Principal des Dienstes folgt nicht der Form »Dienst/voll ausgeschriebener "
+"Hostname«: %(reason)s"
+
+msgid ""
+"The realm for the principal does not match the realm for this IPA server"
+msgstr "Der Realm des Principals passt nicht zum Realm dieses IPA-Servers."
+
+msgid "This command requires root access"
+msgstr "Dieser Befehl erfordert Root-Zugriff"
+
+msgid "This is already a posix group"
+msgstr "Dies ist bereits eine POSIX-Gruppe"
+
+msgid "This entry is already enabled"
+msgstr "Dieser Eintrag ist bereits aktiviert"
+
+msgid "This entry is already disabled"
+msgstr "Dieser Eintrag ist bereits deaktiviert"
+
+msgid "This entry cannot be enabled or disabled"
+msgstr "Dieser Eintrag kann nicht aktiviert oder deaktiviert werden"
+
+msgid "This entry is not a member"
+msgstr "Dieser Eintrag ist kein Mitglied"
+
+msgid "A group may not be a member of itself"
+msgstr "Eine Gruppe kann kein Mitglied von sich selbst sein"
+
+msgid "This entry is already a member"
+msgstr "Dieser Eintrag ist bereits ein Mitglied"
+
+#, python-format
+msgid "Base64 decoding failed: %(reason)s"
+msgstr "Base64-Dekodierung fehlgeschlagen: %(reason)s"
+
+msgid "A group may not be added as a member of itself"
+msgstr "Eine Gruppe kann nicht als Mitglied von sich selbst hinzugefügt werden"
+
+msgid "The default users group cannot be removed"
+msgstr "Die vorgegebene Benutzergruppe kann nicht entfernt werden"
+
+msgid "Host does not have corresponding DNS A record"
+msgstr "Host verfügt nicht über einen entsprechenden DNS-A-Datensatz."
+
+msgid "Deleting a managed group is not allowed. It must be detached first."
+msgstr ""
+"Das Löschen einer verwalteten Gruppe ist unzulässig. Sie muss zuerst aus der "
+"Verwaltung entfernt werden."
+
+msgid "A managed group cannot have a password policy."
+msgstr "Eine verwaltete Gruppe kann keine Passwort-Policy haben."
+
+#, python-format
+msgid "'%(entry)s' doesn't have a certificate."
+msgstr "»%(entry)s« verfügt nicht über ein Zertifikat."
+
+#, python-format
+msgid "Unable to create private group. A group '%(group)s' already exists."
+msgstr ""
+"Die private Gruppe konnte nicht erstellt werden. Eine Gruppe »%(group)s« "
+"existiert bereits."
+
+#, python-format
+msgid ""
+"A problem was encountered when verifying that all members were %(verb)s: "
+"%(exc)s"
+msgstr ""
+"Ein Problem trat bei der Überprüfung auf, ob alle Mitglieder %(verb)s waren: "
+"%(exc)s"
+
+#, python-format
+msgid "%(attr)s does not contain '%(value)s'"
+msgstr "%(attr)s enthält nicht »%(value)s«"
+
+#, python-format
+msgid ""
+"The search criteria was not specific enough. Expected 1 and found %(found)d."
+msgstr ""
+"Die Suchkriterien waren nicht spezifisch genug. 1 wurde erwartet, aber "
+"%(found)d gefunden."
+
+msgid "change collided with another change"
+msgstr "Änderung kollidiert mit einer anderen Änderung"
+
+msgid "no modifications to be performed"
+msgstr "Keine anzuwendenden Änderungen"
+
+#, python-format
+msgid "%(desc)s: %(info)s"
+msgstr "%(desc)s: %(info)s"
+
+msgid "limits exceeded for this query"
+msgstr "Begrenzung wurde für diese Abfrage überschritten."
+
+#, python-format
+msgid "%(info)s"
+msgstr "%(info)s"
+
+msgid "modifying primary key is not allowed"
+msgstr "Ändern des primären Schlüssels ist nicht erlaubt."
+
+#, python-format
+msgid "%(attr)s: Only one value allowed."
+msgstr "%(attr)s: Nur ein Wert erlaubt."
+
+#, python-format
+msgid "%(attr)s: Invalid syntax."
+msgstr "%(attr)s: Ungültige Syntax."
+
+#, python-format
+msgid "Bad search filter %(info)s"
+msgstr "Falscher Suchfilter %(info)s"
+
+#, python-format
+msgid "Certificate operation cannot be completed: %(error)s"
+msgstr "Zertifikat-Operation kann nicht abgeschlossen werden: %(error)s"
+
+#, python-format
+msgid "Certificate format error: %(error)s"
+msgstr "Formatfehler im Zertifikat: %(error)s"
+
+msgid "Already registered"
+msgstr "Bereits registriert"
+
+msgid "Not registered yet"
+msgstr "Noch nicht registriert"
+
+#, python-format
+msgid "%(key)s cannot be deleted because %(label)s %(dependent)s requires it"
+msgstr ""
+"%(key)s kann nicht gelöscht werden, weil es von %(label)s %(dependent)s "
+"benötigt wird."
+
+msgid "Results are truncated, try a more specific search"
+msgstr ""
+"Ergebnisse wurden abgeschnitten, versuchen Sie eine spezifischere Suche."
+
+msgid ""
+"Retrieve and print all attributes from the server. Affects command output."
+msgstr ""
+"Ermittelt alle Attribute des Servers und gibt diese aus. Dies wirkt sich auf "
+"die Befehlsausgabe aus."
+
+msgid "Print entries as stored on the server. Only affects output format."
+msgstr ""
+"Gibt die Einträge so aus, wie sie auf dem Server gespeichert sind. Dies "
+"wirkt sich nur auf das Ausgabeformat aus."
+
+msgid "Client version. Used to determine if server will accept request."
+msgstr ""
+"Client-Version. Dadurch wird bestimmt, ob der Server die Anfrage akzeptiert."
+
+msgid "Forward to server instead of running locally"
+msgstr "Zum Server weiterleiten, anstatt lokal auszuführen"
+
+msgid "A list of LDAP entries"
+msgstr "Eine Liste von LDAP-Einträgen"
+
+msgid "All commands should at least have a result"
+msgstr "Alle Befehle sollten mindestens ein Ergebnis haben."
+
+msgid "User-friendly description of action performed"
+msgstr "Benutzerfreundliche Beschreibung der ausgeführten Aktion"
+
+msgid "The primary_key value of the entry, e.g. 'jdoe' for a user"
+msgstr ""
+"Der Wert von »primary_key« des Eintrags, z.B. »jdoe« für einen Benutzer"
+
+msgid "Number of entries returned"
+msgstr "Anzahl der zurückgegebenen Einträge"
+
+msgid "True if not all results were returned"
+msgstr "»True«, falls nicht alle Ergebnisse ausgegeben wurden"
+
+msgid "List of deletions that failed"
+msgstr "Liste der fehlgeschlagenen Löschvorgänge"
+
+msgid "True means the operation was successful"
+msgstr "»True« bedeutet, dass die Operation erfolgreich abgeschlossen wurde."
+
+msgid "incorrect type"
+msgstr "inkorrekter Typ"
+
+msgid "Only one value is allowed"
+msgstr "Nur ein Wert ist erlaubt"
+
+msgid "must be True or False"
+msgstr "muss »True« oder »False« sein"
+
+msgid "must be an integer"
+msgstr "muss eine Ganzzahl sein"
+
+#, python-format
+msgid "must be at least %(minvalue)d"
+msgstr "muss mindestens %(minvalue)d sein"
+
+#, python-format
+msgid "can be at most %(maxvalue)d"
+msgstr "darf höchstens %(maxvalue)d sein"
+
+msgid "must be a decimal number"
+msgstr "muss eine Dezimalzahl sein"
+
+#, python-format
+msgid "must be at least %(minvalue)s"
+msgstr "muss mindestens %(minvalue)s sein"
+
+#, python-format
+msgid "can be at most %(maxvalue)s"
+msgstr "darf höchstens %(maxvalue)s sein"
+
+#, python-format
+msgid "must match pattern \"%(pattern)s\""
+msgstr "muss dem Muster »%(pattern)s« entsprechen"
+
+msgid "must be binary data"
+msgstr "muss im Binärformat sein"
+
+#, python-format
+msgid "must be at least %(minlength)d bytes"
+msgstr "muss mindestens %(minlength)d Bytes groß sein"
+
+#, python-format
+msgid "can be at most %(maxlength)d bytes"
+msgstr "darf höchstens %(maxlength)d Bytes groß sein"
+
+#, python-format
+msgid "must be exactly %(length)d bytes"
+msgstr "muss genau %(length)d Bytes groß sein"
+
+msgid "must be Unicode text"
+msgstr "muss Unicode-Text sein"
+
+msgid "Leading and trailing spaces are not allowed"
+msgstr "Führende und angehängte Leerzeichen sind nicht erlaubt."
+
+#, python-format
+msgid "must be at least %(minlength)d characters"
+msgstr "muss mindestens %(minlength)d Zeichen lang sein"
+
+#, python-format
+msgid "can be at most %(maxlength)d characters"
+msgstr "darf höchstens %(maxlength)d Zeichen lang sein"
+
+#, python-format
+msgid "must be exactly %(length)d characters"
+msgstr "muss genau %(length)d Zeichen lang sein"
+
+msgid "A list of ACI values"
+msgstr "Liste von ACI-Werten"
+
+msgid "type, filter, subtree and targetgroup are mutually exclusive"
+msgstr ""
+"»type«, »filter«, »subtree« und »targetgroup« schließen sich gegenseitig aus."
+
+msgid "ACI prefix is required"
+msgstr "ACI-Präfix ist erforderlich"
+
+msgid ""
+"at least one of: type, filter, subtree, targetgroup, attrs or memberof are "
+"required"
+msgstr ""
+"mindestens eines von »type«, »filter«, »subtree«, »targetgroup«, »attrs« "
+"oder »memberof« wird benötigt"
+
+msgid "filter and memberof are mutually exclusive"
+msgstr "»filter« und »memberof« schließen sich gegenseitig aus"
+
+msgid "group, permission and self are mutually exclusive"
+msgstr "»group«, »permission« und »self« schließen sich gegenseitig aus"
+
+msgid "One of group, permission or self is required"
+msgstr "Eines von »group«, »permission« oder »self« wird benötigt"
+
+#, python-format
msgid "Group '%s' does not exist"
-msgstr "Gruppe '%s' existiert nicht"
+msgstr "Gruppe »%s« existiert nicht"
+
+msgid "empty filter"
+msgstr "Filter ist leer"
+
+#, python-format
+msgid "Syntax Error: %(error)s"
+msgstr "Syntaxfehler: %(error)s"
+
+#, python-format
+msgid "ACI with name \"%s\" not found"
+msgstr "ACI mit dem Namen »%s« nicht gefunden"
+
+msgid "ACI prefix"
+msgstr "ACI-Präfix"
+
+msgid ""
+"Prefix used to distinguish ACI types (permission, delegation, selfservice, "
+"none)"
+msgstr ""
+"Präfix zur Unterscheidung der ACI-Typen (permission, delegation, "
+"selfservice, none)"
msgid "ACIs"
msgstr "ACIs"
msgid "ACI name"
-msgstr "ACI-Namen"
+msgstr "ACI-Name"
msgid "User group"
msgstr "Benutzer-Gruppe"
@@ -68,6 +429,9 @@ msgstr "Attribute"
msgid "Type"
msgstr "Typ"
+msgid "type of IPA object (user, group, host, hostgroup, service, netgroup)"
+msgstr "Typ des IPA-Objekts (user, group, host, hostgroup, service, netgroup)"
+
msgid "Member of"
msgstr "Mitglied von"
@@ -77,14 +441,52 @@ msgstr "Mitglied einer Gruppe"
msgid "Filter"
msgstr "Filter"
+msgid "ACI"
+msgstr "ACI"
+
+msgid "New ACI name"
+msgstr "Neuer ACI-Name"
+
+msgid "Description"
+msgstr "Beschreibung"
+
+msgid "Default group for entries to land"
+msgstr "Vorgegebene Gruppe für Einträge"
+
+#, python-format
+msgid "%s is not a valid attribute."
+msgstr "%s ist kein gültiges Attribut"
+
+msgid "Failed to add"
+msgstr "Hinzufügen fehlgeschlagen"
+
+msgid "Conditions that could not be added"
+msgstr "Bedingungen, die nicht hinzugefügt werden konnten"
+
+msgid "Number of conditions added"
+msgstr "Anzahl der hinzugefügten Bedingungen"
+
+msgid "Conditions that could not be removed"
+msgstr "Bedingungen, die nicht entfernt werden konnten"
+
+msgid "Number of conditions removed"
+msgstr "Anzahl der entfernten Bedingungen"
+
+msgid "Users"
+msgstr "Benutzer"
+
msgid "Location"
msgstr "Ort"
+#, python-format
+msgid "File %(file)s not found"
+msgstr "Datei %(file)s nicht gefunden"
+
msgid "Map"
msgstr "Karte"
msgid "Key"
-msgstr "Key"
+msgstr "Schlüssel"
msgid "Mount information"
msgstr "Einhänge-Informationen"
@@ -92,20 +494,1522 @@ msgstr "Einhänge-Informationen"
msgid "description"
msgstr "Beschreibung"
+msgid "Mount point"
+msgstr "Einhängepunkt"
+
+msgid "Password"
+msgstr "Passwort"
+
+msgid "Failed to remove"
+msgstr "Entfernen fehlgeschlagen"
+
+msgid "Failed RunAs"
+msgstr "RunAs fehlgeschlagen"
+
+msgid "Failed RunAsGroup"
+msgstr "RunAsGroup fehlgeschlagen"
+
+msgid "entry"
+msgstr "Eintrag"
+
+msgid "entries"
+msgstr "Einträge"
+
+msgid "Entry"
+msgstr "Eintrag"
+
+#, python-format
+msgid "container entry (%(container)s) not found"
+msgstr "Container-Eintrag (%(container)s) nicht gefunden"
+
+#, python-format
+msgid "%(parent)s: %(oname)s not found"
+msgstr "%(parent)s: %(oname)s nicht gefunden"
+
+#, python-format
+msgid "%(pkey)s: %(oname)s not found"
+msgstr "%(pkey)s: %(oname)s nicht gefunden"
+
+#, python-format
+msgid "%(oname)s with name \"%(pkey)s\" already exists"
+msgstr "%(oname)s mit dem Namen »%(pkey)s« existiert bereits"
+
+msgid ""
+"Set an attribute to a name/value pair. Format is attr=value.\n"
+"For multi-valued attributes, the command replaces the values already present."
+msgstr ""
+"Ein Attribut für ein Attribut-Wert-Paar setzen. Das Format ist "
+"Attribut=Wert.\n"
+"Bei Attributen mit mehreren Werten ersetzt der Befehl die bereits "
+"vorhandenen Werte."
+
+msgid ""
+"Add an attribute/value pair. Format is attr=value. The attribute\n"
+"must be part of the schema."
+msgstr ""
+"Ein Attribut-Wert-Paar hinzufügen. Das Format ist Attribut=Wert.\n"
+"Das Attribut muss Teil des Schemas sein."
+
+msgid ""
+"Delete an attribute/value pair. The option will be evaluated\n"
+"last, after all sets and adds."
+msgstr ""
+"Ein Attribut-Wert-Paar löschen. Diese Option wird zuletzt angewendet,\n"
+"nach allen Optionen, die etwas festlegen oder hinzufügen."
+
+msgid "Continuous mode: Don't stop on errors."
+msgstr "Fortlaufender Modus: Kein Abbruch bei Fehlern."
+
+msgid "Rights"
+msgstr "Rechte"
+
+msgid ""
+"Display the access rights of this entry (requires --all). See ipa man page "
+"for details."
+msgstr ""
+"Zugriffsrechte dieses Eintrags anzeigen (erfordert --all). In der "
+"Handbuchseite zu ipa finden Sie weitere Details."
+
+msgid "Rename"
+msgstr "Umbenennen"
+
+#, python-format
+msgid "Rename the %(ldap_obj_name)s object"
+msgstr "Das %(ldap_obj_name)s-Objekt umbenennen"
+
+msgid "the entry was deleted while being modified"
+msgstr "Der Eintrag wurde während der Änderung entfernt."
+
+msgid "Members that could not be added"
+msgstr "Mitglieder, die nicht hinzugefügt werden konnten"
+
+msgid "Number of members added"
+msgstr "Zahl der hinzugefügten Mitglieder"
+
+msgid "Members that could not be removed"
+msgstr "Mitglieder, die nicht entfernt werden konnten"
+
+msgid "Number of members removed"
+msgstr "Anzahl der entfernten Mitglieder"
+
+msgid "Primary key only"
+msgstr "Nur primärer Schlüssel"
+
+msgid "Time Limit"
+msgstr "Zeitbegrenzung"
+
+msgid "Time limit of search in seconds"
+msgstr "Zeitbegrenzung für den Suchvorgang in Sekunden"
+
+msgid "Maximum number of entries returned"
+msgstr "Maximale Anzahl der zurückgegebenen Einträge"
+
+#, python-format
+msgid "Failure decoding Certificate Signing Request: %s"
+msgstr "Fehler beim Dekodieren der Signaturanfrage für das Zertifikat: %s"
+
+msgid "CSR"
+msgstr "CSR"
+
+msgid "Principal"
+msgstr "Principal"
+
+msgid "Service principal for this certificate (e.g. HTTP/test.example.com)"
+msgstr "Dienst-Principal für dieses Zertifikat (z.B. HTTP/test.example.com)"
+
+msgid "automatically add the principal if it doesn't exist"
+msgstr "Den Principal automatisch hinzufügen, falls dieser nicht existiert"
+
msgid "Certificate"
msgstr "Zertifikat"
msgid "Subject"
msgstr "Betreff"
+msgid "Issuer"
+msgstr "Ausgabestelle"
+
+msgid "Not Before"
+msgstr "Nicht vor"
+
+msgid "Not After"
+msgstr "Nicht nach"
+
+msgid "Fingerprint (MD5)"
+msgstr "Fingerabdruck (MD5)"
+
+msgid "Fingerprint (SHA1)"
+msgstr "Fingerabdruck (SHA1)"
+
+msgid "Serial number"
+msgstr "Seriennummer"
+
+msgid "Check the status of a certificate signing request."
+msgstr "Den Status der Signaturanfrage des Zertifikats überprüfen."
+
+msgid "Request id"
+msgstr "Anfrage-ID"
+
+msgid "Request status"
+msgstr "Anfragestatus"
+
+msgid "Serial number in decimal or if prefixed with 0x in hexadecimal"
+msgstr ""
+"Seriennummer in Dezimalschreibweise oder (bei Präfix 0x) in "
+"Hexadezimalschreibweise"
+
+msgid "Retrieve an existing certificate."
+msgstr "Ein existierendes Zertifikat holen."
+
+msgid "Revocation reason"
+msgstr "Grund des Widerrufs"
+
+msgid "Output filename"
+msgstr "Name der Ausgabedatei"
+
+msgid "File to store the certificate in."
+msgstr "Datei, in der das Zertifikat gespeichert werden soll."
+
+msgid "Revoke a certificate."
+msgstr "Ein Zertifikat widerrufen."
+
+msgid "Revoked"
+msgstr "Widerrufen"
+
msgid "Reason"
msgstr "Grund"
+msgid "Reason for revoking the certificate (0-10)"
+msgstr "Grund für den Widerruf des Zertifikats (0-10)"
+
+msgid "7 is not a valid revocation reason"
+msgstr "7 ist kein gültiger Grund für einen Widerruf."
+
+msgid "Unrevoked"
+msgstr "Nicht widerrufen"
+
msgid "Error"
msgstr "Fehler"
+msgid "Status"
+msgstr "Status"
+
+msgid "configuration options"
+msgstr "Konfigurationsoptionen"
+
+msgid "Configuration"
+msgstr "Konfiguration"
+
+msgid "Maximum username length"
+msgstr "Maximale Länge des Benutzernamens"
+
+msgid "Home directory base"
+msgstr "Basis für Home-Verzeichnisse"
+
+msgid "Default location of home directories"
+msgstr "Vorgegebener Ort für Home-Verzeichnisse"
+
+msgid "Default shell"
+msgstr "Vorgabe-Shell"
+
+msgid "Default shell for new users"
+msgstr "Vorgegebene Shell für neue Benutzer"
+
+msgid "Default users group"
+msgstr "Vorgegebene Gruppe des Benutzers"
+
+msgid "Default group for new users"
+msgstr "Vorgegebene Gruppe für neue Benutzer"
+
+msgid "Enable migration mode"
+msgstr "Migrationsmodus aktivieren"
+
+msgid "Password plugin features"
+msgstr "Passwort-Plugin-Funktionen"
+
+msgid "Extra hashes to generate in password plug-in"
+msgstr "Im Passwort-Plugin zusätzlich zu erzeugende Prüfsummen"
+
+msgid "Default SELinux user"
+msgstr "Vorgegebener SELinux-Benutzer"
+
+msgid "Default SELinux user when no match is found in SELinux map rule"
+msgstr ""
+"Vorgegebener SELinux-Benutzer, sofern in den Zuweisungsregeln von SELinux "
+"nichts anderes bestimmt ist"
+
+msgid "Modify configuration options."
+msgstr "Konfigurationsoptionen bearbeiten."
+
+msgid "The group doesn't exist"
+msgstr "Die Gruppe existiert nicht"
+
+#, python-format
+msgid "attribute \"%s\" not allowed"
+msgstr "Attribut »%s« ist nicht erlaubt"
+
+msgid "May not be empty"
+msgstr "Darf nicht leer sein"
+
+msgid "Show the current configuration."
+msgstr "Die aktuelle Konfiguration anzeigen."
+
+#, python-format
+msgid "invalid IP address version (is %(value)d, must be %(required_value)d)!"
+msgstr ""
+"Ungültige IP-Adressversion (ist %(value)d, muss %(required_value)d) sein!"
+
+msgid "invalid IP address format"
+msgstr "Ungültiges IP-Adressformat"
+
+msgid "invalid IP network format"
+msgstr "Ungültiges IP-Netzwerkformat"
+
+#, python-format
+msgid "(see RFC %s for details)"
+msgstr "(siehe RFC %s für Details)"
+
+#, python-format
+msgid "'%s' is a required part of DNS record"
+msgstr "»%s« ist ein erforderlicher Teil des DNS-Datensatzes"
+
+#, python-format
+msgid "format must be specified as \"%(format)s\" %(rfcs)s"
+msgstr "Format muss als »%(format)s« %(rfcs)s angegeben werden"
+
+msgid "IP Address"
+msgstr "IP-Adresse"
+
+msgid "Subtype"
+msgstr "Untertyp"
+
+msgid "Hostname"
+msgstr "Hostname"
+
+msgid "Certificate Type"
+msgstr "Zertifikattyp"
+
+msgid "Algorithm"
+msgstr "Algorithmus"
+
+msgid "Certificate/CRL"
+msgstr "Zertifikat/CRL"
+
+msgid "Target"
+msgstr "Ziel"
+
+msgid "Digest Type"
+msgstr "Prüfsummentyp"
+
+msgid "Digest"
+msgstr "Prüfsumme"
+
+msgid "Preference"
+msgstr "Bevorzugung"
+
+msgid "Altitude"
+msgstr "Höhe"
+
+msgid "Size"
+msgstr "Größe"
+
+msgid "Horizontal Precision"
+msgstr "Horizontale Genauigkeit"
+
+msgid "Vertical Precision"
+msgstr "Vertikale Genauigkeit"
+
+#, python-format
+msgid "'%(required)s' must not be empty when '%(name)s' is set"
+msgstr "»%(required)s« darf nicht leer sein, wenn »%(name)s« gesetzt ist."
+
+msgid "Flags"
+msgstr "Flags"
+
+msgid "Service"
+msgstr "Dienst"
+
+msgid "Regular Expression"
+msgstr "Regulärer Ausdruck"
+
+msgid "Replacement"
+msgstr "Ersetzung"
+
+msgid "Priority"
+msgstr "Priorität"
+
+msgid "Port"
+msgstr "Port"
+
+msgid "Fingerprint Type"
+msgstr "Fingerabdruck-Typ"
+
+msgid "Fingerprint"
+msgstr "Fingerabdruck"
+
+msgid "Text Data"
+msgstr "Textdaten"
+
+msgid "Records"
+msgstr "Datensätze"
+
+msgid "Record type"
+msgstr "Datensatztyp"
+
+msgid "Zone name"
+msgstr "Zonenname"
+
+msgid "Zone name (FQDN)"
+msgstr "Zonenname (FQDN)"
+
+msgid "Active zone"
+msgstr "Aktive Zone"
+
+msgid "Is zone active?"
+msgstr "Ist die Zone aktiv?"
+
+msgid "DNS is not configured"
+msgstr "DNS ist nicht konfiguriert"
+
+msgid "DNS zone"
+msgstr "DNS-Zone"
+
+msgid "DNS zones"
+msgstr "DNS-Zonen"
+
+msgid "DNS Zones"
+msgstr "DNS-Zonen"
+
+msgid "DNS Zone"
+msgstr "DNS-Zone"
+
+msgid "Administrator e-mail address"
+msgstr "E-Mail-Adresse des Administrators"
+
+msgid "Time to live"
+msgstr "Lebensdauer"
+
+msgid "Dynamic update"
+msgstr "Dynamische Aktualisierung"
+
+msgid "Allow dynamic updates."
+msgstr "Dynamische Aktualisierungen erlauben."
+
+msgid "Record name"
+msgstr "Datensatzname"
+
+msgid "Class"
+msgstr "Klasse"
+
+msgid "DNS class"
+msgstr "DNS-Klasse"
+
+msgid "Structured"
+msgstr "Strukturiert"
+
+msgid "DNS records can be only updated one at a time"
+msgstr "Es können nicht mehrere DNS-Datensätze aktualisiert werden."
+
+msgid "No option to modify specific record provided."
+msgstr "Keine Option zum Ändern des spezifischen Datensatzes angegeben."
+
+msgid "Current DNS record contents:\n"
+msgstr "Derzeitiger Inhalt des DNS-Datensatzes:\n"
+
+#, python-format
+msgid "Modify %(name)s '%(value)s'?"
+msgstr "Wert von %(name)s auf »%(value)s« ändern?"
+
+#, python-format
+msgid "Deleted record \"%(value)s\""
+msgstr "Datensatz »%(value)s« gelöscht"
+
+msgid "Delete all associated records"
+msgstr "Alle zugehörigen Datensätze löschen"
+
+#, python-format
+msgid "Zone record '%s' cannot be deleted"
+msgstr "Zonen-Datensatz »%s« kann nicht gelöscht werden"
+
+msgid "No option to delete specific record provided."
+msgstr "Keine Option zum Löschen des spezifischen Datensatzes angegeben."
+
+msgid "Delete all?"
+msgstr "Alles löschen?"
+
+#, python-format
+msgid "Delete %(name)s '%(value)s'?"
+msgstr "Wert von %(name)s auf »%(value)s« löschen?"
+
+msgid "Display DNS resource."
+msgstr "DNS-Ressource anzeigen."
+
+msgid "Search for DNS resources."
+msgstr "Nach DNS-Ressourcen suchen."
+
+#, python-format
+msgid "Found '%(value)s'"
+msgstr "»%(value)s« gefunden"
+
+#, python-format
+msgid "Host '%(host)s' not found"
+msgstr "Host »%(host)s« nicht gefunden"
+
+msgid "group"
+msgstr "Gruppe"
+
+msgid "groups"
+msgstr "Gruppen"
+
+msgid "User Groups"
+msgstr "Benutzergruppen"
+
+msgid "User Group"
+msgstr "Benutzergruppe"
+
+msgid "Group name"
+msgstr "Gruppenname"
+
+msgid "Group description"
+msgstr "Gruppenbeschreibung"
+
+msgid "GID"
+msgstr "Gruppen-ID"
+
+msgid "GID (use this option to set it manually)"
+msgstr "Gruppen-ID (verwenden Sie diese Option, um die ID manuell anzugeben)"
+
+msgid "Create a new group."
+msgstr "Eine neue Gruppe erstellen."
+
+#, python-format
+msgid "Added group \"%(value)s\""
+msgstr "Gruppe »%(value)s« hinzugefügt"
+
+msgid "Create as a non-POSIX group"
+msgstr "Als Nicht-POSIX-Gruppe erstellen"
+
+msgid "Delete group."
+msgstr "Gruppe löschen."
+
+#, python-format
+msgid "Deleted group \"%(value)s\""
+msgstr "Gruppe »%(value)s« gelöscht"
+
+msgid "Modify a group."
+msgstr "Eine Gruppe ändern."
+
+#, python-format
+msgid "Modified group \"%(value)s\""
+msgstr "Gruppe »%(value)s« geändert"
+
+msgid "change to a POSIX group"
+msgstr "in eine POSIC-Gruppe ändern"
+
+msgid "Search for groups."
+msgstr "Nach Gruppen suchen."
+
+#, python-format
+msgid "%(count)d group matched"
+msgid_plural "%(count)d groups matched"
+msgstr[0] "%(count)d passende Gruppe"
+msgstr[1] "%(count)d passende Gruppen"
+
+msgid "search for private groups"
+msgstr "nach privaten Gruppen suchen"
+
+msgid "Display information about a named group."
+msgstr "Informationen zu einer genannten Gruppe anzeigen."
+
+msgid "Add members to a group."
+msgstr "Mitglieder zu einer Gruppe hinzufügen."
+
+msgid "Remove members from a group."
+msgstr "Mitglieder aus einer Gruppe entfernen."
+
+msgid "not allowed to modify user entries"
+msgstr "Es ist nicht erlaubt, Benutzereinträge zu ändern."
+
+msgid "not allowed to modify group entries"
+msgstr "Es ist nicht erlaubt, Gruppeneinträge zu ändern."
+
+msgid "Not a managed group"
+msgstr "Keine verwaltete Gruppe"
+
+msgid "HBAC rule"
+msgstr "HBAC-Regel"
+
+msgid "HBAC rules"
+msgstr "HBAC-Regeln"
+
+msgid "HBAC Rules"
+msgstr "Es ist nicht erlaubt, Benutzereinträge zu ändern."
+
+msgid "HBAC Rule"
+msgstr "HBAC-Regel"
+
+msgid "Rule name"
+msgstr "Regelname"
+
+msgid "Rule type (allow)"
+msgstr "Regeltyp (erlauben)"
+
+msgid "Rule type"
+msgstr "Regeltyp"
+
+msgid "User category"
+msgstr "Benutzerkategorie"
+
+msgid "User category the rule applies to"
+msgstr "Benutzerkategorie, auf welche die Regel angewendet werden soll"
+
+msgid "Host category"
+msgstr "Host-Kategorie"
+
+msgid "Host category the rule applies to"
+msgstr "Host-Kategorie, auf welche die Regel angewendet werden soll"
+
+msgid "Enabled"
+msgstr "Aktiviert"
+
+msgid "Services"
+msgstr "Dienste"
+
+msgid "Access time"
+msgstr "Zugriffszeit"
+
+msgid "HBAC service"
+msgstr "HBAC-Dienst"
+
+msgid "HBAC services"
+msgstr "HBAC-Dienste"
+
+msgid "HBAC Services"
+msgstr "HBAC-Dienste"
+
+msgid "HBAC Service"
+msgstr "HBAC-Dienst"
+
+msgid "Service name"
+msgstr "Dienstname"
+
+msgid "HBAC service description"
+msgstr "Beschreibung des HBAC-Dienstes"
+
+msgid "Add a new HBAC service."
+msgstr "Einen neuen HBAC-Dienst hinzufügen."
+
+msgid "Search for HBAC services."
+msgstr "Nach HBAC-Diensten suchen."
+
+msgid "Display information about an HBAC service."
+msgstr "Informationen zu einem HBAC-Dienst anzeigen."
+
+msgid "Warning"
+msgstr "Warnung"
+
+msgid "Result of simulation"
+msgstr "Ergebnis der Simulation"
+
+msgid "User name"
+msgstr "Benutzername"
+
+#, python-format
+msgid "Access granted: %s"
+msgstr "Zugriff gewährt: %s"
+
+msgid "Serial Number"
+msgstr "Seriennummer"
+
+msgid "SSH public key fingerprint"
+msgstr "Fingerabdruck des öffentlichen SSH-Schlüssels"
+
+#, python-format
+msgid "invalid domain-name: %s"
+msgstr "Ungültiger Domainname: %s"
+
+msgid "Platform"
+msgstr "Plattform"
+
+msgid "Operating system"
+msgstr "Betriebssystem"
+
+msgid "User password"
+msgstr "Benutzerpasswort"
+
+msgid "Random password"
+msgstr "Zufälliges Passwort"
+
+msgid "Principal name"
+msgstr "Principal-Name"
+
+msgid "MAC address"
+msgstr "MAC-Adresse"
+
+msgid "Name of object to export"
+msgstr "Name des zu exportierenden Objekts"
+
+msgid "Name of method to export"
+msgstr "Name des zu exportierenden Methode"
+
+msgid "Name of command to export"
+msgstr "Name des zu exportierenden Befehls"
+
+msgid "No entries."
+msgstr "Keine Einträge."
+
+msgid "Show Results"
+msgstr "Ergebnisse anzeigen"
+
+msgid "Add"
+msgstr "Hinzufügen"
+
+msgid "Add and Add Another"
+msgstr "Hinzufügen und weitere hinzufügen"
+
+msgid "Add and Close"
+msgstr "Hinzufügen und schließen"
+
+msgid "Add and Edit"
+msgstr "Hinzufügen und bearbeiten"
+
+msgid "Cancel"
+msgstr "Abbrechen"
+
+msgid "Close"
+msgstr "Schließen"
+
+msgid "Disable"
+msgstr "Deaktivieren"
+
+msgid "Edit"
+msgstr "Bearbeiten"
+
+msgid "Enable"
+msgstr "Aktivieren"
+
+msgid "Find"
+msgstr "Suchen"
+
+msgid "OK"
+msgstr "OK"
+
+msgid "Refresh"
+msgstr "Aktualisieren"
+
+msgid "Delete"
+msgstr "Löschen"
+
+msgid "Reset"
+msgstr "Zurücksetzen"
+
+msgid "Restore"
+msgstr "Wiederherstellen"
+
+msgid "Revoke"
+msgstr "Widerrufen"
+
+msgid "Update"
+msgstr "Aktualisieren"
+
+msgid "View"
+msgstr "Ansicht"
+
+msgid "Collapse All"
+msgstr "Alle einklappen"
+
+msgid "Expand All"
+msgstr "Alle aufklappen"
+
+msgid "Back to Top"
+msgstr "Zurück nach oben"
+
+#, python-brace-format
+msgid "Add ${entity}"
+msgstr "${entity} hinzufügen"
+
+msgid "Available"
+msgstr "Verfügbar"
+
+msgid "Confirmation"
+msgstr "Bestätigung"
+
+msgid "Unsaved Changes"
+msgstr "Ungespeicherte Änderungen"
+
+msgid "Hide details"
+msgstr "Details verbergen"
+
+#, python-brace-format
+msgid "Remove ${entity}"
+msgstr "${entity} entfernen"
+
+msgid "Show details"
+msgstr "Details anzeigen"
+
+msgid "HTTP Error"
+msgstr "HTTP-Fehler"
+
+msgid "Internal Error"
+msgstr "Interner Fehler"
+
+msgid "IPA Error"
+msgstr "IPA-Fehler"
+
+msgid "No response"
+msgstr "Keine Antwort"
+
+msgid "Unknown Error"
+msgstr "Unbekannter Fehler"
+
+msgid "URL"
+msgstr "URL"
+
+msgid "Settings"
+msgstr "Einstellungen"
+
+msgid "Search"
+msgstr "Suchen"
+
+msgid "Logged In As"
+msgstr "Angemeldet als"
+
+msgid "Username"
+msgstr "Benutzername"
+
+msgid "Attribute"
+msgstr "Attribut"
+
+msgid "Add Rule"
+msgstr "Regel hinzufügen"
+
+msgid "Expression"
+msgstr "Ausdruck"
+
+msgid "Direct"
+msgstr "Direkt"
+
+msgid "Indirect"
+msgstr "Indirekt"
+
+msgid "Certificates"
+msgstr "Zertifikate"
+
+msgid "Expires On"
+msgstr "Läuft ab am"
+
+msgid "Issued By"
+msgstr "Ausgegeben von"
+
+msgid "Issued On"
+msgstr "Ausgegeben am"
+
+msgid "MD5 Fingerprint"
+msgstr "MD5-Fingerabdruck"
+
+msgid "No Valid Certificate"
+msgstr "Kein gültiges Zertifikat"
+
+msgid "New Certificate"
+msgstr "Neues Zertifikat"
+
+msgid "Organization"
+msgstr "Organisation"
+
+msgid "SHA1 Fingerprint"
+msgstr "SHA1-Fingerabdruck"
+
+msgid "Unspecified"
+msgstr "Nicht angegeben"
+
+msgid "Validity"
+msgstr "Gültigkeit"
+
+msgid "Group Options"
+msgstr "Gruppenoptionen"
+
+msgid "Search Options"
+msgstr "Suchoptionen"
+
+msgid "SELinux Options"
+msgstr "SELinux-Optionen"
+
+msgid "User Options"
+msgstr "Benutzeroptionen"
+
+msgid "Options"
+msgstr "Optionen"
+
+msgid "Data"
+msgstr "Daten"
+
+msgid "Other Record Types"
+msgstr "Andere Datensatztypen"
+
+msgid "Record not found."
+msgstr "Datensatz nicht gefunden."
+
+msgid "Group Settings"
+msgstr "Gruppeneinstellungen"
+
+msgid "External"
+msgstr "Extern"
+
+msgid "Any Host"
+msgstr "Jeder Host"
+
+msgid "Any Service"
+msgstr "Jeder Dienst"
+
+msgid "Access Denied"
+msgstr "Zugriff verweigert"
+
+msgid "Access Granted"
+msgstr "Zugriff gewährt"
+
+msgid "New Test"
+msgstr "Neuer Test"
+
+msgid "Kerberos Key"
+msgstr "Kerberos-Schlüssel"
+
+msgid "User"
+msgstr "Benutzer"
+
+msgid "Groups"
+msgstr "Gruppen"
+
+msgid "Commands"
+msgstr "Befehle"
+
+msgid "Allow"
+msgstr "Erlauben"
+
+msgid "Run Commands"
+msgstr "Befehle ausführen"
+
+msgid "Deny"
+msgstr "Verweigern"
+
+msgid "Account"
+msgstr "Konto"
+
+msgid "Current Password"
+msgstr "Aktuelles Passwort"
+
+msgid "Current password is required"
+msgstr "Aktuelles Passwort ist erforderlich"
+
+msgid "New Password"
+msgstr "Neues Passwort"
+
+msgid "Password change complete"
+msgstr "Passwortänderung abgeschlossen"
+
+msgid "Passwords must match"
+msgstr "Passwörter müssen übereinstimmen"
+
+msgid "Reset Password"
+msgstr "Passwort zurücksetzen"
+
+msgid "Verify Password"
+msgstr "Passwort verifizieren"
+
+msgid "Are you sure you want to delete selected entries?"
+msgstr "Sind Sie sicher, dass Sie die ausgewählten Einträge löschen wollen?"
+
+msgid "Some entries were not deleted"
+msgstr "Einige Einträge wurden nicht gelöscht"
+
+msgid "Select All"
+msgstr "Alle auswählen"
+
+msgid "Unselect All"
+msgstr "Alle abwählen"
+
+msgid "Disabled"
+msgstr "Deaktiviert"
+
msgid "Automount"
msgstr "Automount"
msgid "DNS"
msgstr "DNS"
+
+msgid "Identity"
+msgstr "Identität"
+
+msgid "IPA Server"
+msgstr "IPA-Server"
+
+msgid "Sudo"
+msgstr "Sudo"
+
+msgid "Must be an integer"
+msgstr "Muss eine Ganzzahl sein"
+
+msgid "Not a valid IP address"
+msgstr "Keine gültige IP-Adresse"
+
+msgid "Not a valid IPv4 address"
+msgstr "Keine gültige IPv4-Adresse"
+
+msgid "Not a valid IPv6 address"
+msgstr "Keine gültige IPv6-Adresse"
+
+#, python-brace-format
+msgid "Maximum value is ${value}"
+msgstr "Maximaler Wert ist ${value}"
+
+#, python-brace-format
+msgid "Minimum value is ${value}"
+msgstr "Minimaler Wert ist ${value}"
+
+msgid "LDAP URI"
+msgstr "LDAP-URI"
+
+msgid "bind password"
+msgstr "Bind-Passwort"
+
+msgid "Bind DN"
+msgstr "Bind-DN"
+
+msgid "LDAP schema"
+msgstr "LDAP-Schema"
+
+msgid ""
+"The schema used on the LDAP server. Supported values are RFC2307 and "
+"RFC2307bis. The default is RFC2307bis"
+msgstr ""
+"Das auf dem LDAP-Server verwendete Schema. Zulässige Werte sind RFC2307 und "
+"RFC2307bis. Der Vorgabewert ist RFC2307bis."
+
+msgid "Lists of objects migrated; categorized by type."
+msgstr "Liste der migrierten Objekte, nach Typ geordnet."
+
+msgid "Lists of objects that could not be migrated; categorized by type."
+msgstr ""
+"Liste der Objekte, die nicht migriert werden konnten, nach Typ geordnet."
+
+msgid "Migration mode is disabled. Use 'ipa config-mod' to enable it."
+msgstr ""
+"Der Migrationsmodus ist deaktiviert. Rufen Sie »ipa config-mod« auf, um ihn "
+"zu aktivieren."
+
+msgid "Show environment variables."
+msgstr "Umgebungsvariablen anzeigen."
+
+#, python-format
+msgid "%(count)d variables"
+msgstr "%(count)d Variablen"
+
+msgid "Show all loaded plugins."
+msgstr "Alle geladenen Plugins anzeigen."
+
+#, python-format
+msgid "%(count)d plugin loaded"
+msgid_plural "%(count)d plugins loaded"
+msgstr[0] "%(count)d Plugin geladen"
+msgstr[1] "%(count)d Plugins geladen"
+
+msgid "Number of plugins loaded"
+msgstr "Anzahl der geladenen Plugins"
+
+msgid "PKINIT"
+msgstr "PKINIT"
+
+msgid "Group"
+msgstr "Gruppe"
+
+msgid "Character classes"
+msgstr "Zeichenklassen"
+
+msgid "service"
+msgstr "Dienst"
+
+msgid "services"
+msgstr "Dienste"
+
+msgid "Service principal"
+msgstr "Dienst-Principal"
+
+msgid "Add a new IPA new service."
+msgstr "Einen neuen IPA-Dienst hinzufügen."
+
+#, python-format
+msgid "Added service \"%(value)s\""
+msgstr "Dienst »%(value)s« hinzugefügt"
+
+msgid "Delete an IPA service."
+msgstr "Einen IPA-Dienst entfernen."
+
+#, python-format
+msgid "Deleted service \"%(value)s\""
+msgstr "Dienst »%(value)s« gelöscht"
+
+msgid "Modify an existing IPA service."
+msgstr "Einen existierenden IPA-Dienst bearbeiten."
+
+#, python-format
+msgid "Modified service \"%(value)s\""
+msgstr "Dienst »%(value)s« geändert"
+
+msgid "Search for IPA services."
+msgstr "Nach IPA-Diensten suchen."
+
+#, python-format
+msgid "%(count)d service matched"
+msgid_plural "%(count)d services matched"
+msgstr[0] "%(count)d passender Dienst"
+msgstr[1] "%(count)d passende Dienste"
+
+msgid "Display information about an IPA service."
+msgstr "Informationen zu einem IPA-Dienst anzeigen."
+
+msgid "Add hosts that can manage this service."
+msgstr "Hosts hinzufügen, die diesen Dienst verwalten können."
+
+msgid "Remove hosts that can manage this service."
+msgstr "Hosts entfernen, die diesen Dienst verwalten können."
+
+msgid "Disable the Kerberos key and SSL certificate of a service."
+msgstr ""
+"Den Kerberos-Schlüssel und das SSL-Zertifikat eines Dienstes deaktivieren."
+
+#, python-format
+msgid "Disabled service \"%(value)s\""
+msgstr "Dienst »%(value)s« deaktiviert"
+
+msgid "commands for controlling sudo configuration"
+msgstr "Befehle zum Steuern der sudo-Konfiguration"
+
+msgid "sudo command"
+msgstr "Sudo-Befehl"
+
+msgid "sudo commands"
+msgstr "Sudo-Befehle"
+
+msgid "Sudo Commands"
+msgstr "Sudo-Befehle"
+
+msgid "Sudo Command"
+msgstr "Sudo-Befehl"
+
+msgid "A description of this command"
+msgstr "Eine Beschreibung dieses Befehls"
+
+msgid "Create new Sudo Command."
+msgstr "Neuen Sudo-Befehl erzeugen."
+
+msgid "Delete Sudo Command."
+msgstr "Sudo-Befehl löschen."
+
+msgid "Modify Sudo Command."
+msgstr "Sudo-Befehl ändern."
+
+msgid "Search for Sudo Commands."
+msgstr "Nach Sudo-Befehlen suchen."
+
+msgid "Display Sudo Command."
+msgstr "Sudo-Befehl anzeigen."
+
+msgid "sudo command group"
+msgstr "Sudo-Befehlsgruppe"
+
+msgid "sudo command groups"
+msgstr "Sudo-Befehlsgruppen"
+
+msgid "Sudo Command Group"
+msgstr "Sudo-Befehlsgruppe"
+
+msgid "Commands for controlling sudo configuration"
+msgstr "Befehle zum Steuern der Sudo-Konfiguration"
+
+msgid "this option has been deprecated."
+msgstr "Diese Option ist veraltet."
+
+msgid "sudo rule"
+msgstr "Sudo-Regel"
+
+msgid "sudo rules"
+msgstr "Sudo-Regeln"
+
+msgid "Sudo Rules"
+msgstr "Sudo-Regeln"
+
+msgid "Sudo Rule"
+msgstr "Sudo-Regel"
+
+msgid "Command category"
+msgstr "Befehlskategorie"
+
+msgid "Command category the rule applies to"
+msgstr "Befehlskategorie, auf die die Regel angewendet werden soll"
+
+msgid "External User"
+msgstr "Externer Benutzer"
+
+msgid "Sudo Option"
+msgstr "Sudo-Option"
+
+msgid "user"
+msgstr "Benutzer"
+
+msgid "users"
+msgstr "Benutzer"
+
+msgid "Search for Sudo Rule."
+msgstr "Nach Sudo-Regel suchen."
+
+msgid "Display Sudo Rule."
+msgstr "Sudo-Regel anzeigen."
+
+msgid "Enable a Sudo Rule."
+msgstr "Eine Sudo-Regel aktivieren."
+
+#, python-format
+msgid "Enabled Sudo Rule \"%s\""
+msgstr "Sudo-Regel »%s« wurde aktiviert."
+
+msgid "Disable a Sudo Rule."
+msgstr "Eine Sudo-Regel deaktivieren."
+
+#, python-format
+msgid "Disabled Sudo Rule \"%s\""
+msgstr "Sudo-Regel »%s« wurde deaktiviert."
+
+msgid "Realm name"
+msgstr "Realm-Name"
+
+msgid "Kerberos keys available"
+msgstr "Kerberos-Schlüssel verfügbar"
+
+msgid "User login"
+msgstr "Anmeldename"
+
+msgid "First name"
+msgstr "Vorname"
+
+msgid "Last name"
+msgstr "Nachname"
+
+msgid "Full name"
+msgstr "Vollständiger Name"
+
+msgid "Display name"
+msgstr "Angezeigter Name"
+
+msgid "Initials"
+msgstr "Initialen"
+
+msgid "Home directory"
+msgstr "Home-Verzeichnis"
+
+msgid "Login shell"
+msgstr "Anmeldeshell"
+
+msgid "Kerberos principal"
+msgstr "Kerberos-Principal"
+
+msgid "Email address"
+msgstr "Email-Adresse"
+
+msgid "Generate a random user password"
+msgstr "Ein zufälliges Benutzerpasswort erzeugen"
+
+msgid "UID"
+msgstr "UID"
+
+msgid "User ID Number (system will assign one if not provided)"
+msgstr ""
+"Benutzer-ID (wird durch das System zugewiesen, falls diese nicht angegeben "
+"wird)"
+
+msgid "Group ID Number"
+msgstr "Gruppen-ID"
+
+msgid "Street address"
+msgstr "Straße"
+
+msgid "City"
+msgstr "Ort"
+
+msgid "State/Province"
+msgstr "Staat/Bundesland"
+
+msgid "ZIP"
+msgstr "Postleitzahl"
+
+msgid "Telephone Number"
+msgstr "Telefonnummer"
+
+msgid "Mobile Telephone Number"
+msgstr "Mobiltelefonnummer"
+
+msgid "Fax Number"
+msgstr "Faxnummer"
+
+msgid "Account disabled"
+msgstr "Konto ist deaktiviert"
+
+msgid "Add a new user."
+msgstr "Einen neuen Benutzer hinzufügen."
+
+#, python-format
+msgid "Added user \"%(value)s\""
+msgstr "Benutzer »%(value)s« hinzugefügt"
+
+#, python-format
+msgid "can be at most %(len)d characters"
+msgstr "darf höchstens %(len)d Zeichen lang sein"
+
+msgid "Delete a user."
+msgstr "Einen Benutzer löschen."
+
+#, python-format
+msgid "Deleted user \"%(value)s\""
+msgstr "Benutzer »%(value)s« gelöscht"
+
+msgid "Modify a user."
+msgstr "Einen Benutzer bearbeiten."
+
+#, python-format
+msgid "Modified user \"%(value)s\""
+msgstr "Benutzer »%(value)s« geändert"
+
+msgid "Search for users."
+msgstr "Nach Benutzern suchen."
+
+msgid "Display user record for current Kerberos principal"
+msgstr "Benutzer-Datensatz für den aktuellen Kerberos-Principal anzeigen"
+
+#, python-format
+msgid "%(count)d user matched"
+msgid_plural "%(count)d users matched"
+msgstr[0] "%(count)d passender Benutzer"
+msgstr[1] "%(count)d passende Benutzer"
+
+msgid "Display information about a user."
+msgstr "Informationen zu einem Benutzer anzeigen."
+
+msgid "Disable a user account."
+msgstr "Ein Benutzerkonto deaktivieren."
+
+#, python-format
+msgid "Disabled user account \"%(value)s\""
+msgstr "Benutzerkonto »%(value)s« wurde deaktiviert"
+
+msgid "Enable a user account."
+msgstr "Ein Benutzerkonto aktivieren."
+
+#, python-format
+msgid "Enabled user account \"%(value)s\""
+msgstr "Benutzerkonto »%(value)s« wurde aktiviert"
+
+#, python-format
+msgid "Unlocked account \"%(value)s\""
+msgstr "Konto »%(value)s« wurde entsperrt"
+
+#, python-format
+msgid "Permission denied: %(file)s"
+msgstr "Zugriff verweigert: %(file)s"
+
+msgid "too many '@' characters"
+msgstr "Zu viele »@«-Zeichen"
+
+msgid "cannot be longer that 255 characters"
+msgstr "darf nicht länger als 255 Zeichen sein"
+
+msgid "not fully qualified"
+msgstr "nicht voll ausgeschrieben"
+
+msgid "invalid SSH public key"
+msgstr "Ungültiger öffentlicher SSH-Schlüssel"
+
+#, python-format
+msgid "objectclass %s not found"
+msgstr "objektklasse %s nicht gefunden"
+
+msgid "The IPA realm"
+msgstr "Der IPA-Realm"
+
+msgid "Hardware platform of the host (e.g. Lenovo T61)"
+msgstr "Hardwareplattform des Hosts (z.B. Lenovo T400)"
+
+msgid "Operating System and version of the host (e.g. Fedora 9)"
+msgstr "Betriebssystem und Version des Hosts (z.B. Fedora 20)"
+
+#, c-format
+msgid "cannot open configuration file %s\n"
+msgstr "Konfigurationsdatei %s konnte nicht geöffnet werden\n"
+
+#, c-format
+msgid "cannot stat() configuration file %s\n"
+msgstr "Aufruf von »stat« für Konfigurationsdatei %s nicht möglich\n"
+
+#, c-format
+msgid "out of memory\n"
+msgstr "Nicht genügend Speicher\n"
+
+#, c-format
+msgid "read error\n"
+msgstr "Lesefehler\n"
+
+#, c-format
+msgid "No keys accepted by KDC\n"
+msgstr "KDC akzeptiert keine Schlüssel\n"
+
+#, c-format
+msgid "Out of memory \n"
+msgstr "Nicht genügend Speicher\n"
+
+#, c-format
+msgid "Unable to initialize ldap library!\n"
+msgstr "ldap-Bibliothek konnte nicht initialisiert werden!\n"
+
+#, c-format
+msgid "Operation failed! %s\n"
+msgstr "Operation fehlgeschlagen! %s\n"
+
+#, c-format
+msgid "Out of Memory!\n"
+msgstr "Nicht genügend Speicher!\n"
+
+msgid "New Principal Password"
+msgstr "Neues Principal-Passwort"
+
+msgid "Verify Principal Password"
+msgstr "Principal-Passwort bestätigen"
+
+msgid "Output only on errors"
+msgstr "Ausgabe nur bei Fehlern"
+
+msgid "Server Name"
+msgstr "Servername"
+
+msgid "LDAP password"
+msgstr "LDAP-Passwort"
+
+#, c-format
+msgid "Kerberos context initialization failed\n"
+msgstr "Initialisierung des Kerberos-Kontexts fehlgschlagen\n"
+
+#, c-format
+msgid "Supported encryption types:\n"
+msgstr "Unterstützte Verschlüsselungstypen:\n"
+
+#, c-format
+msgid "Warning: failed to convert type (#%d)\n"
+msgstr "Warnung: Typ konnte nicht umgewandelt werden (#%d)\n"
+
+#, c-format
+msgid "Out of memory!"
+msgstr "Nicht genügend Speicher!"
+
+#, c-format
+msgid "Unable to initialize connection to ldap server: %s"
+msgstr "Verbindung zum LDAP-Server konnte nicht initialisiert werden: %s"
+
+#, c-format
+msgid "Unable to set LDAP version\n"
+msgstr "LDAP-Version konnte nicht gesetzt werden\n"
+
+#, c-format
+msgid "Bind failed: %s\n"
+msgstr "Bind fehlgeschlagen: %s\n"
+
+#, c-format
+msgid "No values for %s"
+msgstr "Keine Werte für %s"
+
+#, c-format
+msgid "Incorrect password.\n"
+msgstr "Inkorrektes Passwort.\n"
+
+#, c-format
+msgid "Error obtaining initial credentials: %s.\n"
+msgstr "Fehler beim Holen der initialen Anmeldedaten: %s.\n"
+
+#, c-format
+msgid "Unable to generate Kerberos Credential Cache\n"
+msgstr ""
+"Anmeldedaten-Zwischenspeicher für Kerberos konnte nicht erzeugt werden\n"
+
+#, c-format
+msgid "Error storing creds in credential cache: %s.\n"
+msgstr ""
+"Fehler beim Speichern der Anmeldedaten im Anmeldedaten-Zwischenspeicher: "
+"%s.\n"
+
+#, c-format
+msgid "fork() failed\n"
+msgstr "fork() fehlgeschlagen\n"
+
+#, c-format
+msgid "ipa-getkeytab not found\n"
+msgstr "ipa-getkeytab nicht gefunden\n"
+
+#, c-format
+msgid "ipa-getkeytab has bad permissions?\n"
+msgstr "ipa-getkeytab hat falsche Zugriffsrechte?\n"
+
+#, c-format
+msgid "executing ipa-getkeytab failed, errno %d\n"
+msgstr "Ausführen von ipa-getkeytab fehgeschlagen, errno %d\n"
+
+msgid "Print the raw XML-RPC output in GSSAPI mode"
+msgstr "Die rohe XML-RPC-Ausgabe im GSSAPI-Modus anzeigen"
+
+msgid "Quiet mode. Only errors are displayed."
+msgstr "Stiller Modus. Nur Fehler werden ausgegeben."
+
+msgid "Hostname of this server"
+msgstr "Hostname dieses Servers"
+
+msgid "hostname"
+msgstr "Hostname"
+
+msgid "IPA Server to use"
+msgstr "Zu verwendender IPA-Server"
+
+msgid "filename"
+msgstr "Dateiname"
+
+msgid "LDAP password (if not using Kerberos)"
+msgstr "LDAP-Passwort (falls Kerberos nicht verwendet wird)"
+
+msgid "password"
+msgstr "Passwort"
+
+#, c-format
+msgid "Removing principal %s\n"
+msgstr "Principal %s wird entfernt\n"
+
+#, c-format
+msgid "principal not found\n"
+msgstr "Principal nicht gefunden\n"
+
+#, c-format
+msgid "realm not found\n"
+msgstr "Realm nicht gefunden\n"
+
+msgid "Print debugging information"
+msgstr "Ausgabe von Debug-Informationen"
+
+msgid "Debugging output"
+msgstr "Debugging-Ausgabe"
+
+msgid "Remove all principals in this realm"
+msgstr "Alle Principals in diesem Realm entfernen"
+
+msgid "Out of memory\n"
+msgstr "Nicht genügend Speicher\n"
+
+msgid "Out of memory!?\n"
+msgstr "Nicht genügend Speicher!?\n"
+
+msgid "Failed to create random key!\n"
+msgstr "Zufallsschlüssel konnte nicht erzeugt werden!\n"
+
+msgid "Failed to create key!\n"
+msgstr "Schlüssel konnte nicht erzeugt werden!\n"
diff --git a/install/po/es.po b/install/po/es.po
index bd94c6630..80bdc7beb 100644
--- a/install/po/es.po
+++ b/install/po/es.po
@@ -3,7 +3,8 @@
# This file is distributed under the same license as the PACKAGE package.
#
# Translators:
-# Adolfo Jayme Barrientos <fitoschido@ubuntu.com>, 2013
+# Adolfo Jayme Barrientos <fitoschido@ubuntu.com>, 2013
+# Adolfo Jayme Barrientos <fitoschido@ubuntu.com>, 2014
# Eduardo Villagrán M <gotencool@gmail.com>, 2012
# vareli <ehespinosa@ya.com>, 2013
# Gladys Guerrero <gguerrer@redhat.com>, 2011
@@ -16,10 +17,11 @@ msgstr ""
"Project-Id-Version: FreeIPA\n"
"Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/"
"newticket\n"
-"POT-Creation-Date: 2013-10-09 14:39+0200\n"
-"PO-Revision-Date: 2013-09-20 06:46+0000\n"
-"Last-Translator: Adolfo Jayme Barrientos <fitoschido@ubuntu.com>\n"
-"Language-Team: Spanish <trans-es@lists.fedoraproject.org>\n"
+"POT-Creation-Date: 2014-06-27 16:29+0200\n"
+"PO-Revision-Date: 2014-06-25 19:44+0000\n"
+"Last-Translator: Petr Viktorin <encukou@gmail.com>\n"
+"Language-Team: Spanish (http://www.transifex.com/projects/p/freeipa/language/"
+"es/)\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -32,7 +34,10 @@ msgstr "Ingrese %(label)s nuevamente para verificar: "
#, c-format
msgid "Passwords do not match!"
-msgstr "¡Las contraseñas no coinciden!"
+msgstr "Las contraseñas no coinciden."
+
+msgid "No matching entries found"
+msgstr "No se encontraron entradas coincidentes"
msgid "Topic commands:"
msgstr "Tema comandos:"
@@ -248,6 +253,11 @@ msgstr "Ya está registrado"
msgid "Not registered yet"
msgstr "Aún no está registrado"
+#, python-format
+msgid "%(key)s cannot be deleted because %(label)s %(dependent)s requires it"
+msgstr ""
+"No se puede eliminar %(key)s porque %(label)s %(dependent)s lo requiere"
+
msgid "Results are truncated, try a more specific search"
msgstr ""
"Los resultados se encuentran truncados, intente realizar una búsqueda más "
@@ -272,6 +282,9 @@ msgstr ""
msgid "Forward to server instead of running locally"
msgstr "Reenvía al servidor en lugar de ejecutarse localmente"
+msgid "Additional instructions:"
+msgstr "Instrucciones adicionales:"
+
msgid "A dictionary representing an LDAP entry"
msgstr "Un diccionario representando una entrada LDAP"
@@ -281,9 +294,18 @@ msgstr "Una lista de entradas LDAP"
msgid "All commands should at least have a result"
msgstr "Todos los comandos deberían por lo menos tener un resultado"
+msgid "User-friendly description of action performed"
+msgstr "Descripción sencilla de la acción realizada"
+
+msgid "The primary_key value of the entry, e.g. 'jdoe' for a user"
+msgstr "El valor de primary_key de la entrada, p.ej., «jperez» para un usuario"
+
msgid "Number of entries returned"
msgstr "Cantidad de entradas devueltas"
+msgid "True if not all results were returned"
+msgstr "Verdadero si no todos los resultados se devolvieron"
+
msgid "List of deletions that failed"
msgstr "Lista de eliminaciones fallidas"
@@ -350,6 +372,10 @@ msgstr "puede tener a lo sumo %(maxlength)d caracteres"
msgid "must be exactly %(length)d characters"
msgstr "debe tener exactamente %(length)d caracteres"
+#, python-format
+msgid "must be '%(value)s'"
+msgstr "debe ser «%(value)s»"
+
msgid "A list of ACI values"
msgstr "Una lista de valores ACI"
@@ -527,10 +553,6 @@ msgid "A description of this auto member rule"
msgstr "Una descripción de esta regla auto miembro"
#, python-format
-msgid "Group: %s not found!"
-msgstr "Grupo: %s no encontrado!"
-
-#, python-format
msgid "%s is not a valid attribute."
msgstr "%s no es un atributo válido."
@@ -596,6 +618,10 @@ msgstr ""
" Borrar condiciones de una regla automiembro.\n"
" "
+#, python-format
+msgid "Removed condition(s) from \"%(value)s\""
+msgstr "Condición(es) eliminada(s) de «%(value)s»"
+
msgid "Conditions that could not be removed"
msgstr "Condiciones que no pueden ser eliminadas"
@@ -661,6 +687,12 @@ msgstr ""
" Muestra información sobre una regla automiembro.\n"
" "
+msgid "Users"
+msgstr "Usuarios"
+
+msgid "Hosts"
+msgstr "Equipos"
+
msgid "automount location"
msgstr "localización automontaje"
@@ -1106,15 +1138,27 @@ msgid "the entry was deleted while being modified"
msgstr "la entrada fue eliminada mientras estaba siendo modificada"
#, python-format
+msgid "%s"
+msgstr "%s"
+
+#, python-format
msgid "member %s"
msgstr "miembro %s"
+#, python-format
+msgid "%s to add"
+msgstr "%s a añadir"
+
msgid "Members that could not be added"
msgstr "Miembros que no han podido ser añadidos"
msgid "Number of members added"
msgstr "Cantidad de miembros añadidos"
+#, python-format
+msgid "%s to remove"
+msgstr "%s a eliminar"
+
msgid "Members that could not be removed"
msgstr "Miembros que no han podido ser eliminados"
@@ -1144,14 +1188,6 @@ msgstr "Cantidad máxima de entradas obtenidas"
msgid "Nested Methods to execute"
msgstr "Métodos anidados para ejecutar"
-msgid "Failure decoding Certificate Signing Request:"
-msgstr ""
-"Falla al intentar decodificar la petición de identificación de certificado"
-
-msgid "Failure decoding Certificate Signing Request"
-msgstr ""
-"Falla al intentar decodificar la petición de identificación de certificado"
-
#, python-format
msgid "Failure decoding Certificate Signing Request: %s"
msgstr ""
@@ -1198,6 +1234,9 @@ msgstr "Huella digital (SHA1)"
msgid "Serial number"
msgstr "Número de serie"
+msgid "Serial number (hex)"
+msgstr "N.º de serie (hex.)"
+
msgid "Dictionary mapping variable name to value"
msgstr "Nombre de la variable de mapeo de dicionario a valorizar "
@@ -1422,9 +1461,12 @@ msgstr "formato no válido de dirección IP"
msgid "invalid IP network format"
msgstr "formato no válido de red IP"
+msgid "invalid address format"
+msgstr "formato de dirección no válido"
+
#, python-format
-msgid "invalid domain-name: %s"
-msgstr "nombre de dominio no válido: %s"
+msgid "%(port)s is not a valid port"
+msgstr "%(port)s no es un puerto válido"
#, python-format
msgid "DNS reverse zone for IP address %(addr)s not found"
@@ -1434,12 +1476,27 @@ msgstr "Zona invertida DNS para dirección IP %(addr)s no encontrada"
msgid "DNS zone %(zone)s not found"
msgstr "Zona DNS %(zone)s no encontrado"
+#, python-format
+msgid "%s record"
+msgstr "%s registro"
+
+#, python-format
+msgid "%s Record"
+msgstr "%s registro"
+
+#, python-format
+msgid "'%s' is a required part of DNS record"
+msgstr "«%s» es una parte requerida del registro DNS"
+
msgid "Invalid number of parts!"
msgstr "El número de partes no es válido."
msgid "IP Address"
msgstr "Dirección IP"
+msgid "Record data"
+msgstr "Registrar datos"
+
msgid "Subtype"
msgstr "Subtipo"
@@ -1449,6 +1506,9 @@ msgstr "Nombre del equipo anfitrión"
msgid "Certificate Type"
msgstr "Tipo de certificado"
+msgid "Key Tag"
+msgstr "Etiqueta de clave"
+
msgid "Algorithm"
msgstr "Algoritmo"
@@ -1458,15 +1518,33 @@ msgstr "Certificado/CRL"
msgid "Target"
msgstr "Meta"
-msgid "Protocol"
-msgstr "Protocolo"
-
-msgid "Public Key"
-msgstr "Clave pública"
-
msgid "Preference"
msgstr "Preferencia"
+msgid "Degrees Latitude"
+msgstr "Latitud en grados"
+
+msgid "Minutes Latitude"
+msgstr "Latitud en minutos"
+
+msgid "Seconds Latitude"
+msgstr "Latitud en segundos"
+
+msgid "Direction Latitude"
+msgstr "Latitud de dirección"
+
+msgid "Altitude"
+msgstr "Altitud"
+
+msgid "Size"
+msgstr "Tamaño"
+
+msgid "Horizontal Precision"
+msgstr "Precisión horizontal"
+
+msgid "Vertical Precision"
+msgstr "Precisión vertical"
+
msgid ""
"format must be specified as\n"
" \"d1 [m1 [s1]] {\"N\"|\"S\"} d2 [m2 [s2]] {\"E\"|\"W\"} alt[\"m\"] "
@@ -1491,33 +1569,24 @@ msgstr ""
"siz, hp, vp: [0 .. 90000000.00] (tamaño/precisión en metros)\n"
"Vea RFC 1876 para detalles"
+msgid "Order"
+msgstr "Orden"
+
msgid "Service"
msgstr "Servicio"
msgid "Regular Expression"
msgstr "Expresión regular"
+msgid "Replacement"
+msgstr "Reemplazo"
+
msgid "Priority"
msgstr "Prioridad"
msgid "Port"
msgstr "Puerto"
-msgid "Labels"
-msgstr "Etiquetas"
-
-msgid "Original TTL"
-msgstr "TTL original"
-
-msgid "Signature Expiration"
-msgstr "Caducidad de la firma"
-
-msgid "Signer's Name"
-msgstr "Nombre del firmante"
-
-msgid "Signature"
-msgstr "Firma"
-
msgid "Fingerprint Type"
msgstr "Tipo de huella digital"
@@ -1538,18 +1607,6 @@ msgid "Nameserver '%(host)s' does not have a corresponding A/AAAA record"
msgstr ""
"El servidor de nombre '%(host)s' no tiene su correspondiente registro A/AAAA"
-msgid "DNS zone"
-msgstr "zona DNS"
-
-msgid "DNS zones"
-msgstr "zonas DNS"
-
-msgid "DNS Zones"
-msgstr "Zonas DNS"
-
-msgid "DNS Zone"
-msgstr "Zona DNS"
-
msgid "Zone name"
msgstr "Nombre de la zona"
@@ -1562,6 +1619,30 @@ msgstr "Zona reversa de red IP"
msgid "IP network to create reverse zone name from"
msgstr "Red IP para crear un nombre de zona reversa desde"
+msgid "Active zone"
+msgstr "Activar zona"
+
+msgid "Is zone active?"
+msgstr "¿Está la zona activa?"
+
+msgid "DNS is not configured"
+msgstr "DNS no está configurado"
+
+msgid "Search for DNS zones (SOA records)."
+msgstr "Buscar zonas DNS (registros SOA)."
+
+msgid "DNS zone"
+msgstr "zona DNS"
+
+msgid "DNS zones"
+msgstr "zonas DNS"
+
+msgid "DNS Zones"
+msgstr "Zonas DNS"
+
+msgid "DNS Zone"
+msgstr "Zona DNS"
+
msgid "Authoritative nameserver"
msgstr "Nombre de servidor autoritativo"
@@ -1601,11 +1682,8 @@ msgstr "Mínimo SOA"
msgid "How long should negative responses be cached"
msgstr "¿Por cuánto tiempo las respuestas negativas deben guardarse en cache?"
-msgid "SOA time to live"
-msgstr "Tiempo para abandonar SOA"
-
-msgid "SOA record time to live"
-msgstr "tiempo de vida de registro SOA"
+msgid "Time to live"
+msgstr "Tiempo para abandonar"
msgid "SOA class"
msgstr "Clase SOA"
@@ -1616,36 +1694,30 @@ msgstr "Clase de registro SOA "
msgid "BIND update policy"
msgstr "Política de actualización de BIND"
-msgid "Active zone"
-msgstr "Activar zona"
-
-msgid "Is zone active?"
-msgstr "¿Está la zona activa?"
-
msgid "Dynamic update"
msgstr "Actualización dinámica"
msgid "Allow dynamic updates."
msgstr "Permitir actualizaciones dinámicas."
+msgid "Allow query"
+msgstr "Permitir consulta"
+
+msgid "Allow transfer"
+msgstr "Permitir transferencia"
+
msgid "Create new DNS zone (SOA record)."
msgstr "Crear nueva zona DNS (registro SOA)."
msgid "Force"
msgstr "Forzar"
-msgid "DNS is not configured"
-msgstr "DNS no está configurado"
-
msgid "Delete DNS zone (SOA record)."
msgstr "Borrar zona DNS (registro SOA)."
msgid "Modify DNS zone (SOA record)."
msgstr "Modificar zona DNS (registro SOA)."
-msgid "Search for DNS zones (SOA records)."
-msgstr "Buscar zonas DNS (registros SOA)."
-
msgid "Forward zones only"
msgstr "Zonas de reenvío sólo"
@@ -1684,9 +1756,6 @@ msgstr "Registro de Recurso de DNS"
msgid "Record name"
msgstr "Nombre de registro"
-msgid "Time to live"
-msgstr "Tiempo para abandonar"
-
msgid "Class"
msgstr "Clase"
@@ -1762,6 +1831,12 @@ msgstr "Ha sido encontrado '%(value)s'"
msgid "Host '%(host)s' not found"
msgstr "No ha sido encontrado el equipo anfitrión '%(host)s' "
+msgid "DNS configuration options"
+msgstr "Opciones de configuración de DNS"
+
+msgid "DNS Global Configuration"
+msgstr "Configuración global de DNS"
+
msgid "group"
msgstr "grupo"
@@ -1898,12 +1973,6 @@ msgstr "Categoría de servicio a la que se aplica la regla"
msgid "Enabled"
msgstr "Habilitado"
-msgid "Users"
-msgstr "Usuarios"
-
-msgid "Hosts"
-msgstr "Equipos"
-
msgid "Host Groups"
msgstr "Grupos de equipo"
@@ -2191,9 +2260,16 @@ msgstr "Keytab"
msgid "Serial Number"
msgstr "Número de serie"
+msgid "Serial Number (hex)"
+msgstr "N.º de serie (hex.)"
+
msgid "Failed managedby"
msgstr "Falló managedby"
+#, python-format
+msgid "invalid domain-name: %s"
+msgstr "nombre de dominio no válido: %s"
+
msgid "host"
msgstr "host"
@@ -2252,6 +2328,9 @@ msgstr "Nombre principal"
msgid "MAC address"
msgstr "Dirección MAC"
+msgid "SSH public key"
+msgstr "Clave pública SSH"
+
msgid "Add a new host."
msgstr "Añadir un n uevo host."
@@ -2398,6 +2477,38 @@ msgstr "Añadir miembros a un grupo de host."
msgid "Remove members from a hostgroup."
msgstr "Borrar miembros de un grupo de host."
+msgid "ID Ranges"
+msgstr "Intervalos de ID"
+
+msgid "ID Range"
+msgstr "Intervalo de ID"
+
+msgid "local domain range"
+msgstr "intervalo de dominios locales"
+
+msgid "Active Directory domain range"
+msgstr "Intervalo de dominios de Active Directory"
+
+msgid "Range name"
+msgstr "Nombre del intervalo"
+
+msgid "Range type"
+msgstr "Tipo de intervalo"
+
+#, python-format
+msgid "Added ID range \"%(value)s\""
+msgstr "Se añadió el intervalo de ID «%(value)s»"
+
+msgid "Delete an ID range."
+msgstr "Eliminar un intervalo de ID."
+
+#, python-format
+msgid "Deleted ID range \"%(value)s\""
+msgstr "Se eliminó el intervalo de ID «%(value)s»"
+
+msgid "Search for ranges."
+msgstr "Buscar intervalos."
+
msgid "Name of object to export"
msgstr "Nombre del objeto a exportar"
@@ -2416,24 +2527,31 @@ msgstr "Métodos IPA codificados de Dict de JSON "
msgid "Dict of JSON encoded IPA Commands"
msgstr "Dict de JSON comandos codificados IPA"
+#, python-brace-format
msgid "Add RunAs ${other_entity} into ${entity} ${primary_key}"
msgstr "Añadir RunAs ${other_entity} en ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add RunAs Groups into ${entity} ${primary_key}"
msgstr "Añadir RunAs Grupos en ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add ${other_entity} Managing ${entity} ${primary_key}"
msgstr "Añadir ${other_entity} Gestionando ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add ${other_entity} into ${entity} ${primary_key}"
msgstr "Añadir ${other_entity} a ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add Allow ${other_entity} into ${entity} ${primary_key}"
msgstr "Añadir Permitir ${other_entity} en ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add Deny ${other_entity} into ${entity} ${primary_key}"
msgstr "Añadir Denegar ${other_entity} en ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add ${entity} ${primary_key} into ${other_entity}"
msgstr "Añadir ${entity} ${primary_key} en ${other_entity}"
@@ -2446,27 +2564,35 @@ msgstr "Afiliación Indirecta"
msgid "No entries."
msgstr "Sin entradas."
+#, python-brace-format
msgid "Showing ${start} to ${end} of ${total} entries."
msgstr "Mostrando ${start} a ${end} de ${total} entradas."
+#, python-brace-format
msgid "Remove RunAs ${other_entity} from ${entity} ${primary_key}"
msgstr "Quitar RunAs ${other_entity} de ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove RunAs Groups from ${entity} ${primary_key}"
msgstr "Quitar Grupos RunAs de ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove ${other_entity} Managing ${entity} ${primary_key}"
msgstr "Quitar ${other_entity} Gestionando ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove ${other_entity} from ${entity} ${primary_key}"
msgstr "Retirar ${other_entity} de ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove Allow ${other_entity} from ${entity} ${primary_key}"
msgstr "Quitar Permitir ${other_entity} de ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove Deny ${other_entity} from ${entity} ${primary_key}"
msgstr "Quitar Denegar ${other_entity} de ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove ${entity} ${primary_key} from ${other_entity}"
msgstr "Quitar ${entity} ${primary_key} de ${other_entity}"
@@ -2554,15 +2680,18 @@ msgstr "General"
msgid "Identity Settings"
msgstr "Configuración de identidad"
+#, python-brace-format
msgid "${entity} ${primary_key} Settings"
msgstr "Configuraciones de ${entity} ${primary_key}"
msgid "Back to Top"
msgstr "Volver al comienzo"
+#, python-brace-format
msgid "${entity} successfully added"
msgstr "${entity} añadido con éxito"
+#, python-brace-format
msgid "Add ${entity}"
msgstr "Añadir ${entity}"
@@ -2584,6 +2713,7 @@ msgstr "Esta página tiene cambios sin guardar. Por favor, guardar o deshacer."
msgid "Unsaved Changes"
msgstr "Cambios No Guardados"
+#, python-brace-format
msgid "Edit ${entity}"
msgstr "Editar ${entity}"
@@ -2599,6 +2729,7 @@ msgstr "Redirección "
msgid "Select entries to be removed."
msgstr "Las entradas seleccionadas han sido quitadas."
+#, python-brace-format
msgid "Remove ${entity}"
msgstr "Quitar ${entity}"
@@ -2629,12 +2760,15 @@ msgstr "Error Desconocido"
msgid "URL"
msgstr "URL"
+#, python-brace-format
msgid "${primary_key} is managed by:"
msgstr "${primary_key} es gestionada por:"
+#, python-brace-format
msgid "${primary_key} members:"
msgstr "${primary_key} miembros:"
+#, python-brace-format
msgid "${primary_key} is a member of:"
msgstr "${primary_key} es un miembro de:"
@@ -2659,6 +2793,9 @@ msgstr "Atributo"
msgid "Add Rule"
msgstr "Añadir una regla"
+msgid "Expression"
+msgstr "Expresión"
+
msgid "Automount Location Settings"
msgstr "Configuración de ubicación de automount"
@@ -2698,6 +2835,7 @@ msgstr "Expira el"
msgid "Fingerprints"
msgstr "Las huellas dactilares"
+#, python-brace-format
msgid "Issue New Certificate for ${entity} ${primary_key}"
msgstr "Enviar Nuevo Certificado para ${entity} ${primary_key}"
@@ -2740,9 +2878,13 @@ msgstr "Motivo de la revocación"
msgid "Remove from CRL"
msgstr "Borrar de CRL"
+#, python-brace-format
msgid "Restore Certificate for ${entity} ${primary_key}"
msgstr "Restablecer Certificado para ${entity} ${primary_key}"
+msgid "Restore Certificate"
+msgstr "Restaurar certificado"
+
msgid ""
"To confirm your intention to restore this certificate, click the \"Restore\" "
"button."
@@ -2750,9 +2892,13 @@ msgstr ""
"Para confirmar su intención de restaurar este certificado, haga clic en el "
"botón \"Restaurar\"."
+#, python-brace-format
msgid "Revoke Certificate for ${entity} ${primary_key}"
msgstr "Revocar certificado por ${entity} ${primary_key}"
+msgid "Revoke Certificate"
+msgstr "Revocar certificado"
+
msgid ""
"To confirm your intention to revoke this certificate, select a reason from "
"the pull-down list, and click the \"Revoke\" button."
@@ -2778,6 +2924,7 @@ msgstr "Presentar certificado válido"
msgid "Validity"
msgstr "Validez"
+#, python-brace-format
msgid "Certificate for ${entity} ${primary_key}"
msgstr "Certificado para ${entity} ${primary_key}"
@@ -2802,6 +2949,21 @@ msgstr "Registro DNS fue borrado porque no contenía datos."
msgid "Other Record Types"
msgstr "Otros Tipos de Registro"
+msgid "Create dns record"
+msgstr "Crear registro DNS"
+
+msgid "Creating record."
+msgstr "Creando el registro."
+
+msgid "Record creation failed."
+msgstr "Falló la creación del registro."
+
+msgid "Checking if record exists."
+msgstr "Comprobando que el registro existe."
+
+msgid "Record not found."
+msgstr "No se encontró el registro."
+
msgid "You will be redirected to DNS Zone."
msgstr "Será redirigido a Zona DNS."
@@ -2823,6 +2985,12 @@ msgstr "Configuración del grupo"
msgid "External"
msgstr "Externos"
+msgid "POSIX"
+msgstr "POSIX"
+
+msgid "Group Type"
+msgstr "Tipo de grupo"
+
msgid "Any Host"
msgstr "Cualquier host"
@@ -2871,6 +3039,9 @@ msgstr "Prueba HBAC"
msgid "Matched"
msgstr "Emparejado"
+msgid "Missing values: "
+msgstr "Valores faltantes:"
+
msgid "New Test"
msgstr "Nueva Prueba"
@@ -2880,6 +3051,7 @@ msgstr "Reglas"
msgid "Run Test"
msgstr "Ejecutar Prueba"
+#, python-brace-format
msgid "Specify external ${entity}"
msgstr "Especificar ${entity} externa"
@@ -2940,6 +3112,7 @@ msgstr "Unprovision"
msgid "Are you sure you want to unprovision this host?"
msgstr "¿Está seguro que desea unprovision este equipo?"
+#, python-brace-format
msgid "Unprovisioning ${entity}"
msgstr "Cancelación ${entity}"
@@ -2955,12 +3128,6 @@ msgstr "Configuración de Netgroup"
msgid "User"
msgstr "Usuario"
-msgid "Identity"
-msgstr "Identidad"
-
-msgid "Permission with invalid target specification"
-msgstr "Permiso con especificación de destino inválida"
-
msgid "Privilege Settings"
msgstr "Configuración de privilegios"
@@ -3021,6 +3188,12 @@ msgstr "Grupos especificados"
msgid "Account"
msgstr "Cuenta"
+msgid "Domain"
+msgstr "Dominio"
+
+msgid "Pre-shared password"
+msgstr "Contraseña precompartida"
+
msgid "Account Settings"
msgstr "Configuración de la cuenta"
@@ -3045,6 +3218,7 @@ msgstr "Dirección de correo"
msgid "Misc. Information"
msgstr "Información diversa"
+#, python-brace-format
msgid ""
"Are you sure you want to ${action} the user?<br/>The change will take effect "
"immediately."
@@ -3052,6 +3226,7 @@ msgstr ""
"¿Está seguro que desea ${action} el usuario?<br/>El cambio tendrá efecto "
"inmediatamente."
+#, python-brace-format
msgid "Click to ${action}"
msgstr "Pulse para ${action}"
@@ -3088,6 +3263,7 @@ msgstr "Enlaces rápidos"
msgid "Select All"
msgstr " Seleccionar todo"
+#, python-brace-format
msgid ""
"Query returned more results than the configured size limit. Displaying the "
"first ${counter} results."
@@ -3113,6 +3289,9 @@ msgstr "DNS"
msgid "Host Based Access Control"
msgstr "Control de Acceso basado en Host"
+msgid "Identity"
+msgstr "Identidad"
+
msgid "IPA Server"
msgstr "Servidor IPA"
@@ -3158,15 +3337,24 @@ msgstr "No es una dirección IPv4 válida"
msgid "Not a valid IPv6 address"
msgstr "No es una dirección IPv6 válida"
+#, python-brace-format
msgid "Maximum value is ${value}"
msgstr "Valor máximo es ${value}"
+#, python-brace-format
msgid "Minimum value is ${value}"
msgstr "Valor mínimo es ${value}"
+#, python-brace-format
+msgid "'${port}' is not a valid port"
+msgstr "«${port}» no es un puerto válido"
+
msgid "Required field"
msgstr "Campo requerido"
+msgid "Unsupported value"
+msgstr "Valor no admitido"
+
msgid "Dict of I18N messages"
msgstr "Dictado de los mensajes regionales"
@@ -3519,6 +3707,9 @@ msgstr "Añadir miembros a un grupo de red."
msgid "Remove members from a netgroup."
msgstr "Borrar miembros de un grupo de red."
+msgid "Manager"
+msgstr "Manager"
+
msgid ""
"\n"
"Set a user's password\n"
@@ -3561,117 +3752,6 @@ msgstr "Fijar una contraseña de usuario."
msgid "Changed password for \"%(value)s\""
msgstr "Cambio de contraseña para \"%(value)s\""
-msgid ""
-"\n"
-"Permissions\n"
-"\n"
-"A permission enables fine-grained delegation of rights. A permission is\n"
-"a human-readable form of a 389-ds Access Control Rule, or instruction "
-"(ACI).\n"
-"A permission grants the right to perform a specific task such as adding a\n"
-"user, modifying a group, etc.\n"
-"\n"
-"A permission may not contain other permissions.\n"
-"\n"
-"* A permission grants access to read, write, add or delete.\n"
-"* A privilege combines similar permissions (for example all the permissions\n"
-" needed to add a user).\n"
-"* A role grants a set of privileges to users, groups, hosts or hostgroups.\n"
-"\n"
-"A permission is made up of a number of different parts:\n"
-"\n"
-"1. The name of the permission.\n"
-"2. The target of the permission.\n"
-"3. The rights granted by the permission.\n"
-"\n"
-"Rights define what operations are allowed, and may be one or more\n"
-"of the following:\n"
-"1. write - write one or more attributes\n"
-"2. read - read one or more attributes\n"
-"3. add - add a new entry to the tree\n"
-"4. delete - delete an existing entry\n"
-"5. all - all permissions are granted\n"
-"\n"
-"Read permission is granted for most attributes by default so the read\n"
-"permission is not expected to be used very often.\n"
-"\n"
-"Note the distinction between attributes and entries. The permissions are\n"
-"independent, so being able to add a user does not mean that the user will\n"
-"be editable.\n"
-"\n"
-"There are a number of allowed targets:\n"
-"1. type: a type of object (user, group, etc).\n"
-"2. memberof: a member of a group or hostgroup\n"
-"3. filter: an LDAP filter\n"
-"4. subtree: an LDAP filter specifying part of the LDAP DIT. This is a\n"
-" super-set of the \"type\" target.\n"
-"5. targetgroup: grant access to modify a specific group (such as granting\n"
-" the rights to manage group membership)\n"
-"\n"
-"EXAMPLES:\n"
-"\n"
-" Add a permission that grants the creation of users:\n"
-" ipa permission-add --type=user --permissions=add \"Add Users\"\n"
-"\n"
-" Add a permission that grants the ability to manage group membership:\n"
-" ipa permission-add --attrs=member --permissions=write --type=group "
-"\"Manage Group Members\"\n"
-msgstr ""
-"\n"
-"Permisos\n"
-"\n"
-"Un permiso permite delegación de grano fino de derechos. Un permiso es una "
-"regla de control de acceso 389-ds o de instrucción (ACI).\n"
-"\n"
-"Un permiso otorga el derecho de realizar tareas tales como añadir un "
-"usuario, modificar un grupo, etc.\n"
-"Un permiso no puede contener otros permisos.\n"
-"Un permiso otorga acceso de lectura, escritura, agregar o borrar.\n"
-"Un privilegio combina permisos similares (por ejemplo, todos los permisos \n"
-" necesarios para agregar un usuario).\n"
-"Un rol otorga un set de privilegios para usuarios, grupos, hosts o "
-"hostgroups.\n"
-"Un permiso está compuesto de varias partes:\n"
-"\n"
-"1. El nombre del permiso.\n"
-"2. El destino del permiso.\n"
-"3. Los derechos otorgados por permiso.\n"
-"\n"
-"Los derechos definen las operaciones permitidas y pueden ser una o más de "
-"las siguientes.\n"
-"\n"
-"1. write - escribir uno o más atributos\n"
-"2. read - leer uno o más atributos\n"
-"3. add - agregar una nueva entrada al árbol\n"
-"4. delete - borrar una entrada existente\n"
-"5. all- todos los permisos son otorgados\n"
-"\n"
-"El permiso de lectura se otorga a la mayoría de los atributos y entradas. "
-"Los permisos son independientes, por lo tanto, poder agregar un usuario no "
-"significa que el usuario sea editable.\n"
-"Hay un número de destinos permitidos:\n"
-"1. type: un tipo de objeto (usuario, grupo, etc).\n"
-"2. memberof: un miembro de grupo o hostgroup\n"
-"3. filter: un filtro de LDAP \n"
-"4. subtree: un filtro LDAP que especifica parte del LDAP DIT. Es un\n"
-" super-set del \"type\" target.\n"
-"5. targetgroup: otorga acceso para modificar un grupo específico (tal como "
-"otorgar\n"
-" los derechos para administrar la membresía de grupo)\n"
-"EJEMPLOS:\n"
-"Añadir un permiso que otogue la creación de usuarios:\n"
-"\n"
-" ipa permission-add --type=user --permissions=add \"Add Users\"\n"
-"Añadir un permiso que otorgue la capacidad de administrar una membresía de "
-"grupo:\n"
-"\n"
-" ipa permission-add --attrs=member --permissions=write --type=group "
-"\"Manage Group \n"
-"Members\"\n"
-
-msgid "Permission Type"
-msgstr "Tipo de permiso"
-
msgid "permission"
msgstr "permiso"
@@ -3681,30 +3761,19 @@ msgstr "permisos"
msgid "Permission name"
msgstr "Nombre de permiso"
-msgid ""
-"Type of IPA object (user, group, host, hostgroup, service, netgroup, dns)"
-msgstr ""
-"Tipo de objeto del IPA (usuario, host, hostgroup, servicio, netgroup, dns)"
-
-msgid "Member of group"
-msgstr "Miembro del grupo"
-
-msgid "Target members of a group"
-msgstr "Objetivo para los miembros de un grupo"
-
msgid "Subtree to apply permissions to"
msgstr "Subárbol para aplicar permisos"
-msgid "User group to apply permissions to"
-msgstr "Grupo de usuario para aplicar permisos"
-
-msgid "Add a new permission."
-msgstr "Añadir un nuevo permiso."
+msgid "Member of group"
+msgstr "Miembro del grupo"
#, python-format
msgid "Added permission \"%(value)s\""
msgstr "Permiso agregado \"%(value)s\""
+msgid "Add a new permission."
+msgstr "Añadir un nuevo permiso."
+
msgid "Delete a permission."
msgstr "Borrar un permiso."
@@ -4078,6 +4147,9 @@ msgstr "Ofrece la política efectiva para un determinado usuario"
msgid "Search for group password policies."
msgstr "Buscar grupo de políticas de contraseña."
+msgid "Server"
+msgstr "Servidor"
+
msgid "role"
msgstr "rol"
@@ -4201,6 +4273,9 @@ msgstr "servicios"
msgid "Service principal"
msgstr " Búsqueda de servicios IPA"
+msgid "PAC type"
+msgstr "Tipo PAC"
+
msgid "Add a new IPA new service."
msgstr "Añadir un nuevo servicio nuevo IPA."
@@ -4414,6 +4489,12 @@ msgstr "RunAs Grupo categoría"
msgid "RunAs Group category the rule applies to"
msgstr "RunAs Grupo categoría la regla aplica a"
+msgid "External User"
+msgstr "De usuarios externos"
+
+msgid "External User the rule applies to (sudorule-find only)"
+msgstr "Usuario Externo la regla aplica a (sudorule-find sólo)"
+
msgid "Sudo Allow Commands"
msgstr "Comandos Allow de sudo"
@@ -4438,18 +4519,18 @@ msgstr "Grupos de Usuarios RunAs"
msgid "Run as any user within a specified group"
msgstr "Ejecutar como cualquier usuario dentro de un grupo especificado"
-msgid "External User"
-msgstr "De usuarios externos"
-
-msgid "External User the rule applies to (sudorule-find only)"
-msgstr "Usuario Externo la regla aplica a (sudorule-find sólo)"
-
msgid "RunAs External User"
msgstr "RunAs de usuarios externos"
msgid "External User the commands can run as (sudorule-find only)"
msgstr "Usuario Externo los comandos pueden correr como (sudorule-find sólo)"
+msgid "RunAs Groups"
+msgstr "Grupos RunAs"
+
+msgid "Run with the gid of a specified POSIX group"
+msgstr "Ejecutar con la gid de un grupo POSIX especificado"
+
msgid "RunAs External Group"
msgstr "Grupo externo RunAs"
@@ -4459,12 +4540,6 @@ msgstr "Grupo Externo los comandos pueden correr como (sudorule-find sólo)"
msgid "Sudo Option"
msgstr "Opción de sudo"
-msgid "RunAs Groups"
-msgstr "Grupos RunAs"
-
-msgid "Run with the gid of a specified POSIX group"
-msgstr "Ejecutar con la gid de un grupo POSIX especificado"
-
msgid "Create new Sudo Rule."
msgstr "Crear nueva Regla Sudo."
@@ -4486,6 +4561,12 @@ msgstr "Modificar Regla Sudo."
msgid "Modified Sudo Rule \"%(value)s\""
msgstr "Regla Sudo Modificada “%(value)s”"
+msgid "user"
+msgstr "usuario"
+
+msgid "users"
+msgstr "usuarios"
+
msgid "Search for Sudo Rule."
msgstr "Buscar Regla Sudo."
@@ -4548,17 +4629,33 @@ msgstr "Añadir una opción a la Regla Sudo."
msgid "Remove an option from Sudo Rule."
msgstr "Quitar una opción de la Regla Sudo."
+msgid "Unknown"
+msgstr "Desconocido"
+
msgid "Realm name"
msgstr "Nombre de reino "
+#, python-format
+msgid "invalid SID: %(value)s"
+msgstr "SID no válido: %(value)s"
+
+msgid "only \"ad\" is supported"
+msgstr "solo se admite «ad»"
+
+msgid "range exists"
+msgstr "el intervalo existe"
+
+msgid "Name"
+msgstr "Nombre"
+
+msgid "SID"
+msgstr "SID"
+
msgid "Kerberos keys available"
msgstr "Claves Kerberos disponibles"
-msgid "user"
-msgstr "usuario"
-
-msgid "users"
-msgstr "usuarios"
+msgid "Failed logins"
+msgstr "Inicios de sesión fallidos"
msgid "User login"
msgstr "Ingreso de usuario"
@@ -4633,9 +4730,6 @@ msgstr "Unidad. org"
msgid "Job Title"
msgstr "Cargo"
-msgid "Manager"
-msgstr "Manager"
-
msgid "Car License"
msgstr "Licencia de conducción"
@@ -4734,20 +4828,33 @@ msgstr "Cuenta desbloqueada \" %(value)s \""
msgid "Permission denied: %(file)s"
msgstr "Permiso denegado:%(file)s "
+msgid "too many '@' characters"
+msgstr "demasiados ‘@’ caracteres"
+
msgid "cannot be longer that 255 characters"
msgstr "no puede ser más larga de 255 caracteres"
-msgid "too many '@' characters"
-msgstr "demasiados ‘@’ caracteres"
+msgid "invalid SSH public key"
+msgstr "clave SSH pública no válida"
#, python-format
msgid "Issuer \"%(issuer)s\" does not match the expected issuer"
msgstr "Emisor \"%(issuer)s\" no coincide con el emisor esperado "
#, python-format
+msgid "Retrieving CA status failed: %s"
+msgstr "Falló la obtención del estado de CA: %s"
+
+#, python-format
msgid "objectclass %s not found"
msgstr "clase objeto %s no encontrada"
+msgid "domain is not configured"
+msgstr "el dominio no está configurado"
+
+msgid "SID is not valid"
+msgstr "el SID no es válido"
+
#, python-format
msgid "Unable to communicate with CMS (%s)"
msgstr "No es posible comunicarse con CMS (%s)"
@@ -4789,14 +4896,6 @@ msgid "Out of memory \n"
msgstr "¡Memoria insuficiente!\n"
#, c-format
-msgid "Out of Memory!\n"
-msgstr "¡Memoria insuficiente!\n"
-
-#, c-format
-msgid "Failed to create control!\n"
-msgstr "¡Falló crear control!\n"
-
-#, c-format
msgid "Unable to initialize ldap library!\n"
msgstr "¡No puede iniciar biblioteca IDAP!\n"
@@ -4805,10 +4904,6 @@ msgid "Unable to set LDAP_OPT_X_SASL_NOCANON\n"
msgstr "Incapaz de fijar LDAP_OPT_X_SASL_NOCANON \n"
#, c-format
-msgid "Unable to set ldap options!\n"
-msgstr "¡No puede establecer opciones IDAP!\n"
-
-#, c-format
msgid "Simple bind failed\n"
msgstr "¡Falló vinculación sencilla!\n"
@@ -4821,9 +4916,21 @@ msgid "Missing reply control!\n"
msgstr "¡Falta control de respuesta!\n"
#, c-format
+msgid "Out of Memory!\n"
+msgstr "¡Memoria insuficiente!\n"
+
+#, c-format
+msgid "Failed to create control!\n"
+msgstr "¡Falló crear control!\n"
+
+#, c-format
msgid "ber_init() failed, Invalid control ?!\n"
msgstr "Falló ber_init(), ¿control inválido?\n"
+#, c-format
+msgid "Out of memory!\n"
+msgstr "¡Memoria insuficiente!\n"
+
msgid "New Principal Password"
msgstr "Nueva contraseña principal"
@@ -4987,10 +5094,6 @@ msgid "IPA namingContext not found\n"
msgstr "IPA namingContext no encontrado \n"
#, c-format
-msgid "Out of memory!\n"
-msgstr "¡Memoria insuficiente!\n"
-
-#, c-format
msgid "Search for ipaCertificateSubjectBase failed with error %d"
msgstr "Búsqueda de ipaCertificateSubjectBase falló con error %d"
@@ -5064,6 +5167,10 @@ msgid "result not found in XML-RPC response\n"
msgstr "resultado no se encuentra en respuesta XML-RPC\n"
#, c-format
+msgid "The hostname must not be: %s\n"
+msgstr "El nombre del equipo no debe ser: %s\n"
+
+#, c-format
msgid "Unable to join host: Kerberos Credential Cache not found\n"
msgstr ""
"No se puede unir host: cache de credenciales de Kerberos no se encuentra\n"
@@ -5181,14 +5288,14 @@ msgstr "Quite todos los principales en este ámbito"
msgid "Closing keytab failed\n"
msgstr "Cierre de tabla de claves falló\n"
+msgid "Out of memory\n"
+msgstr "¡Memoria insuficiente!\n"
+
msgid "Out of memory!?\n"
msgstr ""
"¡Memoria insuficiente!\n"
"\n"
-msgid "Out of memory\n"
-msgstr "¡Memoria insuficiente!\n"
-
msgid "Enctype comparison failed!\n"
msgstr "¡Falló comparación de Enctype!\n"
@@ -5197,3 +5304,6 @@ msgstr "Falló la creación de clave aleatoria\n"
msgid "Failed to create key!\n"
msgstr "¡Falló la creación de clave!\n"
+
+#~ msgid "Unable to set ldap options!\n"
+#~ msgstr "¡No puede establecer opciones IDAP!\n"
diff --git a/install/po/eu.po b/install/po/eu.po
index 8cc59366c..ed3fba5b4 100644
--- a/install/po/eu.po
+++ b/install/po/eu.po
@@ -9,10 +9,10 @@ msgstr ""
"Project-Id-Version: FreeIPA\n"
"Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/"
"newticket\n"
-"POT-Creation-Date: 2013-10-09 14:39+0200\n"
-"PO-Revision-Date: 2013-08-01 14:06+0000\n"
+"POT-Creation-Date: 2014-06-27 16:29+0200\n"
+"PO-Revision-Date: 2014-06-25 19:44+0000\n"
"Last-Translator: Petr Viktorin <encukou@gmail.com>\n"
-"Language-Team: Basque (http://www.transifex.com/projects/p/fedora/language/"
+"Language-Team: Basque (http://www.transifex.com/projects/p/freeipa/language/"
"eu/)\n"
"Language: eu\n"
"MIME-Version: 1.0\n"
@@ -105,6 +105,12 @@ msgstr "ACI izen berria"
msgid "Description"
msgstr "Deskribapena"
+msgid "Users"
+msgstr "Erabiltzaileak"
+
+msgid "Hosts"
+msgstr "Ostalariak"
+
msgid "description"
msgstr "deskribapena"
@@ -241,12 +247,6 @@ msgstr "Arau-mota"
msgid "Enabled"
msgstr "Gaituta"
-msgid "Users"
-msgstr "Erabiltzaileak"
-
-msgid "Hosts"
-msgstr "Ostalariak"
-
msgid "Host Groups"
msgstr "Ostalari-taldeak"
@@ -446,6 +446,9 @@ msgstr "LDAP URI baliogabea."
msgid "NIS domain name"
msgstr "NIS domeinu-izena"
+msgid "Manager"
+msgstr "Kudeatzailea"
+
msgid "PKINIT"
msgstr "PKINIT"
@@ -514,9 +517,6 @@ msgstr "Bilagailu-zenbakia"
msgid "Fax Number"
msgstr "Fax-zenbakia"
-msgid "Manager"
-msgstr "Kudeatzailea"
-
#, python-format
msgid "Added user \"%(value)s\""
msgstr "\"%(value)s\" erabiltzailea gehituta"
diff --git a/install/po/fr.po b/install/po/fr.po
index 736b94269..6ab213314 100644
--- a/install/po/fr.po
+++ b/install/po/fr.po
@@ -4,21 +4,22 @@
#
# Translators:
# Automatically generated, 2010
-# Dralyab <geodebay@gmail.com>, 2013
-# Dralyab <geodebay@gmail.com>, 2013
+# Gé Baylard <geodebay@gmail.com>, 2013
+# Gé Baylard <geodebay@gmail.com>, 2013
# Gé Baylard <<Geodebay@gmail.com>>, 2013
-# Jérôme Fenal <jfenal@gmail.com>, 2011-2013
+# Jérôme Fenal <jfenal@gmail.com>, 2011-2014
# Jérôme Fenal <jfenal@gmail.com>, 2011
-# Petr Viktorin <encukou@gmail.com>, 2013
+# Petr Viktorin <encukou@gmail.com>, 2013-2014
msgid ""
msgstr ""
"Project-Id-Version: FreeIPA\n"
"Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/"
"newticket\n"
-"POT-Creation-Date: 2013-09-12 15:37+0200\n"
-"PO-Revision-Date: 2013-08-02 08:48+0000\n"
+"POT-Creation-Date: 2014-06-27 16:29+0200\n"
+"PO-Revision-Date: 2014-06-25 19:59+0000\n"
"Last-Translator: Jérôme Fenal <jfenal@gmail.com>\n"
-"Language-Team: French <trans-fr@lists.fedoraproject.org>\n"
+"Language-Team: French (http://www.transifex.com/projects/p/freeipa/language/"
+"fr/)\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -57,6 +58,13 @@ msgstr "Nom de commande"
msgid "Positional arguments"
msgstr "Arguments positionnels"
+#, python-format
+msgid "Same as --%s"
+msgstr "Identique à --%s"
+
+msgid "Deprecated options"
+msgstr "Options obsolètes"
+
msgid "No file to read"
msgstr "Pas de fichier à lire"
@@ -332,7 +340,7 @@ msgid "Not allowed on non-leaf entry"
msgstr "Interdit sur une entrée de type nœud"
msgid "LDAP timeout"
-msgstr "expiration de délai LDAP"
+msgstr "Délai d'expiration LDAP"
#, python-format
msgid "Certificate operation cannot be completed: %(error)s"
@@ -522,12 +530,39 @@ msgstr "doit être « %(value)s »"
msgid "must be one of %(values)s"
msgstr "doit être une valeur parmi %(values)s"
+msgid "must be datetime value"
+msgstr "doit être une valeur date/heure"
+
msgid "incomplete time value"
msgstr "valeur de temps incomplète"
msgid "this option is deprecated"
msgstr "cette option est obsolète"
+msgid "must be DNS name"
+msgstr "doit être un nom DNS"
+
+msgid "invalid escape code in domain name"
+msgstr "code d'échappement invalide dans le nom de domaine"
+
+msgid "empty DNS label"
+msgstr "libellé DNS vide"
+
+msgid "domain name cannot be longer than 255 characters"
+msgstr "le nom de domaine ne peut excéder 255 caractères"
+
+msgid "DNS label cannot be longer than 63 characters"
+msgstr "un libellé DNS ne peut excéder 63 caractères"
+
+msgid "invalid domain name"
+msgstr "nom de domaine invalide"
+
+msgid "must be absolute"
+msgstr "doit être absolu"
+
+msgid "must be relative"
+msgstr "doit être relatif"
+
msgid "A list of ACI values"
msgstr "Une liste de valeurs d'ACI"
@@ -555,7 +590,7 @@ msgstr "Un parmi group, permission ou self est requis"
#, python-format
msgid "Group '%s' does not exist"
-msgstr "Le groupe '%s' n'existe pas"
+msgstr "Le groupe « %s » n'existe pas"
msgid "empty filter"
msgstr "filtre vide"
@@ -672,6 +707,9 @@ msgid_plural "%(count)d ACIs matched"
msgstr[0] "%(count)d ACI correspondantes"
msgstr[1] "%(count)d ACI correspondantes"
+msgid "Location of the ACI"
+msgstr "Emplacement de l'ACI"
+
msgid "New ACI name"
msgstr "Nouveau nom de l'ACI"
@@ -682,185 +720,16 @@ msgstr "ACI renommée en « %(value)s »"
msgid ""
"\n"
"Auto Membership Rule.\n"
+msgstr ""
"\n"
-"Bring clarity to the membership of hosts and users by configuring inclusive\n"
-"or exclusive regex patterns, you can automatically assign a new entries "
-"into\n"
-"a group or hostgroup based upon attribute information.\n"
-"\n"
-"A rule is directly associated with a group by name, so you cannot create\n"
-"a rule without an accompanying group or hostgroup.\n"
-"\n"
-"A condition is a regular expression used by 389-ds to match a new incoming\n"
-"entry with an automember rule. If it matches an inclusive rule then the\n"
-"entry is added to the appropriate group or hostgroup.\n"
-"\n"
-"A default group or hostgroup could be specified for entries that do not\n"
-"match any rule. In case of user entries this group will be a fallback group\n"
-"because all users are by default members of group specified in IPA config.\n"
-"\n"
+"Règle d'adhésion automatique.\n"
+
+msgid ""
"\n"
"EXAMPLES:\n"
-"\n"
-" Add the initial group or hostgroup:\n"
-" ipa hostgroup-add --desc=\"Web Servers\" webservers\n"
-" ipa group-add --desc=\"Developers\" devel\n"
-"\n"
-" Add the initial rule:\n"
-" ipa automember-add --type=hostgroup webservers\n"
-" ipa automember-add --type=group devel\n"
-"\n"
-" Add a condition to the rule:\n"
-" ipa automember-add-condition --key=fqdn --type=hostgroup --inclusive-"
-"regex=^web[1-9]+\\.example\\.com webservers\n"
-" ipa automember-add-condition --key=manager --type=group --inclusive-"
-"regex=^uid=mscott devel\n"
-"\n"
-" Add an exclusive condition to the rule to prevent auto assignment:\n"
-" ipa automember-add-condition --key=fqdn --type=hostgroup --exclusive-"
-"regex=^web5\\.example\\.com webservers\n"
-"\n"
-" Add a host:\n"
-" ipa host-add web1.example.com\n"
-"\n"
-" Add a user:\n"
-" ipa user-add --first=Tim --last=User --password tuser1 --manager=mscott\n"
-"\n"
-" Verify automembership:\n"
-" ipa hostgroup-show webservers\n"
-" Host-group: webservers\n"
-" Description: Web Servers\n"
-" Member hosts: web1.example.com\n"
-"\n"
-" ipa group-show devel\n"
-" Group name: devel\n"
-" Description: Developers\n"
-" GID: 1004200000\n"
-" Member users: tuser\n"
-"\n"
-" Remove a condition from the rule:\n"
-" ipa automember-remove-condition --key=fqdn --type=hostgroup --inclusive-"
-"regex=^web[1-9]+\\.example\\.com webservers\n"
-"\n"
-" Modify the automember rule:\n"
-" ipa automember-mod\n"
-"\n"
-" Set the default (fallback) target group:\n"
-" ipa automember-default-group-set --default-group=webservers --"
-"type=hostgroup\n"
-" ipa automember-default-group-set --default-group=ipausers --type=group\n"
-"\n"
-" Remove the default (fallback) target group:\n"
-" ipa automember-default-group-remove --type=hostgroup\n"
-" ipa automember-default-group-remove --type=group\n"
-"\n"
-" Show the default (fallback) target group:\n"
-" ipa automember-default-group-show --type=hostgroup\n"
-" ipa automember-default-group-show --type=group\n"
-"\n"
-" Find all of the automember rules:\n"
-" ipa automember-find\n"
-"\n"
-" Display a automember rule:\n"
-" ipa automember-show --type=hostgroup webservers\n"
-" ipa automember-show --type=group devel\n"
-"\n"
-" Delete an automember rule:\n"
-" ipa automember-del --type=hostgroup webservers\n"
-" ipa automember-del --type=group devel\n"
msgstr ""
"\n"
-"Règle d'auto adhésion.\n"
-"\n"
-"Il est possible d'apporter de la clarté dans l'adhésion de systèmes ou\n"
-"d'utilisateurs en configurant des motifs d'expressions rationnelles "
-"inclusives\n"
-"ou exclusives, ce qui permet d'assigner de nouvelles entrées dans un groupe\n"
-"d'utilisateurs ou de systèmes sur la base d'informations dans les "
-"attributs.\n"
-"\n"
-"Une règle est directement associée avec un groupe par son nom, il est donc\n"
-"impossible de créer une règle sans le nom du groupe auquel elle est "
-"associée.\n"
-"\n"
-"Une condition est une expression rationnelle utilisée par 389-ds pour\n"
-"identifier les nouvelles entrées à utiliser dans la règle d'auto-adhésion.\n"
-"S'il y a correspondance avec une règle d'auto-adhésion, alors l'entrée\n"
-"est automatiquement ajoutée au groupe d'utilisateurs ou de systèmes.\n"
-"\n"
-"Un groupe ou un groupe de systèmes par défaut peut être spécifié pour les\n"
-"entrées qui ne correspondent à aucune règle. Dans le cas des entrées\n"
-"utilisateurs, ce groupe sera le groupe de repli car tous les utilisateurs\n"
-"sont par défaut membres d'un groupe spécifié dans la configuration IPA.\n"
-"\n"
-"EXEMPLES :\n"
-"\n"
-" Ajouter le groupe d'utilisateurs ou de systèmes initial :\n"
-" ipa hostgroup-add --desc=\"Web Servers\" webservers\n"
-" ipa group-add --desc=\"Developers\" devel\n"
-"\n"
-" Créer la règle initiale :\n"
-" ipa automember-add --type=hostgroup webservers\n"
-" ipa automember-add --type=group devel\n"
-"\n"
-" Ajouter une condition à la règle :\n"
-" ipa automember-add-condition --key=fqdn --type=hostgroup --inclusive-"
-"regex=^web[1-9]+\\\\.example\\\\.com webservers\n"
-" ipa automember-add-condition --key=manager --type=group --inclusive-"
-"regex=^uid=mscott devel\n"
-"\n"
-" Ajouter une condition exclusive à la règle empêchant l'auto-adhésion :\n"
-" ipa automember-add-condition --key=fqdn --type=hostgroup --exclusive-"
-"regex=^web5\\\\.example\\\\.com webservers\n"
-"\n"
-" Ajouter un système :\n"
-" ipa host-add web1.example.com\n"
-"\n"
-" Ajouter un utilisateur :\n"
-" ipa user-add --first=Tim --last=User --password tuser1 --manager=mscott\n"
-"\n"
-" Vérifier l'auto-adhésion :\n"
-" ipa hostgroup-show webservers\n"
-" Host-group: webservers\n"
-" Description: Web Servers\n"
-" Member hosts: web1.example.com\n"
-"\n"
-" ipa group-show devel\n"
-" Group name: devel\n"
-" Description: Developers\n"
-" GID: 1004200000\n"
-" Member users: tuser\n"
-"\n"
-" Supprimer une conditition de la règle :\n"
-" ipa automember-remove-condition --key=fqdn --type=hostgroup --inclusive-"
-"regex=^web[1-9]+\\.example\\.com webservers\n"
-"\n"
-" Modifier la règle d'auto-adhésion:\n"
-" ipa automember-mod\n"
-"\n"
-" Définir le groupe cible (de repli) par défaut :\n"
-" ipa automember-default-group-set --default-group=webservers --"
-"type=hostgroup\n"
-" ipa automember-default-group-set --default-group=ipausers --type=group\n"
-"\n"
-" Supprimer le groupe cible (de repli) par défaut :\n"
-" ipa automember-default-group-remove --type=hostgroup\n"
-" ipa automember-default-group-remove --type=group\n"
-"\n"
-" Afficher le groupe cible (de repli) par défaut :\n"
-" ipa automember-default-group-show --type=hostgroup\n"
-" ipa automember-default-group-show --type=group\n"
-"\n"
-" Rechercher toutes les règles d'auto-adhésion :\n"
-" ipa automember-find\n"
-"\n"
-" Afficher une règle d'auto-adhésion :\n"
-" ipa automember-show --type=hostgroup webservers\n"
-" ipa automember-show --type=group devel\n"
-"\n"
-" Supprimer une règle d'auto-adhésion :\n"
-" ipa automember-del --type=hostgroup webservers\n"
-" ipa automember-del --type=group devel\n"
+"EXEMPLES :\n"
msgid "Inclusive Regex"
msgstr "Regex inclusive"
@@ -885,7 +754,7 @@ msgid "Grouping to which the rule applies"
msgstr "Type de groupe auquel la règle s'applique"
msgid "Automember Rule"
-msgstr "Règle d'auto-adhésion"
+msgstr "Règle d'auto adhésion"
msgid "Auto Membership Rule"
msgstr "Règle d'auto-adhésion"
@@ -903,10 +772,6 @@ msgid "Default group for entries to land"
msgstr "Groupe par défaut pour les nouvelles entrées"
#, python-format
-msgid "Group: %s not found!"
-msgstr "Groupe : %s introuvable !"
-
-#, python-format
msgid "%s is not a valid attribute."
msgstr "%s n'est pas un attribut valide."
@@ -1056,9 +921,7 @@ msgstr "Groupe par défaut (de repli) où les entrées seront visibles"
#, python-format
msgid "Set default (fallback) group for automember \"%(value)s\""
-msgstr ""
-"Groupe par défaut (de repli) défini pour l'appartenance automatique "
-"« %(value)s »"
+msgstr "Groupe par défaut (de repli) défini pour l'auto-adhésion « %(value)s »"
msgid ""
"\n"
@@ -1073,8 +936,7 @@ msgstr ""
#, python-format
msgid "Removed default (fallback) group for automember \"%(value)s\""
msgstr ""
-"Groupe par défaut (de repli) supprimé pour l'appartenance automatique « "
-"%(value)s »"
+"Groupe par défaut (de repli) supprimé pour l'auto-adhésion « %(value)s »"
msgid "No default (fallback) group set"
msgstr "Pas de groupe par défaut (de repli) défini"
@@ -1085,10 +947,53 @@ msgid ""
" "
msgstr ""
"\n"
-" Afficher les informations par défaut (repli) pour les groupes "
-"d'appartenance automatique.\n"
+" Afficher les informations par défaut (repli) pour les groupes d'auto-"
+"adhésion.\n"
" "
+msgid "Rebuild auto membership."
+msgstr "Reconstruire l'appartenance automatique."
+
+msgid "Rebuild membership for all members of a grouping"
+msgstr "Reconstruire l'appartenance pour tous les membres d'un groupe"
+
+msgid "Users"
+msgstr "Utilisateurs"
+
+msgid "Rebuild membership for specified users"
+msgstr "Reconstruire l'appartenance pour les utilisateurs indiqués "
+
+msgid "Hosts"
+msgstr "Hôtes"
+
+msgid "Rebuild membership for specified hosts"
+msgstr "Reconstruire l'appartenance pour les hôtes indiqués"
+
+msgid "Task DN"
+msgstr "DN de la tâche"
+
+msgid "DN of the started task"
+msgstr "DN de la tâche démarrée"
+
+msgid "at least one of options: type, users, hosts must be specified"
+msgstr "au moins l'une des options type, users ou hosts doit être indiquée"
+
+msgid "users and hosts cannot both be set"
+msgstr "impossible d'indiquer à la fois les utilisateurs et les hôtes"
+
+msgid "hosts cannot be set when type is 'group'"
+msgstr "des hôtes ne peuvent être indiqués lorsque le type est « group »"
+
+msgid "users cannot be set when type is 'hostgroup'"
+msgstr ""
+"impossible d'indiquer les utilisateurs lorsque le type est « hostgroup »"
+
+msgid "Automember rebuild membership task completed"
+msgstr "La tâche de reconstruction d'appartenance automatique est terminée"
+
+msgid "Automember"
+msgstr "Auto-adhésion"
+
msgid ""
"\n"
"Automount\n"
@@ -1709,7 +1614,7 @@ msgid "No such attribute on this entry"
msgstr "Aucun attribut pour cette entrée"
msgid "Suppress processing of membership attributes."
-msgstr "Arrêt du traitement des attributs d'appartenance."
+msgstr "Arrêt du traitement des attributs d'adhésion."
msgid "Continuous mode: Don't stop on errors."
msgstr "Mode continu : pas d'arrêt sur erreurs."
@@ -1971,12 +1876,6 @@ msgstr ""
"http://www.ietf.org/rfc/rfc5280.txt\n"
"\n"
-msgid "Failure decoding Certificate Signing Request:"
-msgstr "Échec dans le décodage du Certificate Signing Request :"
-
-msgid "Failure decoding Certificate Signing Request"
-msgstr "Échec dans le décodage du Certificate Signing Request"
-
#, python-format
msgid "Failure decoding Certificate Signing Request: %s"
msgstr "Échec dans le décodage du Certificate Signing Request : %s"
@@ -2053,12 +1952,6 @@ msgstr ""
"l'entrée « %s »."
#, python-format
-msgid "no host record for subject alt name %s in certificate request"
-msgstr ""
-"pas d'enregistrement de système pour le nom alternatif de système %s sujet "
-"de la demande de certificat"
-
-#, python-format
msgid ""
"Insufficient privilege to create a certificate with subject alt name '%s'."
msgstr ""
@@ -2379,6 +2272,12 @@ msgstr "Types de PAC par défaut"
msgid "Default types of PAC supported for services"
msgstr "Types de PAC par défaut pris en charge pour les services"
+msgid "Default user authentication types"
+msgstr "Types d'authentification utilisateur par défaut"
+
+msgid "Default types of supported user authentication"
+msgstr "Types d'authentification utilisateur pris en charge par défaut"
+
msgid "Modify configuration options."
msgstr "Modifier les options de configuration."
@@ -2491,7 +2390,7 @@ msgid "Attributes to which the delegation applies"
msgstr "Attributs auxquels la délégation s'applique"
msgid "Member user group"
-msgstr "Membre du groupe d'utilisateurs"
+msgstr "Groupe d'utilisateurs membre"
msgid "User group to apply delegation to"
msgstr "Groupe d'utilisateur auquel appliquer la délégation"
@@ -2967,6 +2866,9 @@ msgstr ""
"globaux :\n"
" ipa dnsconfig-mod --forwarder=10.0.0.1\n"
+msgid "Permission value"
+msgstr "Valeur de permission"
+
#, python-format
msgid "invalid IP address version (is %(value)d, must be %(required_value)d)!"
msgstr ""
@@ -2985,10 +2887,6 @@ msgid "invalid address format"
msgstr "format d'adresse invalide"
#, python-format
-msgid "invalid domain-name: %s"
-msgstr "nom de domaine invalide : %s"
-
-#, python-format
msgid "%(port)s is not a valid port"
msgstr "%(port)s n'est pas un port valide"
@@ -3090,15 +2988,6 @@ msgstr "Type de condensé"
msgid "Digest"
msgstr "Condensé"
-msgid "Flags"
-msgstr "Drapeaux"
-
-msgid "Protocol"
-msgstr "Protocole"
-
-msgid "Public Key"
-msgstr "Clé publique"
-
msgid "Preference"
msgstr "Préférence"
@@ -3181,18 +3070,14 @@ msgstr "'%(required)s' ne doit pas être vide lorsque '%(name)s' est défini"
msgid "A host willing to act as a mail exchanger"
msgstr "Un système désirant agir comme échangeur de messagerie"
-msgid ""
-"format must be specified as \"NEXT TYPE1 [TYPE2 [TYPE3 [...]]]\" (see RFC "
-"4034 for details)"
-msgstr ""
-"le format doit être spécifié comme « NEXT TYPE1 [TYPE2 [TYPE3 [...]]] » (cf. "
-"RFC 4034 pour les détails)"
+msgid "Flags"
+msgstr "Drapeaux"
-msgid "Next Domain Name"
-msgstr "Nom de domaine suivant"
+msgid "Iterations"
+msgstr "Itérations"
-msgid "Type Map"
-msgstr "Type de carte"
+msgid "Salt"
+msgstr "Graine"
msgid "flags must be one of \"S\", \"A\", \"U\", or \"P\""
msgstr ""
@@ -3232,27 +3117,6 @@ msgstr ""
msgid "the value does not follow \"YYYYMMDDHHMMSS\" time format"
msgstr "la valeur n'est pas au format temporel « YYYYMMDDHHMMSS »"
-msgid "Type Covered"
-msgstr "Type couvert"
-
-msgid "Labels"
-msgstr "Étiquettes"
-
-msgid "Original TTL"
-msgstr "TTL originel"
-
-msgid "Signature Expiration"
-msgstr "Expiration de signature"
-
-msgid "Signature Inception"
-msgstr "Création de signature"
-
-msgid "Signer's Name"
-msgstr "Signataire"
-
-msgid "Signature"
-msgstr "Signature"
-
msgid "Fingerprint Type"
msgstr "Type d'empreinte"
@@ -3276,18 +3140,6 @@ msgstr ""
msgid "Managedby permission"
msgstr "Permission managedby"
-msgid "DNS zone"
-msgstr "Zone DNS"
-
-msgid "DNS zones"
-msgstr "Zones DNS"
-
-msgid "DNS Zones"
-msgstr "Zones DNS"
-
-msgid "DNS Zone"
-msgstr "Zone DNS"
-
msgid "Zone name"
msgstr "Nom de zone"
@@ -3300,6 +3152,60 @@ msgstr "Zone inverse de réseau IP"
msgid "IP network to create reverse zone name from"
msgstr "Réseau IP à partir duquel créer une zone inverse"
+msgid "Active zone"
+msgstr "Zone active"
+
+msgid "Is zone active?"
+msgstr "La zone est-elle active ?"
+
+msgid "Zone forwarders"
+msgstr "Transmetteurs de zone"
+
+msgid ""
+"Per-zone forwarders. A custom port can be specified for each forwarder using "
+"a standard format \"IP_ADDRESS port PORT\""
+msgstr ""
+"Transmetteur par zone. Un port personnalisé peut être spécifié pour chaque "
+"transmetteur en utilisant le format standard « adresse_IP port PORT »"
+
+msgid "Forward policy"
+msgstr "Politique de transmission"
+
+msgid ""
+"Per-zone conditional forwarding policy. Set to \"none\" to disable "
+"forwarding to global forwarder for this zone. In that case, conditional zone "
+"forwarders are disregarded."
+msgstr ""
+"Politique de tranmission conditionnelle par zone. Mettre à « none » pour "
+"désactiver la transmission à un transmetteur global pour cette zone. Dans ce "
+"cas, les transmetteurs de zone conditionnels sont ignorés."
+
+msgid "DNS is not configured"
+msgstr "Le DNS n'est pas configuré"
+
+msgid "Search for DNS zones (SOA records)."
+msgstr "Rechercher des zones DNS (enregistrements SOA)."
+
+#, python-format
+msgid "Added system permission \"%(value)s\""
+msgstr "Permission système « %(value)s » ajoutée"
+
+#, python-format
+msgid "Removed system permission \"%(value)s\""
+msgstr "Permission système « %(value)s » supprimée"
+
+msgid "DNS zone"
+msgstr "Zone DNS"
+
+msgid "DNS zones"
+msgstr "Zones DNS"
+
+msgid "DNS Zones"
+msgstr "Zones DNS"
+
+msgid "DNS Zone"
+msgstr "Zone DNS"
+
msgid "Authoritative nameserver"
msgstr "Serveur de nom faisant autorité"
@@ -3339,11 +3245,8 @@ msgstr "Minimum SOA"
msgid "How long should negative responses be cached"
msgstr "Durée de maintien en cache des réponses négatives"
-msgid "SOA time to live"
-msgstr "Durée de vie SOA"
-
-msgid "SOA record time to live"
-msgstr "Durée de vie de l'enregistrement SOA"
+msgid "Time to live"
+msgstr "Durée de vie"
msgid "SOA class"
msgstr "Classe SOA"
@@ -3354,12 +3257,6 @@ msgstr "Classe de l'enregistrement SOA "
msgid "BIND update policy"
msgstr "Politique de mise à jour BIND"
-msgid "Active zone"
-msgstr "Zone active"
-
-msgid "Is zone active?"
-msgstr "La zone est-elle active ?"
-
msgid "Dynamic update"
msgstr "Mise à jour dynamique"
@@ -3386,28 +3283,6 @@ msgstr ""
"Liste séparée par des points-virgules d'adresses IP de systèmes ou de "
"réseaux autorisés à effectuer des transferts"
-msgid "Zone forwarders"
-msgstr "Transmetteurs de zone"
-
-msgid ""
-"Per-zone forwarders. A custom port can be specified for each forwarder using "
-"a standard format \"IP_ADDRESS port PORT\""
-msgstr ""
-"Transmetteur par zone. Un port personnalisé peut être spécifié pour chaque "
-"transmetteur en utilisant le format standard « adresse_IP port PORT »"
-
-msgid "Forward policy"
-msgstr "Politique de transmission"
-
-msgid ""
-"Per-zone conditional forwarding policy. Set to \"none\" to disable "
-"forwarding to global forwarder for this zone. In that case, conditional zone "
-"forwarders are disregarded."
-msgstr ""
-"Politique de tranmission conditionnelle par zone. Mettre à « none » pour "
-"désactiver la transmission à un transmetteur global pour cette zone. Dans ce "
-"cas, les transmetteurs de zone conditionnels sont ignorés."
-
msgid "Allow PTR sync"
msgstr "Autoriser la synchronisation PTR"
@@ -3437,9 +3312,6 @@ msgstr ""
msgid "Nameserver IP address"
msgstr "Adresse IP du serveur de noms"
-msgid "DNS is not configured"
-msgstr "Le DNS n'est pas configuré"
-
msgid "Nameserver address is not a domain name"
msgstr "L'adresse du serveur de nom n'est pas un nom de domaine"
@@ -3471,9 +3343,6 @@ msgstr ""
"Forcer un changement de serveur de nom même si le serveur de nom n'est pas "
"dans le DNS"
-msgid "Search for DNS zones (SOA records)."
-msgstr "Rechercher des zones DNS (enregistrements SOA)."
-
msgid "Forward zones only"
msgstr "Zones forward uniquement"
@@ -3501,17 +3370,9 @@ msgstr "Zone DNS « %(value)s » activée"
msgid "Add a permission for per-zone access delegation."
msgstr "Ajouter une permission pour la délégation par zone."
-#, python-format
-msgid "Added system permission \"%(value)s\""
-msgstr "Permission système « %(value)s » ajoutée"
-
msgid "Remove a permission for per-zone access delegation."
msgstr "Supprimer une permission pour la délégation par zone."
-#, python-format
-msgid "Removed system permission \"%(value)s\""
-msgstr "Permission système « %(value)s » supprimée"
-
msgid "DNS resource record"
msgstr "Enregistrement de ressource DNS"
@@ -3527,9 +3388,6 @@ msgstr "Enregistrement de ressources DNS"
msgid "Record name"
msgstr "Nom d'enregistrement"
-msgid "Time to live"
-msgstr "Durée de vie"
-
msgid "Class"
msgstr "Classe"
@@ -4209,12 +4067,6 @@ msgstr "Catégorie de service sur laquelle la règle s'applique"
msgid "Enabled"
msgstr "Activée"
-msgid "Users"
-msgstr "Utilisateurs"
-
-msgid "Hosts"
-msgstr "Hôtes"
-
msgid "Host Groups"
msgstr "Groupes d'hôtes"
@@ -4995,14 +4847,14 @@ msgid ""
"- every enrolled client generates a host entry\n"
msgstr ""
"\n"
-"Systèmes/Machines\n"
+"Hôtes/Machines\n"
"\n"
-"Un système représente une machine, et peut être utilisé dans plusieurs\n"
-"contextes :\n"
-"- les entrées de services sont associés à un système\n"
-"- un système stocke les entrées des principaux de services host/\n"
-"- un système peut être utilisé dans les règles de contrôles d'accès HBAC\n"
-"- chaque client enregistré crée une entrée système\n"
+"Un hôte représente une machine. Elle peut être utilisée dans un certain "
+"nombre de contextes :\n"
+"- les entrées de service associées à un hôte,\n"
+"- un hôte stockant le principal de service host/,\n"
+"- un hôte utilisé dans les règles Host-based Access Control (HBAC),\n"
+"- chaque client enregistré crée sa propre entrée d'hôte.\n"
msgid ""
"\n"
@@ -5026,17 +4878,35 @@ msgstr ""
"1. La machine est enregistrée par un administrateur de plein droit.\n"
" L'entrée système peut pré-exister ou non. Un administrateur de\n"
" plein droit est membre du rôle hostadmin ou du groupe admins\n"
-"2. L'inscription est faite par un administrateur limité. Le système\n"
+"2. L'inscription est faite par un administrateur limité. L'hôte\n"
" doit avoir été préalablement créé. Un administrateur limité\n"
" possède le privilège Host Enrollment.\n"
"3. Le système a été créé avec un mot de passe à usage unique.\n"
msgid ""
"\n"
-"EXAMPLES:\n"
+"RE-ENROLLMENT:\n"
+"\n"
+"Host that has been enrolled at some point, and lost its configuration (e.g. "
+"VM\n"
+"destroyed) can be re-enrolled.\n"
+"\n"
+"For more information, consult the manual pages for ipa-client-install.\n"
+"\n"
+"A host can optionally store information such as where it is located,\n"
+"the OS that it runs, etc.\n"
msgstr ""
"\n"
-"EXEMPLES :\n"
+"RÉ-INSCRIPTION :\n"
+"\n"
+"Un hôte qui a déjà été inscrit mais a perdu sa configuration (parce que sa "
+"VM a été supprimée par exemple), peut être ré-inscrit.\n"
+"\n"
+"Pour plus d'informations sur le sujet, consulter les pages de manuel de la "
+"commande ipa-client-install.\n"
+"\n"
+"Un système peut de façon optionnelle stocker des informations\n"
+"complémentaires comme sa localisation, son système d'exploitation, etc.\n"
msgid ""
"\n"
@@ -5045,8 +4915,8 @@ msgid ""
"com\n"
msgstr ""
"\n"
-" Ajouter un nouveau système :\n"
-" ipa host-add --location=\"labo 3e étage\" --locality=Dallas test.example."
+" Ajouter un nouvel hôte :\n"
+" ipa host-add --location=\"3rd floor lab\" --locality=Dallas test.example."
"com\n"
msgid ""
@@ -5055,7 +4925,7 @@ msgid ""
" ipa host-del test.example.com\n"
msgstr ""
"\n"
-" Supprimer un système :\n"
+" Supprimer un hôte :\n"
" ipa host-del test.example.com\n"
msgid ""
@@ -5064,7 +4934,7 @@ msgid ""
" ipa host-add --os='Fedora 12' --password=Secret123 test.example.com\n"
msgstr ""
"\n"
-" Ajouter un système avec un mot de passe à usage unique :\n"
+" Ajouter un nouvel hôte à l'aide d'un mot de passe à usage unique :\n"
" ipa host-add --os='Fedora 12' --password=Secret123 test.example.com\n"
msgid ""
@@ -5073,7 +4943,7 @@ msgid ""
" ipa host-add --os='Fedora 12' --random test.example.com\n"
msgstr ""
"\n"
-" Ajouter un nouveau système avec un mot de passe à usage unique aléatoire :\n"
+"Ajouter un nouvel hôte avec un mot de passe aléatoire :\n"
" ipa host-add --os='Fedora 12' --random test.example.com\n"
msgid ""
@@ -5082,7 +4952,7 @@ msgid ""
" ipa host-mod --os='Fedora 12' test.example.com\n"
msgstr ""
"\n"
-" Modifier les informations d'un système :\n"
+" Modifier les informations d'un hôte :\n"
" ipa host-mod --os='Fedora 12' test.example.com\n"
msgid ""
@@ -5091,8 +4961,8 @@ msgid ""
" ipa host-mod --sshpubkey= --updatedns test.example.com\n"
msgstr ""
"\n"
-" Supprimer les clés publiques SSH du système et modifie les DNS pour "
-"refléter ce changement :\n"
+" Supprimer les clés publiques SSH d'un hôte et modifier DNS en "
+"conséquence :\n"
" ipa host-mod --sshpubkey= --updatedns test.example.com\n"
msgid ""
@@ -5101,8 +4971,8 @@ msgid ""
" ipa host-disable test.example.com\n"
msgstr ""
"\n"
-" Désactiver la clé Kerberos du système, ses certificats SSL et tous\n"
-" ses services :\n"
+"Désactiver la clé Kerberos, les certificats SSL et tous les services d'un "
+"hôte :\n"
" ipa host-disable test.example.com\n"
msgid ""
@@ -5111,8 +4981,8 @@ msgid ""
" ipa host-add-managedby --hosts=test2 test\n"
msgstr ""
"\n"
-" Ajouter un système pouvant administrer le keytab et les certificats\n"
-" du système sur lequel la commande est lancée :\n"
+" Ajouter un hôte pouvant gérer la keytab et le certificat de l'hôte "
+"courant :\n"
" ipa host-add-managedby --hosts=test2 test\n"
msgid "Keytab"
@@ -5130,6 +5000,10 @@ msgstr "managedby en échec"
msgid "SSH public key fingerprint"
msgstr "Empreinte de clé publique SSH"
+#, python-format
+msgid "invalid domain-name: %s"
+msgstr "nom de domaine invalide : %s"
+
msgid "host"
msgstr "système"
@@ -5757,6 +5631,7 @@ msgstr "Nom du domaine à approuver"
msgid "Range type"
msgstr "Type de plage"
+#, python-brace-format
msgid "ID range type, one of {vals}"
msgstr "Type de plage d'identifiants, valeur à prendre parmi {vals}"
@@ -5974,91 +5849,117 @@ msgstr "Votre session a expiré. Merci de vous reconnecter."
msgid "Apply"
msgstr "Appliquer"
-msgid "Are you sure you want to proceed with the action."
+msgid "Rebuild auto membership"
+msgstr "Reconstruire l'appartenance automatique"
+
+msgid "Are you sure you want to proceed with the action?"
msgstr "Êtes-vous sûr de vouloir procéder à cette action ?"
-msgid "Are you sure you want to delete ${object}"
+#, python-brace-format
+msgid "Are you sure you want to delete ${object}?"
msgstr "Êtes-vous sûr de vouloir supprimer ${object} ?"
-msgid "Are you sure you want to disable ${object}"
+#, python-brace-format
+msgid "Are you sure you want to disable ${object}?"
msgstr "Êtes-vous sûr de vouloir désactiver ${object} ?"
-msgid "Are you sure you want to enable ${object}"
+#, python-brace-format
+msgid "Are you sure you want to enable ${object}?"
msgstr "Êtes-vous sûr de vouloir activer ${object} ?"
msgid "Actions"
msgstr "Actions"
+#, python-brace-format
msgid "Add RunAs ${other_entity} into ${entity} ${primary_key}"
msgstr "Ajouter RunAs ${other_entity} à ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add RunAs Groups into ${entity} ${primary_key}"
msgstr "Ajouter RunAs Groups à ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add ${other_entity} Managing ${entity} ${primary_key}"
msgstr "Ajouter ${other_entity} gérant ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add ${other_entity} into ${entity} ${primary_key}"
msgstr "Ajouter un objet ${other_entity} à l'objet ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add Allow ${other_entity} into ${entity} ${primary_key}"
msgstr "Ajouter Allow ${other_entity} à ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add Deny ${other_entity} into ${entity} ${primary_key}"
msgstr "Ajouter Deny ${other_entity} à ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add ${entity} ${primary_key} into ${other_entity}"
msgstr "Ajouter ${entity} ${primary_key} à ${other_entity}"
+#, python-brace-format
msgid "${count} item(s) added"
msgstr "${count} élément(s) ajouté(s)"
msgid "Direct Membership"
-msgstr "Appartenance directe"
+msgstr "Adhésion directe"
msgid "Indirect Membership"
-msgstr "Appartenance indirecte"
+msgstr "Adhésion indirecte"
msgid "No entries."
msgstr "Pas d'entrées."
+#, python-brace-format
msgid "Showing ${start} to ${end} of ${total} entries."
msgstr "Affichage des entrées ${start} à ${end} sur ${total}."
+#, python-brace-format
msgid "Remove RunAs ${other_entity} from ${entity} ${primary_key}"
msgstr "Supprimer RunAs${other_entity} de ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove RunAs Groups from ${entity} ${primary_key}"
msgstr "Supprimer RunAs Groups de ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove ${other_entity} Managing ${entity} ${primary_key}"
msgstr "Supprimer ${other_entity} gérant ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove ${other_entity} from ${entity} ${primary_key}"
msgstr "Supprimer l'objet ${other_entity} de l'objet ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove Allow ${other_entity} from ${entity} ${primary_key}"
msgstr ""
"Supprimer l'autorisation de ${other_entity} de ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove Deny ${other_entity} from ${entity} ${primary_key}"
msgstr ""
"Supprimer l'interdiction de ${other_entity} de ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove ${entity} ${primary_key} from ${other_entity}"
msgstr "Supprimer ${entity} ${primary_key} de ${other_entity}"
+#, python-brace-format
msgid "${count} item(s) removed"
msgstr "${count} élément(s) supprimé(s)"
msgid "Show Results"
msgstr "Afficher les résultats"
+msgid "About"
+msgstr "À propos de"
+
msgid "Add"
msgstr "Ajouter"
msgid "Add and Add Another"
-msgstr "Ajouter, puis ajouter un nouveau"
+msgstr "Ajouter, puis ajouter une nouvelle"
msgid "Add and Close"
msgstr "Ajouter et fermer"
@@ -6141,18 +6042,22 @@ msgstr "Général"
msgid "Identity Settings"
msgstr "Paramètres d'identité"
+#, python-brace-format
msgid "${entity} ${primary_key} Settings"
msgstr "Paramètres de l'objet ${entity} ${primary_key}"
msgid "Back to Top"
msgstr "Haut de page"
+#, python-brace-format
msgid "${entity} ${primary_key} updated"
msgstr "${entity} ${primary_key} modifié"
+#, python-brace-format
msgid "${entity} successfully added"
msgstr "${entity} ajoutée avec succès"
+#, python-brace-format
msgid "Add ${entity}"
msgstr "Ajouter ${entity}"
@@ -6176,6 +6081,7 @@ msgstr ""
msgid "Unsaved Changes"
msgstr "Modifications non sauvegardées"
+#, python-brace-format
msgid "Edit ${entity}"
msgstr "Modifier ${entity}"
@@ -6191,6 +6097,7 @@ msgstr "Redirection"
msgid "Select entries to be removed."
msgstr "Sélectionner les entrées à supprimer."
+#, python-brace-format
msgid "Remove ${entity}"
msgstr "Supprimer ${entity}"
@@ -6219,6 +6126,7 @@ msgstr "Recharger le navigateur."
msgid "Return to the main page and retry the operation"
msgstr "Retourner à la page principale et retenter l'opération"
+#, python-brace-format
msgid "An error has occurred (${error})"
msgstr "Une erreur est survenue (${error})"
@@ -6240,12 +6148,15 @@ msgstr "Erreur inconnue"
msgid "URL"
msgstr "URL"
+#, python-brace-format
msgid "${primary_key} is managed by:"
-msgstr "${primary_key} est gérée par :"
+msgstr "${primary_key} est géré par :"
+#, python-brace-format
msgid "${primary_key} members:"
msgstr "membres ${primary_key} :"
+#, python-brace-format
msgid "${primary_key} is a member of:"
msgstr "${primary_key} est membre de :"
@@ -6280,6 +6191,7 @@ msgstr ""
msgid "Logged In As"
msgstr "Connecté en tant que"
+#, python-brace-format
msgid ""
"To login with Kerberos, please make sure you have valid tickets (obtainable "
"via kinit) and <a href='http://${host}/ipa/config/unauthorized."
@@ -6311,6 +6223,7 @@ msgstr "secondes"
msgid "Attribute"
msgstr "Attribut"
+#, python-brace-format
msgid "Add Condition into ${pkey}"
msgstr "Ajouter une condition à ${pkey}"
@@ -6324,7 +6237,7 @@ msgid "Default user group"
msgstr "Groupe d'utilisateur par défaut"
msgid "Exclusive"
-msgstr "Exclus"
+msgstr "Exclusion"
msgid "Expression"
msgstr "Expression"
@@ -6336,7 +6249,7 @@ msgid "Host group rules"
msgstr "Règles de groupes d'hôtes"
msgid "Inclusive"
-msgstr "Inclus"
+msgstr "Inclusion"
msgid "User group rule"
msgstr "Règle de groupe utilisateur"
@@ -6413,6 +6326,10 @@ msgstr "Invalide avant, jusqu'au"
msgid "Fingerprints"
msgstr "Condensés"
+msgid "Get Certificate"
+msgstr "Obtenir le certificat"
+
+#, python-brace-format
msgid "Issue New Certificate for ${entity} ${primary_key}"
msgstr "Émettre un nouveau certificat pour l'objet ${entity} ${primary_key}"
@@ -6455,6 +6372,7 @@ msgstr "Raison de la révocation"
msgid "Remove from CRL"
msgstr "Retrait de la LRC"
+#, python-brace-format
msgid ""
"<ol> <li>Create a certificate database or use an existing one. To create a "
"new database:<br/> <code># certutil -N -d &lt;database path&gt;</code> </li> "
@@ -6476,6 +6394,7 @@ msgstr ""
msgid "Certificate requested"
msgstr "Certificat demandé"
+#, python-brace-format
msgid "Restore Certificate for ${entity} ${primary_key}"
msgstr "Restaurer un certificat pour ${entity} ${primary_key}"
@@ -6492,6 +6411,7 @@ msgstr ""
msgid "Certificate restored"
msgstr "Certificat restauré"
+#, python-brace-format
msgid "Revoke Certificate for ${entity} ${primary_key}"
msgstr "Révoquer un certificat pour l'objet ${entity} ${primary_key}"
@@ -6523,9 +6443,13 @@ msgstr "Certificat validé présent"
msgid "Validity"
msgstr "Validité"
+#, python-brace-format
msgid "Certificate for ${entity} ${primary_key}"
msgstr "Certificat pour l'objet ${entity} ${primary_key}"
+msgid "View Certificate"
+msgstr "Afficher le certificat"
+
msgid "Group Options"
msgstr "Options de groupe"
@@ -6583,6 +6507,7 @@ msgstr "Enregistrement non trouvé."
msgid "Redirection to PTR record"
msgstr "Redirection vers l'enregistrement PTR"
+#, python-brace-format
msgid "Zone found: ${zone}"
msgstr "Zone trouvée : ${zone}"
@@ -6697,6 +6622,7 @@ msgstr "Règles"
msgid "Run Test"
msgstr "Lancer test"
+#, python-brace-format
msgid "Specify external ${entity}"
msgstr "Spécifier un ${entity} externe"
@@ -6763,6 +6689,7 @@ msgstr "Décommissioner"
msgid "Are you sure you want to unprovision this host?"
msgstr "Êtes-vous sûr de vouloir décommissionner ce système ?"
+#, python-brace-format
msgid "Unprovisioning ${entity}"
msgstr "Décommissionnement de l'objet ${entity}"
@@ -6773,7 +6700,7 @@ msgid "Host Group Settings"
msgstr "Paramètres des groupe d'hôtes"
msgid "Kerberos Ticket Policy"
-msgstr "Politique de ticket Kerberos"
+msgstr "Politique de tickets Kerberos"
msgid "Netgroup Settings"
msgstr "Paramètres du netgroup"
@@ -6781,11 +6708,8 @@ msgstr "Paramètres du netgroup"
msgid "User"
msgstr "Utilisateur"
-msgid "Identity"
-msgstr "Identité"
-
-msgid "Permission with invalid target specification"
-msgstr "Permission avec spécification de cible invalide"
+msgid "Permission settings"
+msgstr "Paramètres de permission"
msgid "Privilege Settings"
msgstr "Paramètres du privilège"
@@ -6817,6 +6741,9 @@ msgstr "Domaine Active Directory"
msgid "Active Directory domain with POSIX attributes"
msgstr "Domaine Active Directory avec attributs POSIX"
+msgid "Detect"
+msgstr "Détection"
+
msgid "Local domain"
msgstr "Domaine local :"
@@ -6827,7 +6754,7 @@ msgid "Active Directory winsync"
msgstr "Active Directory winsync"
msgid "Realm Domains"
-msgstr "Domaines"
+msgstr "Domaines pour le royaume"
msgid "Check DNS"
msgstr "Vérification DNS"
@@ -6910,6 +6837,7 @@ msgstr "Accède cet hôte"
msgid "Option added"
msgstr "Option ajoutée"
+#, python-brace-format
msgid "${count} option(s) removed"
msgstr "${count} option(s) supprimée(s)"
@@ -6940,6 +6868,9 @@ msgstr "Domaine"
msgid "Establish using"
msgstr "Établir en utilisant"
+msgid "Fetch domains"
+msgstr "Récupérer les domaines"
+
msgid "Domain NetBIOS name"
msgstr "Nom de domaine NetBIOS"
@@ -6982,6 +6913,7 @@ msgstr "Adresse postale"
msgid "Misc. Information"
msgstr "Informations diverses"
+#, python-brace-format
msgid ""
"Are you sure you want to ${action} the user?<br/>The change will take effect "
"immediately."
@@ -6989,6 +6921,7 @@ msgstr ""
"Êtes-vous sûr de vouloir ${action} l'utilisateur ?<br/>Le changement prendra "
"effet immédiatement."
+#, python-brace-format
msgid "Click to ${action}"
msgstr "Cliquer pour ${action}."
@@ -6998,6 +6931,7 @@ msgstr "Mot de passe actuel"
msgid "Current password is required"
msgstr "Le mot de passe actuel est requis"
+#, python-brace-format
msgid "Your password expires in ${days} days."
msgstr "Votre mot de passe expire dans ${days} jours."
@@ -7031,18 +6965,21 @@ msgstr "Vérifier le mot de passe"
msgid "Are you sure you want to delete selected entries?"
msgstr "Êtes-vous sûr de vouloir supprimer les entrées sélectionnées ?"
+#, python-brace-format
msgid "${count} item(s) deleted"
msgstr "${count} élément(s) supprimé(s)"
msgid "Are you sure you want to disable selected entries?"
msgstr "Êtes-vous sûr de vouloir désactiver les entrées sélectionnées ?"
+#, python-brace-format
msgid "${count} item(s) disabled"
msgstr "${count} élément(s) désactivé(s)"
msgid "Are you sure you want to enable selected entries?"
msgstr "Êtes-vous sûr de vouloir activer les entrées sélectionnées ?"
+#, python-brace-format
msgid "${count} item(s) enabled"
msgstr "${count} élément(s) activé(s)"
@@ -7055,6 +6992,7 @@ msgstr "Liens rapides"
msgid "Select All"
msgstr "Tout sélectionner"
+#, python-brace-format
msgid ""
"Query returned more results than the configured size limit. Displaying the "
"first ${counter} results."
@@ -7068,12 +7006,12 @@ msgstr "Tout déselectionner"
msgid "Disabled"
msgstr "Désactivé"
+msgid "Working"
+msgstr "Fonctionnel"
+
msgid "Audit"
msgstr "Audit"
-msgid "Automember"
-msgstr "Auto-adhésion"
-
msgid "Automount"
msgstr "Automontage"
@@ -7083,6 +7021,9 @@ msgstr "DNS"
msgid "Host Based Access Control"
msgstr "Contrôlé d'accès basé sur les hôtes (HBAC)"
+msgid "Identity"
+msgstr "Identité"
+
msgid "IPA Server"
msgstr "Serveur IPA"
@@ -7101,6 +7042,12 @@ msgstr "Approbations"
msgid "True"
msgstr "Vrai"
+msgid "First"
+msgstr "Premier"
+
+msgid "Last"
+msgstr "Dernier"
+
msgid "Next"
msgstr "Suivant(e)"
@@ -7122,6 +7069,9 @@ msgstr "Le texte ne correspond pas au motif de champ"
msgid "Must be a decimal number"
msgstr "Doit être un nombre décimal"
+msgid "Format error"
+msgstr "Erreur de format"
+
msgid "Must be an integer"
msgstr "Doit être un entier"
@@ -7134,15 +7084,21 @@ msgstr "Pas une adresse IPv4 valide"
msgid "Not a valid IPv6 address"
msgstr "Pas une adresse IPv6 valide"
+#, python-brace-format
msgid "Maximum value is ${value}"
msgstr "La valeur maximale est ${value}"
+#, python-brace-format
msgid "Minimum value is ${value}"
msgstr "La valeur minimale est ${value}"
msgid "Not a valid network address"
msgstr "Pas une adresse réseau valide"
+msgid "Parse error"
+msgstr "Erreur d'analyse"
+
+#, python-brace-format
msgid "'${port}' is not a valid port"
msgstr "« ${port} » n'est pas un port valide"
@@ -7194,7 +7150,7 @@ msgid ""
" ipa krbtpolicy-mod admin --maxlife=3600\n"
msgstr ""
"\n"
-"Politique de ticket Kerberos\n"
+"Politique de tickets Kerberos\n"
"\n"
"Il n'existe qu'une unique politique de ticket Kerberos. Cette politique\n"
"définit la durée de vie maximale des tickets, ainsi que l'âge maximal de\n"
@@ -7235,10 +7191,10 @@ msgstr ""
" ipa krbtpolicy-mod admin --maxlife=3600\n"
msgid "kerberos ticket policy settings"
-msgstr "configuration de la politique de ticket Kerberos"
+msgstr "configuration de la politique de tickets Kerberos"
msgid "Manage ticket policy for specific user"
-msgstr "Administre la politique de ticket d'un utilisateur spécifique"
+msgstr "Administrer la politique de tickets d'un utilisateur spécifique"
msgid "Max life"
msgstr "Vie max."
@@ -7253,13 +7209,13 @@ msgid "Maximum renewable age (seconds)"
msgstr "Âge maximale de renouvellement (secondes)"
msgid "Modify Kerberos ticket policy."
-msgstr "Modifier la politique de ticket Kerberos."
+msgstr "Modifier la politique de tickets Kerberos."
msgid "Display the current Kerberos ticket policy."
-msgstr "Afficher la politique de ticket Kerberos."
+msgstr "Afficher la politique de tickets Kerberos."
msgid "Reset Kerberos ticket policy to the default values."
-msgstr "Réinitialiser la politique de ticket Kerberos."
+msgstr "Réinitialiser la politique de tickets Kerberos."
msgid ""
"\n"
@@ -7486,7 +7442,7 @@ msgstr ""
msgid ""
"Kerberos principal %s already exists. Use 'ipa user-mod' to set it manually."
msgstr ""
-"Le principal Kerberos %s existe déjà. Utiliser la commande 'ipa user-mod' "
+"Le principal Kerberos %s existe déjà. Utiliser la commande « ipa user-mod » "
"pour le créer manuellement."
#, python-format
@@ -7633,6 +7589,12 @@ msgstr "Ignorer le greffon de compatibilité"
msgid "Allows migration despite the usage of compat plugin"
msgstr "Autoriser les migrations malgré l'utilisation du greffon compat"
+msgid "CA certificate"
+msgstr "Certificat de l'AC"
+
+msgid "Load CA certificate of LDAP server from FILE"
+msgstr "Charger le certification de l'AC du serveur LDAP depuis FILE"
+
msgid "Lists of objects migrated; categorized by type."
msgstr "Liste des objets migrés, catégorisés par type."
@@ -7851,6 +7813,30 @@ msgstr "Ajouter des membres à un netgroup."
msgid "Remove members from a netgroup."
msgstr "Supprimer des membres d'un netgroup."
+msgid "Manager"
+msgstr "Responsable"
+
+msgid "Vendor"
+msgstr "Fournisseur"
+
+msgid "Model"
+msgstr "Modèle"
+
+msgid "Serial"
+msgstr "Numéro de série"
+
+msgid "Clock offset"
+msgstr "Décalage de l'horloge"
+
+msgid "Clock interval"
+msgstr "Intervalle de l'horloge"
+
+msgid "Counter"
+msgstr "Compteur"
+
+msgid "URI"
+msgstr "URI"
+
msgid ""
"\n"
"Set a user's password\n"
@@ -7904,120 +7890,9 @@ msgstr "Données d'authentification invalides"
msgid ""
"\n"
"Permissions\n"
-"\n"
-"A permission enables fine-grained delegation of rights. A permission is\n"
-"a human-readable form of a 389-ds Access Control Rule, or instruction "
-"(ACI).\n"
-"A permission grants the right to perform a specific task such as adding a\n"
-"user, modifying a group, etc.\n"
-"\n"
-"A permission may not contain other permissions.\n"
-"\n"
-"* A permission grants access to read, write, add or delete.\n"
-"* A privilege combines similar permissions (for example all the permissions\n"
-" needed to add a user).\n"
-"* A role grants a set of privileges to users, groups, hosts or hostgroups.\n"
-"\n"
-"A permission is made up of a number of different parts:\n"
-"\n"
-"1. The name of the permission.\n"
-"2. The target of the permission.\n"
-"3. The rights granted by the permission.\n"
-"\n"
-"Rights define what operations are allowed, and may be one or more\n"
-"of the following:\n"
-"1. write - write one or more attributes\n"
-"2. read - read one or more attributes\n"
-"3. add - add a new entry to the tree\n"
-"4. delete - delete an existing entry\n"
-"5. all - all permissions are granted\n"
-"\n"
-"Read permission is granted for most attributes by default so the read\n"
-"permission is not expected to be used very often.\n"
-"\n"
-"Note the distinction between attributes and entries. The permissions are\n"
-"independent, so being able to add a user does not mean that the user will\n"
-"be editable.\n"
-"\n"
-"There are a number of allowed targets:\n"
-"1. type: a type of object (user, group, etc).\n"
-"2. memberof: a member of a group or hostgroup\n"
-"3. filter: an LDAP filter\n"
-"4. subtree: an LDAP filter specifying part of the LDAP DIT. This is a\n"
-" super-set of the \"type\" target.\n"
-"5. targetgroup: grant access to modify a specific group (such as granting\n"
-" the rights to manage group membership)\n"
-"\n"
-"EXAMPLES:\n"
-"\n"
-" Add a permission that grants the creation of users:\n"
-" ipa permission-add --type=user --permissions=add \"Add Users\"\n"
-"\n"
-" Add a permission that grants the ability to manage group membership:\n"
-" ipa permission-add --attrs=member --permissions=write --type=group "
-"\"Manage Group Members\"\n"
msgstr ""
"\n"
"Permissions\n"
-"\n"
-"Une permission permet une définition fine des délégations de droits. Une\n"
-"permission est une forme lisible par un humain des règles ou instructions\n"
-"de contrôle d'accès (ACI) de 389-ds. Une permission accorde le droit\n"
-"d'effectuer une tâche spécifique comme la création d'un utilisateur, la\n"
-"modification d'un groupe, etc.\n"
-"\n"
-"Une permission ne peut contenir d'autres permissions.\n"
-"\n"
-"* Une permission accorde un droit en lecture, écriture, ajout ou "
-"supression.\n"
-"* Un privilège combine des permissions similaires (par exemple toutes les\n"
-" permissions requises pour la création d'un utilisateur).\n"
-"* Un rôle accorde un jeu de privilèges à des utilisateurs, des groupes, des\n"
-" hôtes, ou à des groupes d'hôtes.\n"
-"\n"
-"Une permission est constituée des éléments suivants :\n"
-"\n"
-"1. Le nom de la permission.\n"
-"2. La cible de la permission.\n"
-"3. Les droits accordés par la permission.\n"
-"\n"
-"Les droits définissent quelles opérations sont autorisées, et\n"
-"peuvent être une ou plusieurs parmi :\n"
-"1. write - écrire un ou plusieurs attributs\n"
-"2. read - lire un ou plusieurs attributs\n"
-"3. add - ajouter une nouvelle entrée dans l'arbre\n"
-"4. delete - supprimer une entrée existante\n"
-"5. all - toutes les permissions sont accordées\n"
-"\n"
-"La permission read est accordée par défaut sur la plupart des\n"
-"attributs, elle ne sera donc utilisée que peu souvent.\n"
-"\n"
-"Noter la distinction entre attributs et entrées. Les permissions sont\n"
-"indépendantes, donc la capacité de créer un utilisateur ne signifie pas\n"
-"que l'utilisateur sera modifiable.\n"
-"\n"
-"Il existe plusieurs sortes de cibles autorisées dans une permission :\n"
-"1. type: un type d'objet (user, group, etc.).\n"
-"2. memberof: un membre d'un groupe ou d'un groupe d'hôtes\n"
-"3. filter: un filtre LDAP\n"
-"4. subtree: un filtre LDAP spécifiant une branche du DIT LDAP. Ceci est un\n"
-" sur-ensemble de la cible 'type'.\n"
-"5. targetgroup: accorde l'accès permettant de modifier un groupe spécifique\n"
-" (comme le fait d'accorder les droits en modification des membres d'un "
-"groupe)\n"
-"\n"
-"EXEMPLES :\n"
-"\n"
-" Ajouter une permission accordant la création d'utilisateurs :\n"
-" ipa permission-add --type=user --permissions=add \"Add Users\"\n"
-"\n"
-" Ajouter une permission accordant la capacité de gérer les membres d'un "
-"groupe :\n"
-" ipa permission-add --attrs=member --permissions=write --type=group "
-"\"Manage Group Members\"\n"
-
-msgid "Permission Type"
-msgstr "Type de permission"
msgid "permission"
msgstr "permission"
@@ -8028,38 +7903,18 @@ msgstr "permissions"
msgid "Permission name"
msgstr "Nom de permission"
-msgid "Permissions to grant (read, write, add, delete, all)"
-msgstr "Permissions à accorder (read, write, add, delete, all)"
-
-msgid ""
-"Type of IPA object (user, group, host, hostgroup, service, netgroup, dns)"
-msgstr ""
-"Type d'objet IPA (user, group, host, hostgroup, service, netgroup, dns)"
-
-msgid "Member of group"
-msgstr "Membre du groupe"
-
-msgid "Target members of a group"
-msgstr "Membres cible d'un groupe"
-
msgid "Subtree to apply permissions to"
msgstr "Branche sur laquelle appliquer les permissions"
-msgid "User group to apply permissions to"
-msgstr "Groupe d'utilisateur sur lequel appliquer les permissions"
-
-msgid "Add a new permission."
-msgstr "Ajouter une nouvelle permission."
+msgid "Member of group"
+msgstr "Membre du groupe"
#, python-format
msgid "Added permission \"%(value)s\""
msgstr "Permission « %(value)s » ajoutée"
-msgid "Add a system permission without an ACI"
-msgstr "Ajouter une permission système sans ACI"
-
-msgid "Permission type"
-msgstr "Type de permission"
+msgid "Add a new permission."
+msgstr "Ajouter une nouvelle permission."
msgid "Delete a permission."
msgstr "Supprimer une permission."
@@ -8071,9 +7926,6 @@ msgstr "Permission « %(value)s » supprimée"
msgid "force delete of SYSTEM permissions"
msgstr "forcer la suppression des permissions SYSTEM"
-msgid "A SYSTEM permission may not be removed"
-msgstr "Une permission SYSTEM ne peut être supprimée"
-
msgid "Modify a permission."
msgstr "Modifier une permission."
@@ -8081,12 +7933,6 @@ msgstr "Modifier une permission."
msgid "Modified permission \"%(value)s\""
msgstr "Permission « %(value)s » modifiée"
-msgid "A SYSTEM permission may not be modified"
-msgstr "Une permission SYSTEM ne peut être modifiée"
-
-msgid "New name can not be empty"
-msgstr "Un nouveau nom ne peut être vide"
-
msgid "Search for permissions."
msgstr "Recherche des permissions."
@@ -8154,8 +8000,7 @@ msgstr ""
" Ping verbeux d'un serveur IPA :\n"
" ipa -v ping\n"
" ipa: INFO: trying https://ipa.example.com/ipa/xml\n"
-" ipa: INFO: Forwarding 'ping' to server 'https://ipa.example.com/ipa/"
-"xml'\n"
+" ipa: INFO: Forwarding 'ping' to server 'https://ipa.example.com/ipa/xml'\n"
" -----------------------------------------------------\n"
" IPA server version 2.1.9. API version 2.20\n"
" -----------------------------------------------------\n"
@@ -8423,7 +8268,7 @@ msgstr ""
"%(gname)s)"
msgid "password policy"
-msgstr "politique de mot de passe"
+msgstr "politique de mots de passe"
msgid "password policies"
msgstr "politiques de mot de passe"
@@ -8517,6 +8362,87 @@ msgstr "Afficher la politique effective sur un utilisateur spécifique"
msgid "Search for group password policies."
msgstr "Rechercher des politiques de mot de passe de groupe."
+msgid "invalid attribute name"
+msgstr "nom d'attribut invalide"
+
+msgid "invalid port number"
+msgstr "numéro de port invalide"
+
+msgid "RADIUS proxy server"
+msgstr "Serveur mandataire RADIUS"
+
+msgid "RADIUS proxy servers"
+msgstr "Serveurs mandataires RADIUS"
+
+msgid "RADIUS Servers"
+msgstr "Serveurs RADIUS"
+
+msgid "RADIUS Server"
+msgstr "Serveur RADIUS"
+
+msgid "RADIUS proxy server name"
+msgstr "Nom du serveur mandataire RADIUS"
+
+msgid "A description of this RADIUS proxy server"
+msgstr "Description de ce serveur mandataire RADIUS"
+
+msgid "Server"
+msgstr "Serveur"
+
+msgid "The hostname or IP (with or without port)"
+msgstr "Nom d'hôte ou adresse IP (avec ou sans port)"
+
+msgid "Secret"
+msgstr "Secret"
+
+msgid "The secret used to encrypt data"
+msgstr "Le secret utilisé pour chiffrer les données"
+
+msgid "Timeout"
+msgstr "Délai d'expiration"
+
+msgid "The total timeout across all retries (in seconds)"
+msgstr "Délai d'expiration total pour toutes les tentatives (en secondes)"
+
+msgid "Retries"
+msgstr "Tentatives"
+
+msgid "The number of times to retry authentication"
+msgstr "Le nombre de tentatives de ré-authentification"
+
+msgid "User attribute"
+msgstr "Attribut utilisateur"
+
+msgid "The username attribute on the user object"
+msgstr "L'attribut de nom d'utilisateur de l'objet utilisateur"
+
+msgid "Add a new RADIUS proxy server."
+msgstr "Ajouter un nouveau serveur mandataire RADIUS."
+
+#, python-format
+msgid "Added RADIUS proxy server \"%(value)s\""
+msgstr "Serveur mandataire RADIUS « %(value)s » ajouté"
+
+msgid "Delete a RADIUS proxy server."
+msgstr "Supprimer un serveur mandataire RADIUS."
+
+#, python-format
+msgid "Deleted RADIUS proxy server \"%(value)s\""
+msgstr "Serveur mandataire RADIUS « %(value)s » supprimé"
+
+msgid "Modify a RADIUS proxy server."
+msgstr "Modifier un serveur mandataire RADIUS"
+
+#, python-format
+msgid "Modified RADIUS proxy server \"%(value)s\""
+msgstr "Serveur mandataire RADIUS « %(value)s » modifié"
+
+msgid "Search for RADIUS proxy servers."
+msgstr "Rechercher des serveurs mandataires RADIUS."
+
+msgid "Display information about a RADIUS proxy server."
+msgstr "Afficher les informations sur un serveur mandataire RADIUS."
+
msgid ""
"\n"
"Realm domains\n"
@@ -8559,7 +8485,7 @@ msgstr ""
" ipa realmdomains-mod --del-domain=olddomain.com\n"
msgid "Realm domains"
-msgstr "Domaines"
+msgstr "Domaines pour le royaume"
msgid "Add domain"
msgstr "Ajouter un domaine"
@@ -8568,7 +8494,7 @@ msgid "Delete domain"
msgstr "Supprimer un domaine"
msgid "Modify realm domains."
-msgstr "Modifier les domaines."
+msgstr "Modifier les domaines du royaume."
msgid "Force adding domain even if not in DNS"
msgstr "Forcer l'ajout d'un domaine même si absent des DNS"
@@ -8592,7 +8518,7 @@ msgid "no SOA or NS records found for domain %s"
msgstr "aucun enregistrement SOA ou NS trouvé pour le domaine : %s"
msgid "Display the list of realm domains."
-msgstr "Afficher la liste des domaines."
+msgstr "Afficher la liste des domaines du royaume."
msgid ""
"\n"
@@ -9495,78 +9421,9 @@ msgstr "Supprimer des membres d'un groupe de commandes Sudo."
msgid ""
"\n"
"Sudo Rules\n"
-"\n"
-"Sudo (su \"do\") allows a system administrator to delegate authority to\n"
-"give certain users (or groups of users) the ability to run some (or all)\n"
-"commands as root or another user while providing an audit trail of the\n"
-"commands and their arguments.\n"
-"\n"
-"FreeIPA provides a means to configure the various aspects of Sudo:\n"
-" Users: The user(s)/group(s) allowed to invoke Sudo.\n"
-" Hosts: The host(s)/hostgroup(s) which the user is allowed to to invoke "
-"Sudo.\n"
-" Allow Command: The specific command(s) permitted to be run via Sudo.\n"
-" Deny Command: The specific command(s) prohibited to be run via Sudo.\n"
-" RunAsUser: The user(s) or group(s) of users whose rights Sudo will be "
-"invoked with.\n"
-" RunAsGroup: The group(s) whose gid rights Sudo will be invoked with.\n"
-" Options: The various Sudoers Options that can modify Sudo's behavior.\n"
-"\n"
-"An order can be added to a sudorule to control the order in which they\n"
-"are evaluated (if the client supports it). This order is an integer and\n"
-"must be unique.\n"
-"\n"
-"FreeIPA provides a designated binddn to use with Sudo located at:\n"
-"uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n"
-"\n"
-"To enable the binddn run the following command to set the password:\n"
-"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -"
-"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example,"
-"dc=com\n"
-"\n"
-"For more information, see the FreeIPA Documentation to Sudo.\n"
msgstr ""
"\n"
"Règles Sudo\n"
-"\n"
-"Sudo (su « do ») permet à un administrateur système de donner l'autorisation "
-"à certains\n"
-"utilisateurs (ou groupes d'utilisateurs) d'exécuter certaines (ou toute)\n"
-"commandes en tant qu'utilisateur root ou autre, tout en fournissant une "
-"piste de vérification\n"
-"des commandes et de leurs arguments.\n"
-"\n"
-"FreeIPA donne des possibilités de configurer divers aspects de Sudo :\n"
-" Users : les utilisateurs ou groupes autorisés à faire appel à Sudo.\n"
-" Hosts : les hôtes ou groupes d'hôtes sur lesquels l'utilisateur peut "
-"faire appel à Sudo.\n"
-" Allow Command : les commandes précises pouvant être lancées via Sudo.\n"
-" Deny Command : les commandes précises ne pouvant pas être lancées via "
-"Sudo.\n"
-" RunAsUser : utilisateurs ou groupes ayant des droits Sudo avec lesquels "
-"il sera fait appel.\n"
-" RunAsGroup : les groupes dont le gid permet de faire appel avec certains "
-"droits Sudo.\n"
-" Options : les diverses options Sudoers susceptibles de modifier le "
-"comportement de Sudo.\n"
-"\n"
-"Un numéro d'ordre peut être ajouté à des règles Sudo pour contrôler l'ordre "
-"dans lequel\n"
-"elles sont évaluées (si le client la prend en charge). Ce numéro d'ordre est "
-"un entier et\n"
-"doit être unique.\n"
-"\n"
-"FreeIPA met à disposition un binddn conçu pour être utilisé avec Sudo situé "
-"à :\n"
-"uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n"
-"\n"
-"Pour activer binddn, exécutez la commande ci-après pour définir le mot de "
-"passe :\n"
-"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -"
-"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example,"
-"dc=com\n"
-"\n"
-"Pour plus d'informations, voyez la documentation FreeIPA de Sudo.\n"
msgid "Commands for controlling sudo configuration"
msgstr "Commandes pour le contrôle d'une configuration sudo"
@@ -9610,6 +9467,16 @@ msgstr "Ordre sudo"
msgid "integer to order the Sudo rules"
msgstr "nombre entier pour ordonner les règles sudo"
+msgid "External User"
+msgstr "Utilisateur externe"
+
+msgid "External User the rule applies to (sudorule-find only)"
+msgstr ""
+"Utilisateur externe auquel la règle s'applique (sudorule-find uniquement)"
+
+msgid "Host Masks"
+msgstr "Masques d'hôtes"
+
msgid "Sudo Allow Commands"
msgstr "Commandes sudo allow"
@@ -9634,13 +9501,6 @@ msgstr "Groupe de RunAs Users"
msgid "Run as any user within a specified group"
msgstr "Lancer en tant que n'importe quel utilisateur du groupe spécifié"
-msgid "External User"
-msgstr "Utilisateur externe"
-
-msgid "External User the rule applies to (sudorule-find only)"
-msgstr ""
-"Utilisateur externe auquel la règle s'applique (sudorule-find uniquement)"
-
msgid "RunAs External User"
msgstr "Lancer en tant que l'utilisateur externe"
@@ -9649,6 +9509,12 @@ msgstr ""
"Utilisateur externe en tant que lequel les commandes sont lancées (sudorule-"
"find uniquement)"
+msgid "RunAs Groups"
+msgstr "RunAs Groups"
+
+msgid "Run with the gid of a specified POSIX group"
+msgstr "Lancer avec le GID d'un groupe POSIX spécifique"
+
msgid "RunAs External Group"
msgstr "Utilisateur externe"
@@ -9660,12 +9526,6 @@ msgstr ""
msgid "Sudo Option"
msgstr "Option sudo"
-msgid "RunAs Groups"
-msgstr "RunAs Groups"
-
-msgid "Run with the gid of a specified POSIX group"
-msgstr "Lancer avec le GID d'un groupe POSIX spécifique"
-
#, python-format
msgid "order must be a unique value (%(order)d already used by %(rule)s)"
msgstr ""
@@ -9692,22 +9552,29 @@ msgstr "Modifier une règle Sudo."
msgid "Modified Sudo Rule \"%(value)s\""
msgstr "Règle Sudo « %(value)s » modifiée"
-msgid ""
-"command category cannot be set to 'all' while there are allow or deny "
-"commands"
-msgstr ""
-"la catégorie commandes ne peut être définie à 'all' alors qu'il reste des "
-"commandes autorisées ou interdites"
+msgid "user"
+msgstr "utilisateur"
-msgid "user runAs category cannot be set to 'all' while there are users"
-msgstr ""
-"la catégorie RunAs de l'utilisateur ne peut être mise à 'all' tant qu'il y a "
-"des utilisateurs"
+msgid "users"
+msgstr "utilisateurs"
-msgid "group runAs category cannot be set to 'all' while there are groups"
-msgstr ""
-"la catégorie RunAs du groupe ne peut être mise à 'all' tant qu'il y a des "
-"groupes"
+msgid "command"
+msgstr "commande"
+
+msgid "commands"
+msgstr "commandes"
+
+msgid "runAs user"
+msgstr "utilisateur runAs"
+
+msgid "runAs users"
+msgstr "utilisateurs runAs"
+
+msgid "group runAs"
+msgstr "groupe runAs"
+
+msgid "runAs groups"
+msgstr "groupes runAs"
msgid "Search for Sudo Rule."
msgstr "Rechercher une règle Sudo."
@@ -10111,6 +9978,7 @@ msgstr "Premier ID POSIX de la plage pour le domaine approuvé"
msgid "Size of the ID range reserved for the trusted domain"
msgstr "Taille de la plage d'ID pour le domaine approuvé"
+#, python-brace-format
msgid "Type of trusted domain ID range, one of {vals}"
msgstr ""
"Type de plage d'identifiants de domaine approuvé, valeur à prendre parmi "
@@ -10120,6 +9988,10 @@ msgstr ""
msgid "Added Active Directory trust for realm \"%(value)s\""
msgstr "Approbation Active Directory ajoutée pour le domaine « %(value)s »"
+#, python-format
+msgid "Re-established trust to domain \"%(value)s\""
+msgstr "Ré-approbation du domaine « %(value)s »"
+
msgid "AD Trust setup"
msgstr "Configuration des relations d'approbations avec AD"
@@ -10145,6 +10017,9 @@ msgstr "type d'approbation"
msgid "only \"ad\" is supported"
msgstr "seul « ad » est pris en charge"
+msgid "Realm-domain mismatch"
+msgstr "Non correspondance de domaine et de royaume Kerberos"
+
msgid "Trusted domain and administrator account use different realms"
msgstr ""
"Le domaine approuvé et le compte administrateur utilisent des domaines "
@@ -10198,10 +10073,6 @@ msgstr ""
"soit ne pas forcer le type via l'option --range-type."
#, python-format
-msgid "Re-established trust to domain \"%(value)s\""
-msgstr "Ré-approbation du domaine « %(value)s »"
-
-#, python-format
msgid "Unable to resolve domain controller for '%s' domain. "
msgstr "Impossible de résoudre le contrôleur de domaine du domaine « %s »."
@@ -10331,6 +10202,108 @@ msgstr ""
"système"
msgid ""
+"Determine whether Schema Compatibility plugin is configured to serve trusted "
+"domain users and groups"
+msgstr ""
+"Déterminer si le greffon de compatibilité de schéma est configuré pour "
+"servir les utilisateurs et groupes du domaine"
+
+msgid "Determine whether ipa-adtrust-install has been run with sidgen task"
+msgstr ""
+"Déterminer si la commande ipa-adtrust-install a été lancée avec la tâche "
+"sidgen"
+
+msgid "sidgen_was_run"
+msgstr "sidgen_was_run"
+
+msgid ""
+"This command relies on the existence of the \"editors\" group, but this "
+"group was not found."
+msgstr ""
+"Cette commande s'appuie sur l'existence effective du groupe « editors », "
+"mais ce groupe est introuvable."
+
+msgid "trust domain"
+msgstr "domaine d'approbation"
+
+msgid "trust domains"
+msgstr "domaines d'approbation"
+
+msgid "Trusted domains"
+msgstr "Domaines approuvés"
+
+msgid "Trusted domain"
+msgstr "Domaine approuvé"
+
+msgid "Domain name"
+msgstr "Nom de domaine"
+
+msgid "Trusted domain partner"
+msgstr "Partenaire de domaine approuvé"
+
+msgid "Search domains of the trust"
+msgstr "Recherches dans les domaines approuvés"
+
+msgid "Domain enabled"
+msgstr "Domaine activé"
+
+msgid "Modify trustdomain of the trust"
+msgstr "Modifier le domaine de la relation d'approbation"
+
+msgid "Allow access from the trusted domain"
+msgstr "Autoriser l'accès depuis le domaine approuvé"
+
+msgid "Remove infromation about the domain associated with the trust."
+msgstr ""
+"Supprimer les informations du domaine associées à la relation d'approbation."
+
+#, python-format
+msgid "Removed information about the trusted domain \"%(value)s\""
+msgstr "Informations sur le domaine approuvé « %(value)s » supprimées"
+
+msgid ""
+"cannot delete root domain of the trust, use trust-del to delete the trust "
+"itself"
+msgstr ""
+"impossible de supprimer le domaine racine de la relation d'approbation, "
+"utiliser la commande trust-del pour supprimer la relation d'approbation"
+
+msgid "Refresh list of the domains associated with the trust"
+msgstr "Rafraîchir la liste des domaines associés à la relation d'approbation"
+
+msgid "List of trust domains successfully refreshed"
+msgstr "Liste des domaines approuvés rafraîchie avec succès"
+
+msgid "No new trust domains were found"
+msgstr "Aucun nouveau domaine approuvé trouvé"
+
+msgid "Allow use of IPA resources by the domain of the trust"
+msgstr "Autoriser l'utlisation de ressources IPA par le domain approuvé"
+
+#, python-format
+msgid "Enabled trust domain \"%(value)s\""
+msgstr "Activation du domaine approuvé « %(value)s »"
+
+msgid "Root domain of the trust is always enabled for the existing trust"
+msgstr ""
+"Le domaine racine de la relation d'approbation est toujours activé pour la "
+"relation existante"
+
+msgid "Disable use of IPA resources by the domain of the trust"
+msgstr "Interdire l'utlisation de ressources IPA par le domain approuvé"
+
+#, python-format
+msgid "Disabled trust domain \"%(value)s\""
+msgstr "Domaine approuvé « %(value)s » désactivé"
+
+msgid ""
+"cannot disable root domain of the trust, use trust-del to delete the trust "
+"itself"
+msgstr ""
+"impossible de désactiver le domaine racine de la relation d'approbation, "
+"utiliser la commande trust-del pour supprimer la relation"
+
+msgid ""
"\n"
"Users\n"
"\n"
@@ -10424,9 +10397,6 @@ msgstr ""
msgid "Kerberos keys available"
msgstr "Clés Kerberos disponibles"
-msgid "Server"
-msgstr "Serveur"
-
msgid "Failed logins"
msgstr "Connexions échouées"
@@ -10442,12 +10412,6 @@ msgstr "Heure actuelle"
msgid "must be TRUE or FALSE"
msgstr "doit être TRUE ou FALSE"
-msgid "user"
-msgstr "utilisateur"
-
-msgid "users"
-msgstr "utilisateurs"
-
msgid "User login"
msgstr "Identifiant de connexion"
@@ -10528,15 +10492,43 @@ msgstr "Unité organisationnelle"
msgid "Job Title"
msgstr "Titre de poste"
-msgid "Manager"
-msgstr "Responsable"
-
msgid "Car License"
msgstr "Carte d'identité"
msgid "Account disabled"
msgstr "Compte désactivé"
+msgid "User authentication types"
+msgstr "Types d'authentification utilisateur"
+
+msgid "Types of supported user authentication"
+msgstr "Types d'authentification utilisateur pris en charge"
+
+msgid ""
+"User category (semantics placed on this attribute are for local "
+"interpretation)"
+msgstr ""
+"Catégorie d'utilisateurs (les sémantiques associées à cet attribut vous sont "
+"propres)"
+
+msgid "RADIUS proxy configuration"
+msgstr "Configuration du mandataire RADIUS"
+
+msgid "RADIUS proxy username"
+msgstr "Nom d'utilisateur du mandataire RADIUS"
+
+msgid "Department Number"
+msgstr "Numéro de département"
+
+msgid "Employee Number"
+msgstr "Matricule"
+
+msgid "Employee Type"
+msgstr "Type d'employé"
+
+msgid "Preferred Language"
+msgstr "Langue préférée"
+
#, python-format
msgid "invalid e-mail format: %(email)s"
msgstr "format d'e-mail invalide : %(email)s"
@@ -10724,31 +10716,16 @@ msgstr "Le nom de fichier est vide"
msgid "Permission denied: %(file)s"
msgstr "Autorisation refusée : %(file)s"
-msgid "empty DNS label"
-msgstr "libellé DNS vide"
-
msgid "DNS label cannot be longer that 63 characters"
msgstr "un libellé DNS ne peut excéder 63 caractères"
#, python-format
msgid ""
-"only letters, numbers,%(underscore)s and - are allowed. DNS label may not "
-"start or end with -"
+"only letters, numbers, %(chars)s are allowed. DNS label may not start or end "
+"with %(chars2)s"
msgstr ""
-"seuls des lettres, nombres %(underscore)s et - sont autorisés. Les noms DNS "
-"ne peuvent commencer ou se terminer par -"
-
-msgid ""
-"mail account may only include letters, numbers, -, _ and a dot. There may "
-"not be consecutive -, _ and . characters. Its parts may not start or end "
-"with - or _"
-msgstr ""
-"un compte de messagerie ne peut inclure que des lettres, des chiffres, -, _ "
-"et un point. Il ne peut y avoir de caractères -, _ et . consécutifs. Il ne "
-"peut démarrer ou finir par - ou _"
-
-msgid "cannot be longer that 255 characters"
-msgstr "ne peut excéder 255 caractères."
+"seuls des lettres, des nombres, des %(chars)s sont autorisés. Les noms DNS "
+"ne peuvent commencer ou se terminer par %(chars2)s"
msgid "too many '@' characters"
msgstr "trop de caractères '@'"
@@ -10759,6 +10736,9 @@ msgstr "domaine d'adresse manquant"
msgid "missing mail account"
msgstr "compte de messagerie manquant"
+msgid "cannot be longer that 255 characters"
+msgstr "ne peut excéder 255 caractères."
+
msgid "hostname contains empty label (consecutive dots)"
msgstr "le nom d'hôte contient un libellé vide (plusieurs points consécutifs)"
@@ -10771,6 +10751,9 @@ msgstr "clé publique SSH invalide"
msgid "options are not allowed"
msgstr "les options ne sont pas autorisées"
+msgid "invalid hostmask"
+msgstr "masque d'hôte invalide"
+
msgid "improperly formatted DER-encoded certificate"
msgstr "formatage incorrect du certificat encodé DER"
@@ -10935,7 +10918,7 @@ msgid ""
"Insufficient 'write' privilege to the 'krbLastPwdChange' attribute of entry "
"'%s'."
msgstr ""
-"Privilège en écriture insuffisant sur l'attribut « krbLastPwdChange »de "
+"Privilège en écriture insuffisant sur l'attribut « krbLastPwdChange » de "
"l'entrée « %s »."
msgid "Request must be a dict"
@@ -10992,14 +10975,6 @@ msgid "Out of memory \n"
msgstr "Mémoire saturée\n"
#, c-format
-msgid "Out of Memory!\n"
-msgstr "Mémoire saturée !\n"
-
-#, c-format
-msgid "Failed to create control!\n"
-msgstr "Échec à la création du contrôle !\n"
-
-#, c-format
msgid "Unable to initialize ldap library!\n"
msgstr "Impossible d'initialiser la bibliothèque LDAP !\n"
@@ -11008,10 +10983,6 @@ msgid "Unable to set LDAP_OPT_X_SASL_NOCANON\n"
msgstr "Impossible de positionner LDAP_OPT_X_SASL_NOCANON\n"
#, c-format
-msgid "Unable to set ldap options!\n"
-msgstr "Impossible de définir les options LDAP !\n"
-
-#, c-format
msgid "Simple bind failed\n"
msgstr "Échec de la connexion simple\n"
@@ -11024,6 +10995,14 @@ msgid "Missing reply control!\n"
msgstr "Absence de contrôle dans la réponse !\n"
#, c-format
+msgid "Out of Memory!\n"
+msgstr "Mémoire saturée !\n"
+
+#, c-format
+msgid "Failed to create control!\n"
+msgstr "Échec à la création du contrôle !\n"
+
+#, c-format
msgid "ber_init() failed, Invalid control ?!\n"
msgstr "Échec de ber_init(), contrôle invalide ?!\n"
@@ -11043,6 +11022,10 @@ msgstr "Échec lors de la récupération du type de chiffrement %1$s (#%2$d)\n"
msgid "Failed to retrieve any keys"
msgstr "Échec lors de la récupération des clés"
+#, c-format
+msgid "Out of memory!\n"
+msgstr "Mémoire saturée !\n"
+
msgid "New Principal Password"
msgstr "Nouveau mot de passe du principal"
@@ -11174,7 +11157,7 @@ msgstr "Inscription de cet hôte au domaine IPA interdite.\n"
#, c-format
msgid "No write permissions on keytab file '%s'\n"
-msgstr "Pas de permissions en écriture sur le fichier keytab '%s'\n"
+msgstr "Pas de permissions en écriture sur le fichier keytab « %s »\n"
#, c-format
msgid "access() on %1$s failed: errno = %2$d\n"
@@ -11206,7 +11189,7 @@ msgstr "La recherche de %1$s sur rootdse a échoué avec l'erreur %2$d\n"
#, c-format
msgid "No values for %s"
-msgstr "Pas de valeurs pour %s"
+msgstr "Aucune valeur pour %s"
#, c-format
msgid "Search for IPA namingContext failed with error %d\n"
@@ -11217,10 +11200,6 @@ msgid "IPA namingContext not found\n"
msgstr "namingContext IPA introuvable\n"
#, c-format
-msgid "Out of memory!\n"
-msgstr "Mémoire saturée !\n"
-
-#, c-format
msgid "Search for ipaCertificateSubjectBase failed with error %d"
msgstr "Échec de la recherche de ipaCertificateSubjectBase avec une erreur %d"
@@ -11448,9 +11427,6 @@ msgstr "La fermeture du tableau des clés a échoué\n"
msgid "krb5_kt_close %1$d: %2$s\n"
msgstr "krb5_kt_close %1$d : %2$s\n"
-msgid "Out of memory!?\n"
-msgstr "Mémoire saturée !?\n"
-
msgid "Out of memory\n"
msgstr "Mémoire saturée\n"
@@ -11460,6 +11436,9 @@ msgstr "Avertissement, type de chiffrement inconnu.\n"
msgid "Warning unrecognized salt type.\n"
msgstr "Avertissement, type de sel inconnu.\n"
+msgid "Out of memory!?\n"
+msgstr "Mémoire saturée !?\n"
+
msgid "Enctype comparison failed!\n"
msgstr "Échec de comparaison enctype !\n"
@@ -11471,3 +11450,9 @@ msgstr "Échec à la création de la clé !\n"
msgid "Bad or unsupported salt type.\n"
msgstr "Type de sel non-conforme ou non pris en compte.\n"
+
+#~ msgid "Display length"
+#~ msgstr "Longueur de l'affichage"
+
+#~ msgid "Unable to set ldap options!\n"
+#~ msgstr "Impossible de définir les options LDAP !\n"
diff --git a/install/po/id.po b/install/po/id.po
index bf5fa392b..fee957536 100644
--- a/install/po/id.po
+++ b/install/po/id.po
@@ -10,10 +10,11 @@ msgstr ""
"Project-Id-Version: FreeIPA\n"
"Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/"
"newticket\n"
-"POT-Creation-Date: 2013-10-09 14:39+0200\n"
-"PO-Revision-Date: 2013-08-01 14:06+0000\n"
+"POT-Creation-Date: 2014-06-27 16:29+0200\n"
+"PO-Revision-Date: 2014-06-25 19:44+0000\n"
"Last-Translator: Petr Viktorin <encukou@gmail.com>\n"
-"Language-Team: Indonesian <trans-id@lists.fedoraproject.org>\n"
+"Language-Team: Indonesian (http://www.transifex.com/projects/p/freeipa/"
+"language/id/)\n"
"Language: id\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -188,9 +189,6 @@ msgid "%(count)d ACI matched"
msgid_plural "%(count)d ACIs matched"
msgstr[0] "%(count)d ACI sesuai"
-msgid "Failure decoding Certificate Signing Request"
-msgstr "Gagal mengurai Permintaan Penandatanganan Sertifikat"
-
#, python-format
msgid "Failure decoding Certificate Signing Request: %s"
msgstr "Gagal mengurai Permintaan Penandatanganan Sertifikat: %s"
diff --git a/install/po/ipa.pot b/install/po/ipa.pot
index 4ddd97f13..a6595ca03 100644
--- a/install/po/ipa.pot
+++ b/install/po/ipa.pot
@@ -9,7 +9,7 @@ msgstr ""
"Project-Id-Version: ipa\n"
"Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/"
"newticket\n"
-"POT-Creation-Date: 2013-09-12 15:37+0200\n"
+"POT-Creation-Date: 2014-06-27 16:29+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -19,49 +19,58 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
-#: ipalib/cli.py:593
+#: ipalib/cli.py:599
#, python-format
msgid "Enter %(label)s again to verify: "
msgstr ""
-#: ipalib/cli.py:601 ipa-client/ipa-getkeytab.c:420
+#: ipalib/cli.py:607 ipa-client/ipa-getkeytab.c:739
#, c-format
msgid "Passwords do not match!"
msgstr ""
-#: ipalib/cli.py:624
+#: ipalib/cli.py:630
msgid "No matching entries found"
msgstr ""
-#: ipalib/cli.py:668
+#: ipalib/cli.py:674
msgid "Topic or Command"
msgstr ""
-#: ipalib/cli.py:669
+#: ipalib/cli.py:675
msgid "The topic or command name."
msgstr ""
-#: ipalib/cli.py:833
+#: ipalib/cli.py:844
msgid "Topic commands:"
msgstr ""
-#: ipalib/cli.py:838
+#: ipalib/cli.py:849
msgid "To get command help, use:"
msgstr ""
-#: ipalib/cli.py:839
+#: ipalib/cli.py:850
msgid " ipa <command> --help"
msgstr ""
-#: ipalib/cli.py:848
+#: ipalib/cli.py:859
msgid "Command name"
msgstr ""
-#: ipalib/cli.py:998
+#: ipalib/cli.py:1027
msgid "Positional arguments"
msgstr ""
-#: ipalib/cli.py:1254
+#: ipalib/cli.py:1175
+#, python-format
+msgid "Same as --%s"
+msgstr ""
+
+#: ipalib/cli.py:1178
+msgid "Deprecated options"
+msgstr ""
+
+#: ipalib/cli.py:1300
msgid "No file to read"
msgstr ""
@@ -69,375 +78,385 @@ msgstr ""
msgid "A string searched in all relevant object attributes"
msgstr ""
-#: ipalib/errors.py:269
+#: ipalib/errors.py:270
#, python-format
msgid "%(cver)s client incompatible with %(sver)s server at '%(server)s'"
msgstr ""
-#: ipalib/errors.py:287
+#: ipalib/errors.py:288
#, python-format
msgid "unknown error %(code)d from %(server)s: %(error)s"
msgstr ""
-#: ipalib/errors.py:303
+#: ipalib/errors.py:304
msgid "an internal error has occurred"
msgstr ""
-#: ipalib/errors.py:325
+#: ipalib/errors.py:326
#, python-format
msgid "an internal error has occurred on server at '%(server)s'"
msgstr ""
-#: ipalib/errors.py:341
+#: ipalib/errors.py:342
#, python-format
msgid "unknown command '%(name)s'"
msgstr ""
-#: ipalib/errors.py:358 ipalib/errors.py:383
+#: ipalib/errors.py:359 ipalib/errors.py:384
#, python-format
msgid "error on server '%(server)s': %(error)s"
msgstr ""
-#: ipalib/errors.py:374
+#: ipalib/errors.py:375
#, python-format
msgid "cannot connect to '%(uri)s': %(error)s"
msgstr ""
-#: ipalib/errors.py:392
+#: ipalib/errors.py:393
#, python-format
msgid "Invalid JSON-RPC request: %(error)s"
msgstr ""
-#: ipalib/errors.py:408
+#: ipalib/errors.py:409
#, python-format
msgid "error marshalling data for XML-RPC transport: %(error)s"
msgstr ""
-#: ipalib/errors.py:424
+#: ipalib/errors.py:425
#, python-format
msgid "Missing or invalid HTTP Referer, %(referer)s"
msgstr ""
-#: ipalib/errors.py:451
+#: ipalib/errors.py:452
#, python-format
msgid "Kerberos error: %(major)s/%(minor)s"
msgstr ""
-#: ipalib/errors.py:468
+#: ipalib/errors.py:469
msgid "did not receive Kerberos credentials"
msgstr ""
-#: ipalib/errors.py:484
+#: ipalib/errors.py:485
#, python-format
msgid "Service '%(service)s' not found in Kerberos database"
msgstr ""
-#: ipalib/errors.py:500
+#: ipalib/errors.py:501
msgid "No credentials cache found"
msgstr ""
-#: ipalib/errors.py:516
+#: ipalib/errors.py:517
msgid "Ticket expired"
msgstr ""
-#: ipalib/errors.py:532
+#: ipalib/errors.py:533
msgid "Credentials cache permissions incorrect"
msgstr ""
-#: ipalib/errors.py:548
+#: ipalib/errors.py:549
msgid "Bad format in credentials cache"
msgstr ""
-#: ipalib/errors.py:564
+#: ipalib/errors.py:565
msgid "Cannot resolve KDC for requested realm"
msgstr ""
-#: ipalib/errors.py:576
+#: ipalib/errors.py:577
msgid "Session error"
msgstr ""
-#: ipalib/errors.py:584
+#: ipalib/errors.py:585
#, python-format
msgid "Principal %(principal)s cannot be authenticated: %(message)s"
msgstr ""
-#: ipalib/errors.py:602
+#: ipalib/errors.py:603
#, python-format
msgid "Insufficient access: %(info)s"
msgstr ""
-#: ipalib/errors.py:646
+#: ipalib/errors.py:647
#, python-format
msgid "command '%(name)s' takes no arguments"
msgstr ""
-#: ipalib/errors.py:666
+#: ipalib/errors.py:667
#, python-format
msgid "command '%(name)s' takes at most %(count)d argument"
msgid_plural "command '%(name)s' takes at most %(count)d arguments"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/errors.py:696
+#: ipalib/errors.py:697
#, python-format
msgid "overlapping arguments and options: %(names)s"
msgstr ""
-#: ipalib/errors.py:712
+#: ipalib/errors.py:713
#, python-format
msgid "'%(name)s' is required"
msgstr ""
-#: ipalib/errors.py:728 ipalib/errors.py:744
+#: ipalib/errors.py:729 ipalib/errors.py:745
#, python-format
msgid "invalid '%(name)s': %(error)s"
msgstr ""
-#: ipalib/errors.py:760
+#: ipalib/errors.py:761
#, python-format
msgid "api has no such namespace: '%(name)s'"
msgstr ""
-#: ipalib/errors.py:769
+#: ipalib/errors.py:770
msgid "Passwords do not match"
msgstr ""
-#: ipalib/errors.py:778
+#: ipalib/errors.py:779
msgid "Command not implemented"
msgstr ""
-#: ipalib/errors.py:787
+#: ipalib/errors.py:788
msgid "Client is not configured. Run ipa-client-install."
msgstr ""
-#: ipalib/errors.py:796
+#: ipalib/errors.py:797
#, python-format
msgid "Could not get %(name)s interactively"
msgstr ""
-#: ipalib/errors.py:811
+#: ipalib/errors.py:812
#, python-format
msgid "Command '%(name)s' has been deprecated"
msgstr ""
-#: ipalib/errors.py:839 ipalib/errors.py:1079 ipalib/errors.py:1173
-#: ipalib/errors.py:1570 ipalib/errors.py:1587
+#: ipalib/errors.py:840 ipalib/errors.py:1080 ipalib/errors.py:1174
+#: ipalib/errors.py:1605 ipalib/errors.py:1622
#, python-format
msgid "%(reason)s"
msgstr ""
-#: ipalib/errors.py:855
+#: ipalib/errors.py:856
msgid "This entry already exists"
msgstr ""
-#: ipalib/errors.py:871
+#: ipalib/errors.py:872
msgid "You must enroll a host in order to create a host service"
msgstr ""
-#: ipalib/errors.py:887
+#: ipalib/errors.py:888
#, python-format
msgid ""
"Service principal is not of the form: service/fully-qualified host name: "
"%(reason)s"
msgstr ""
-#: ipalib/errors.py:903
+#: ipalib/errors.py:904
msgid ""
"The realm for the principal does not match the realm for this IPA server"
msgstr ""
-#: ipalib/errors.py:919
+#: ipalib/errors.py:920
msgid "This command requires root access"
msgstr ""
-#: ipalib/errors.py:935
+#: ipalib/errors.py:936
msgid "This is already a posix group"
msgstr ""
-#: ipalib/errors.py:951
+#: ipalib/errors.py:952
#, python-format
msgid "Principal is not of the form user@REALM: '%(principal)s'"
msgstr ""
-#: ipalib/errors.py:967
+#: ipalib/errors.py:968
msgid "This entry is already enabled"
msgstr ""
-#: ipalib/errors.py:983
+#: ipalib/errors.py:984
msgid "This entry is already disabled"
msgstr ""
-#: ipalib/errors.py:999
+#: ipalib/errors.py:1000
msgid "This entry cannot be enabled or disabled"
msgstr ""
-#: ipalib/errors.py:1015
+#: ipalib/errors.py:1016
msgid "This entry is not a member"
msgstr ""
-#: ipalib/errors.py:1031
+#: ipalib/errors.py:1032
msgid "A group may not be a member of itself"
msgstr ""
-#: ipalib/errors.py:1047
+#: ipalib/errors.py:1048
msgid "This entry is already a member"
msgstr ""
-#: ipalib/errors.py:1063
+#: ipalib/errors.py:1064
#, python-format
msgid "Base64 decoding failed: %(reason)s"
msgstr ""
-#: ipalib/errors.py:1095
+#: ipalib/errors.py:1096
msgid "A group may not be added as a member of itself"
msgstr ""
-#: ipalib/errors.py:1111
+#: ipalib/errors.py:1112
msgid "The default users group cannot be removed"
msgstr ""
-#: ipalib/errors.py:1127
+#: ipalib/errors.py:1128
msgid "Host does not have corresponding DNS A record"
msgstr ""
-#: ipalib/errors.py:1142
+#: ipalib/errors.py:1143
msgid "Deleting a managed group is not allowed. It must be detached first."
msgstr ""
-#: ipalib/errors.py:1157
+#: ipalib/errors.py:1158
msgid "A managed group cannot have a password policy."
msgstr ""
-#: ipalib/errors.py:1189
+#: ipalib/errors.py:1190
#, python-format
msgid "'%(entry)s' doesn't have a certificate."
msgstr ""
-#: ipalib/errors.py:1205
+#: ipalib/errors.py:1206
#, python-format
msgid "Unable to create private group. A group '%(group)s' already exists."
msgstr ""
-#: ipalib/errors.py:1221
+#: ipalib/errors.py:1222
#, python-format
msgid ""
"A problem was encountered when verifying that all members were %(verb)s: "
"%(exc)s"
msgstr ""
-#: ipalib/errors.py:1239
+#: ipalib/errors.py:1240
#, python-format
msgid "%(attr)s does not contain '%(value)s'"
msgstr ""
-#: ipalib/errors.py:1256
+#: ipalib/errors.py:1257
#, python-format
msgid ""
"The search criteria was not specific enough. Expected 1 and found %(found)d."
msgstr ""
-#: ipalib/errors.py:1273
+#: ipalib/errors.py:1274
msgid "This group already allows external members"
msgstr ""
-#: ipalib/errors.py:1290
+#: ipalib/errors.py:1291
msgid "This group cannot be posix because it is external"
msgstr ""
-#: ipalib/errors.py:1307
+#: ipalib/errors.py:1308
msgid "This is already a posix group and cannot be converted to external one"
msgstr ""
-#: ipalib/errors.py:1330
+#: ipalib/errors.py:1331
#, python-format
msgid "no command nor help topic '%(topic)s'"
msgstr ""
-#: ipalib/errors.py:1354
+#: ipalib/errors.py:1355
msgid "change collided with another change"
msgstr ""
-#: ipalib/errors.py:1370
+#: ipalib/errors.py:1371
msgid "no modifications to be performed"
msgstr ""
-#: ipalib/errors.py:1386
+#: ipalib/errors.py:1387
#, python-format
msgid "%(desc)s: %(info)s"
msgstr ""
-#: ipalib/errors.py:1402
+#: ipalib/errors.py:1403
msgid "limits exceeded for this query"
msgstr ""
-#: ipalib/errors.py:1417
+#: ipalib/errors.py:1418
#, python-format
msgid "%(info)s"
msgstr ""
-#: ipalib/errors.py:1432
+#: ipalib/errors.py:1433
msgid "modifying primary key is not allowed"
msgstr ""
-#: ipalib/errors.py:1448
+#: ipalib/errors.py:1449
#, python-format
msgid "%(attr)s: Only one value allowed."
msgstr ""
-#: ipalib/errors.py:1464
+#: ipalib/errors.py:1465
#, python-format
msgid "%(attr)s: Invalid syntax."
msgstr ""
-#: ipalib/errors.py:1480
+#: ipalib/errors.py:1481
#, python-format
msgid "Bad search filter %(info)s"
msgstr ""
-#: ipalib/errors.py:1496
+#: ipalib/errors.py:1497
msgid "Not allowed on non-leaf entry"
msgstr ""
-#: ipalib/errors.py:1512
+#: ipalib/errors.py:1513
msgid "LDAP timeout"
msgstr ""
-#: ipalib/errors.py:1537
+#: ipalib/errors.py:1531
+#, python-format
+msgid "DNS check failed: Expected {%(expected)s} got {%(got)s}"
+msgstr ""
+
+#: ipalib/errors.py:1547
+#, python-format
+msgid "%(task)s LDAP task timeout, Task DN: '%(task_dn)s'"
+msgstr ""
+
+#: ipalib/errors.py:1572
#, python-format
msgid "Certificate operation cannot be completed: %(error)s"
msgstr ""
-#: ipalib/errors.py:1553
+#: ipalib/errors.py:1588
#, python-format
msgid "Certificate format error: %(error)s"
msgstr ""
-#: ipalib/errors.py:1604
+#: ipalib/errors.py:1639
msgid "Already registered"
msgstr ""
-#: ipalib/errors.py:1620
+#: ipalib/errors.py:1655
msgid "Not registered yet"
msgstr ""
-#: ipalib/errors.py:1636
+#: ipalib/errors.py:1671
#, python-format
msgid "%(key)s cannot be deleted because %(label)s %(dependent)s requires it"
msgstr ""
-#: ipalib/errors.py:1652
+#: ipalib/errors.py:1687
#, python-format
msgid ""
"%(key)s cannot be deleted or disabled because it is the last member of "
"%(label)s %(container)s"
msgstr ""
-#: ipalib/errors.py:1668
+#: ipalib/errors.py:1703
#, python-format
msgid "%(label)s %(key)s cannot be deleted/modified: %(reason)s"
msgstr ""
-#: ipalib/errors.py:1685
+#: ipalib/errors.py:1720
#, python-format
msgid "%(name)s certificate is not valid"
msgstr ""
@@ -446,25 +465,25 @@ msgstr ""
msgid "Results are truncated, try a more specific search"
msgstr ""
-#: ipalib/frontend.py:531
+#: ipalib/frontend.py:535
#, python-format
msgid "Unknown option: %(option)s"
msgstr ""
-#: ipalib/frontend.py:904
+#: ipalib/frontend.py:898
msgid ""
"Retrieve and print all attributes from the server. Affects command output."
msgstr ""
-#: ipalib/frontend.py:910
+#: ipalib/frontend.py:904
msgid "Print entries as stored on the server. Only affects output format."
msgstr ""
-#: ipalib/frontend.py:916 ipalib/plugins/batch.py:69
+#: ipalib/frontend.py:910 ipalib/plugins/batch.py:73
msgid "Client version. Used to determine if server will accept request."
msgstr ""
-#: ipalib/frontend.py:1089
+#: ipalib/frontend.py:1087
msgid "Forward to server instead of running locally"
msgstr ""
@@ -479,402 +498,512 @@ msgid ""
"Assuming server's API version, %(server_version)s"
msgstr ""
-#: ipalib/output.py:92
+#: ipalib/output.py:93
msgid "A dictionary representing an LDAP entry"
msgstr ""
-#: ipalib/output.py:100
+#: ipalib/output.py:101
msgid "A list of LDAP entries"
msgstr ""
-#: ipalib/output.py:111
+#: ipalib/output.py:153
msgid "All commands should at least have a result"
msgstr ""
-#: ipalib/output.py:114
+#: ipalib/output.py:156
msgid "User-friendly description of action performed"
msgstr ""
-#: ipalib/output.py:118
+#: ipalib/output.py:160
msgid "The primary_key value of the entry, e.g. 'jdoe' for a user"
msgstr ""
-#: ipalib/output.py:133
+#: ipalib/output.py:175
msgid "Number of entries returned"
msgstr ""
-#: ipalib/output.py:134
+#: ipalib/output.py:176
msgid "True if not all results were returned"
msgstr ""
-#: ipalib/output.py:139
+#: ipalib/output.py:181 ipalib/output.py:187
msgid "List of deletions that failed"
msgstr ""
-#: ipalib/output.py:145
+#: ipalib/output.py:193 ipalib/plugins/dns.py:266
msgid "True means the operation was successful"
msgstr ""
-#: ipalib/parameters.py:370
+#: ipalib/parameters.py:382
msgid "incorrect type"
msgstr ""
-#: ipalib/parameters.py:373
+#: ipalib/parameters.py:385
msgid "Only one value is allowed"
msgstr ""
-#: ipalib/parameters.py:932
+#: ipalib/parameters.py:953
msgid "must be True or False"
msgstr ""
-#: ipalib/parameters.py:1033
+#: ipalib/parameters.py:1055
msgid "must be an integer"
msgstr ""
-#: ipalib/parameters.py:1084
+#: ipalib/parameters.py:1103
#, python-format
msgid "must be at least %(minvalue)d"
msgstr ""
-#: ipalib/parameters.py:1094
+#: ipalib/parameters.py:1113
#, python-format
msgid "can be at most %(maxvalue)d"
msgstr ""
-#: ipalib/parameters.py:1135
+#: ipalib/parameters.py:1129
msgid "must be a decimal number"
msgstr ""
-#: ipalib/parameters.py:1181
+#: ipalib/parameters.py:1175
#, python-format
msgid "must be at least %(minvalue)s"
msgstr ""
-#: ipalib/parameters.py:1191
+#: ipalib/parameters.py:1185
#, python-format
msgid "can be at most %(maxvalue)s"
msgstr ""
-#: ipalib/parameters.py:1199
+#: ipalib/parameters.py:1193
#, python-format
msgid ""
"number class '%(cls)s' is not included in a list of allowed number classes: "
"%(allowed)s"
msgstr ""
-#: ipalib/parameters.py:1323
+#: ipalib/parameters.py:1317
#, python-format
msgid "must match pattern \"%(pattern)s\""
msgstr ""
-#: ipalib/parameters.py:1341
+#: ipalib/parameters.py:1335
msgid "must be binary data"
msgstr ""
-#: ipalib/parameters.py:1357
+#: ipalib/parameters.py:1351
#, python-format
msgid "must be at least %(minlength)d bytes"
msgstr ""
-#: ipalib/parameters.py:1367
+#: ipalib/parameters.py:1361
#, python-format
msgid "can be at most %(maxlength)d bytes"
msgstr ""
-#: ipalib/parameters.py:1377
+#: ipalib/parameters.py:1371
#, python-format
msgid "must be exactly %(length)d bytes"
msgstr ""
-#: ipalib/parameters.py:1407
+#: ipalib/parameters.py:1401
msgid "must be Unicode text"
msgstr ""
-#: ipalib/parameters.py:1440
+#: ipalib/parameters.py:1434
msgid "Leading and trailing spaces are not allowed"
msgstr ""
-#: ipalib/parameters.py:1448
+#: ipalib/parameters.py:1442
#, python-format
msgid "must be at least %(minlength)d characters"
msgstr ""
-#: ipalib/parameters.py:1458
+#: ipalib/parameters.py:1452
#, python-format
msgid "can be at most %(maxlength)d characters"
msgstr ""
-#: ipalib/parameters.py:1468
+#: ipalib/parameters.py:1462
#, python-format
msgid "must be exactly %(length)d characters"
msgstr ""
-#: ipalib/parameters.py:1487
+#: ipalib/parameters.py:1483
#, python-format
msgid "The character %(char)r is not allowed."
msgstr ""
-#: ipalib/parameters.py:1538
+#: ipalib/parameters.py:1534
#, python-format
msgid "must be '%(value)s'"
msgstr ""
-#: ipalib/parameters.py:1541
+#: ipalib/parameters.py:1537
#, python-format
msgid "must be one of %(values)s"
msgstr ""
-#: ipalib/parameters.py:1780
+#: ipalib/parameters.py:1647
+msgid "must be datetime value"
+msgstr ""
+
+#: ipalib/parameters.py:1661
+msgid "does not match any of accepted formats: "
+msgstr ""
+
+#: ipalib/parameters.py:1846
msgid "incomplete time value"
msgstr ""
-#: ipalib/parameters.py:1817
+#: ipalib/parameters.py:1883
msgid "this option is deprecated"
msgstr ""
-#: ipalib/plugins/aci.py:154
+#: ipalib/parameters.py:1936
+msgid "must be DNS name"
+msgstr ""
+
+#: ipalib/parameters.py:1955
+msgid "invalid escape code in domain name"
+msgstr ""
+
+#: ipalib/parameters.py:1957 ipalib/util.py:240
+msgid "empty DNS label"
+msgstr ""
+
+#: ipalib/parameters.py:1959
+msgid "domain name cannot be longer than 255 characters"
+msgstr ""
+
+#: ipalib/parameters.py:1961
+msgid "DNS label cannot be longer than 63 characters"
+msgstr ""
+
+#: ipalib/parameters.py:1963
+msgid "invalid domain name"
+msgstr ""
+
+#: ipalib/parameters.py:1970
+#, python-format
+msgid ""
+"domain name '%(domain)s' and normalized domain name '%(normalized)s' do not "
+"match. Please use only normalized domains"
+msgstr ""
+
+#: ipalib/parameters.py:1986
+msgid "must be absolute"
+msgstr ""
+
+#: ipalib/parameters.py:1990
+msgid "must be relative"
+msgstr ""
+
+#: ipalib/plugins/aci.py:157
msgid "A list of ACI values"
msgstr ""
-#: ipalib/plugins/aci.py:218
+#: ipalib/plugins/aci.py:221
msgid "type, filter, subtree and targetgroup are mutually exclusive"
msgstr ""
-#: ipalib/plugins/aci.py:221
+#: ipalib/plugins/aci.py:224
msgid "ACI prefix is required"
msgstr ""
-#: ipalib/plugins/aci.py:224
+#: ipalib/plugins/aci.py:227
msgid ""
"at least one of: type, filter, subtree, targetgroup, attrs or memberof are "
"required"
msgstr ""
-#: ipalib/plugins/aci.py:227
+#: ipalib/plugins/aci.py:230
msgid "filter and memberof are mutually exclusive"
msgstr ""
-#: ipalib/plugins/aci.py:233
+#: ipalib/plugins/aci.py:236
msgid "group, permission and self are mutually exclusive"
msgstr ""
-#: ipalib/plugins/aci.py:235
+#: ipalib/plugins/aci.py:238
msgid "One of group, permission or self is required"
msgstr ""
-#: ipalib/plugins/aci.py:258
+#: ipalib/plugins/aci.py:261
#, python-format
msgid "Group '%s' does not exist"
msgstr ""
-#: ipalib/plugins/aci.py:284
+#: ipalib/plugins/aci.py:287
msgid "empty filter"
msgstr ""
-#: ipalib/plugins/aci.py:305
+#: ipalib/plugins/aci.py:308
#, python-format
msgid "Syntax Error: %(error)s"
msgstr ""
-#: ipalib/plugins/aci.py:351
+#: ipalib/plugins/aci.py:354
#, python-format
msgid "invalid DN (%s)"
msgstr ""
-#: ipalib/plugins/aci.py:398
+#: ipalib/plugins/aci.py:401
#, python-format
msgid "ACI with name \"%s\" not found"
msgstr ""
-#: ipalib/plugins/aci.py:416
+#: ipalib/plugins/aci.py:419
msgid "ACI prefix"
msgstr ""
-#: ipalib/plugins/aci.py:417
+#: ipalib/plugins/aci.py:420
msgid ""
"Prefix used to distinguish ACI types (permission, delegation, selfservice, "
"none)"
msgstr ""
-#: ipalib/plugins/aci.py:428
+#: ipalib/plugins/aci.py:433
msgid "ACIs"
msgstr ""
-#: ipalib/plugins/aci.py:433
+#: ipalib/plugins/aci.py:438
msgid "ACI name"
msgstr ""
-#: ipalib/plugins/aci.py:439 ipalib/plugins/permission.py:123
+#: ipalib/plugins/aci.py:444 ipalib/plugins/permission.py:219
msgid "Permission"
msgstr ""
-#: ipalib/plugins/aci.py:440
+#: ipalib/plugins/aci.py:445
msgid "Permission ACI grants access to"
msgstr ""
-#: ipalib/plugins/aci.py:445 ipalib/plugins/delegation.py:101
+#: ipalib/plugins/aci.py:450 ipalib/plugins/delegation.py:105
msgid "User group"
msgstr ""
-#: ipalib/plugins/aci.py:446 ipalib/plugins/delegation.py:102
+#: ipalib/plugins/aci.py:451 ipalib/plugins/delegation.py:106
msgid "User group ACI grants access to"
msgstr ""
-#: ipalib/plugins/aci.py:451 ipalib/plugins/baseldap.py:65
-#: ipalib/plugins/delegation.py:83 ipalib/plugins/permission.py:122
-#: ipalib/plugins/permission.py:135 ipalib/plugins/selfservice.py:87
+#: ipalib/plugins/aci.py:456 ipalib/plugins/baseldap.py:67
+#: ipalib/plugins/delegation.py:87 ipalib/plugins/permission.py:218
+#: ipalib/plugins/selfservice.py:91
msgid "Permissions"
msgstr ""
-#: ipalib/plugins/aci.py:452
+#: ipalib/plugins/aci.py:457
msgid "Permissions to grant(read, write, add, delete, all)"
msgstr ""
-#: ipalib/plugins/aci.py:460 ipalib/plugins/permission.py:143
+#: ipalib/plugins/aci.py:465
msgid "Attributes to which the permission applies"
msgstr ""
-#: ipalib/plugins/aci.py:461 ipalib/plugins/delegation.py:89
-#: ipalib/plugins/permission.py:142 ipalib/plugins/selfservice.py:93
+#: ipalib/plugins/aci.py:466 ipalib/plugins/delegation.py:93
+#: ipalib/plugins/selfservice.py:97
msgid "Attributes"
msgstr ""
-#: ipalib/plugins/aci.py:467 ipalib/plugins/permission.py:150
+#: ipalib/plugins/aci.py:472 ipalib/plugins/otptoken.py:141
+#: ipalib/plugins/permission.py:315
msgid "Type"
msgstr ""
-#: ipalib/plugins/aci.py:468
+#: ipalib/plugins/aci.py:473
msgid "type of IPA object (user, group, host, hostgroup, service, netgroup)"
msgstr ""
-#: ipalib/plugins/aci.py:474
+#: ipalib/plugins/aci.py:479
msgid "Member of"
msgstr ""
-#: ipalib/plugins/aci.py:475
+#: ipalib/plugins/aci.py:480
msgid "Member of a group"
msgstr ""
-#: ipalib/plugins/aci.py:480 ipalib/plugins/permission.py:163
+#: ipalib/plugins/aci.py:485 ipalib/plugins/internal.py:206
msgid "Filter"
msgstr ""
-#: ipalib/plugins/aci.py:481 ipalib/plugins/permission.py:164
+#: ipalib/plugins/aci.py:486
msgid "Legal LDAP filter (e.g. ou=Engineering)"
msgstr ""
-#: ipalib/plugins/aci.py:486 ipalib/plugins/permission.py:169
+#: ipalib/plugins/aci.py:491 ipalib/plugins/permission.py:277
msgid "Subtree"
msgstr ""
-#: ipalib/plugins/aci.py:487
+#: ipalib/plugins/aci.py:492
msgid "Subtree to apply ACI to"
msgstr ""
-#: ipalib/plugins/aci.py:492 ipalib/plugins/permission.py:175
+#: ipalib/plugins/aci.py:497 ipalib/plugins/permission.py:309
msgid "Target group"
msgstr ""
-#: ipalib/plugins/aci.py:493
+#: ipalib/plugins/aci.py:498
msgid "Group to apply ACI to"
msgstr ""
-#: ipalib/plugins/aci.py:498
+#: ipalib/plugins/aci.py:503
msgid "Target your own entry (self)"
msgstr ""
-#: ipalib/plugins/aci.py:499
+#: ipalib/plugins/aci.py:504
msgid "Apply ACI to your own entry (self)"
msgstr ""
-#: ipalib/plugins/aci.py:511
+#: ipalib/plugins/aci.py:516
#, python-format
msgid "Created ACI \"%(value)s\""
msgstr ""
-#: ipalib/plugins/aci.py:516
+#: ipalib/plugins/aci.py:521
msgid "Test the ACI syntax but don't write anything"
msgstr ""
-#: ipalib/plugins/aci.py:567
+#: ipalib/plugins/aci.py:571
#, python-format
msgid "Deleted ACI \"%(value)s\""
msgstr ""
-#: ipalib/plugins/aci.py:610 ipalib/plugins/aci.py:886
-#: ipalib/plugins/aci.py:927 ipalib/plugins/delegation.py:59
-#: ipalib/plugins/permission.py:88 ipalib/plugins/selfservice.py:60
+#: ipalib/plugins/aci.py:613 ipalib/plugins/aci.py:888
+#: ipalib/plugins/aci.py:934 ipalib/plugins/delegation.py:62
+#: ipalib/plugins/permission.py:112 ipalib/plugins/selfservice.py:63
msgid "ACI"
msgstr ""
-#: ipalib/plugins/aci.py:618
+#: ipalib/plugins/aci.py:621
#, python-format
msgid "Modified ACI \"%(value)s\""
msgstr ""
-#: ipalib/plugins/aci.py:693
+#: ipalib/plugins/aci.py:695
#, python-format
msgid "%(count)d ACI matched"
msgid_plural "%(count)d ACIs matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/aci.py:934
+#: ipalib/plugins/aci.py:895
+msgid "Location of the ACI"
+msgstr ""
+
+#: ipalib/plugins/aci.py:941
msgid "New ACI name"
msgstr ""
-#: ipalib/plugins/aci.py:938
+#: ipalib/plugins/aci.py:945
#, python-format
msgid "Renamed ACI to \"%(value)s\""
msgstr ""
-#: ipalib/plugins/automember.py:28
+#: ipalib/plugins/automember.py:30
msgid ""
"\n"
"Auto Membership Rule.\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:32
+msgid ""
"\n"
"Bring clarity to the membership of hosts and users by configuring inclusive\n"
"or exclusive regex patterns, you can automatically assign a new entries "
"into\n"
"a group or hostgroup based upon attribute information.\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:36
+msgid ""
"\n"
"A rule is directly associated with a group by name, so you cannot create\n"
"a rule without an accompanying group or hostgroup.\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:39
+msgid ""
"\n"
"A condition is a regular expression used by 389-ds to match a new incoming\n"
"entry with an automember rule. If it matches an inclusive rule then the\n"
"entry is added to the appropriate group or hostgroup.\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:43
+msgid ""
"\n"
"A default group or hostgroup could be specified for entries that do not\n"
"match any rule. In case of user entries this group will be a fallback group\n"
"because all users are by default members of group specified in IPA config.\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:47
+msgid ""
"\n"
+"The automember-rebuild command can be used to retroactively run automember "
+"rules\n"
+"against existing entries, thus rebuilding their membership.\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:50 ipalib/plugins/host.py:79
+#: ipalib/plugins/otptoken.py:46 ipalib/plugins/otptoken_yubikey.py:37
+#: ipalib/plugins/permission.py:90 ipalib/plugins/radiusproxy.py:35
+#: ipalib/plugins/sudorule.py:66
+msgid ""
"\n"
"EXAMPLES:\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:52
+msgid ""
"\n"
" Add the initial group or hostgroup:\n"
" ipa hostgroup-add --desc=\"Web Servers\" webservers\n"
" ipa group-add --desc=\"Developers\" devel\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:56
+msgid ""
"\n"
" Add the initial rule:\n"
" ipa automember-add --type=hostgroup webservers\n"
" ipa automember-add --type=group devel\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:60
+msgid ""
"\n"
" Add a condition to the rule:\n"
" ipa automember-add-condition --key=fqdn --type=hostgroup --inclusive-"
"regex=^web[1-9]+\\.example\\.com webservers\n"
" ipa automember-add-condition --key=manager --type=group --inclusive-"
"regex=^uid=mscott devel\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:64
+msgid ""
"\n"
" Add an exclusive condition to the rule to prevent auto assignment:\n"
" ipa automember-add-condition --key=fqdn --type=hostgroup --exclusive-"
"regex=^web5\\.example\\.com webservers\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:67
+msgid ""
"\n"
" Add a host:\n"
" ipa host-add web1.example.com\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:70
+msgid ""
"\n"
" Add a user:\n"
" ipa user-add --first=Tim --last=User --password tuser1 --manager=mscott\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:73
+msgid ""
"\n"
" Verify automembership:\n"
" ipa hostgroup-show webservers\n"
@@ -887,152 +1016,214 @@ msgid ""
" Description: Developers\n"
" GID: 1004200000\n"
" Member users: tuser\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:85
+msgid ""
"\n"
" Remove a condition from the rule:\n"
" ipa automember-remove-condition --key=fqdn --type=hostgroup --inclusive-"
"regex=^web[1-9]+\\.example\\.com webservers\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:88
+msgid ""
"\n"
" Modify the automember rule:\n"
" ipa automember-mod\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:91
+msgid ""
"\n"
" Set the default (fallback) target group:\n"
" ipa automember-default-group-set --default-group=webservers --"
"type=hostgroup\n"
" ipa automember-default-group-set --default-group=ipausers --type=group\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:95
+msgid ""
"\n"
" Remove the default (fallback) target group:\n"
" ipa automember-default-group-remove --type=hostgroup\n"
" ipa automember-default-group-remove --type=group\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:99
+msgid ""
"\n"
" Show the default (fallback) target group:\n"
" ipa automember-default-group-show --type=hostgroup\n"
" ipa automember-default-group-show --type=group\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:103
+msgid ""
"\n"
" Find all of the automember rules:\n"
" ipa automember-find\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:106
+msgid ""
"\n"
" Display a automember rule:\n"
" ipa automember-show --type=hostgroup webservers\n"
" ipa automember-show --type=group devel\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:110
+msgid ""
"\n"
" Delete an automember rule:\n"
" ipa automember-del --type=hostgroup webservers\n"
" ipa automember-del --type=group devel\n"
msgstr ""
-#: ipalib/plugins/automember.py:119 ipalib/plugins/automember.py:120
+#: ipalib/plugins/automember.py:114
+msgid ""
+"\n"
+" Rebuild membership for all users:\n"
+" ipa automember-rebuild --type=group\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:117
+msgid ""
+"\n"
+" Rebuild membership for all hosts:\n"
+" ipa automember-rebuild --type=hostgroup\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:120
+msgid ""
+"\n"
+" Rebuild membership for specified users:\n"
+" ipa automember-rebuild --users=tuser1 --users=tuser2\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:123
+msgid ""
+"\n"
+" Rebuild membership for specified hosts:\n"
+" ipa automember-rebuild --hosts=web1.example.com --hosts=web2.example."
+"com\n"
+msgstr ""
+
+#: ipalib/plugins/automember.py:142 ipalib/plugins/automember.py:143
msgid "Inclusive Regex"
msgstr ""
-#: ipalib/plugins/automember.py:126 ipalib/plugins/automember.py:127
+#: ipalib/plugins/automember.py:149 ipalib/plugins/automember.py:150
msgid "Exclusive Regex"
msgstr ""
-#: ipalib/plugins/automember.py:132
+#: ipalib/plugins/automember.py:155
msgid "Attribute Key"
msgstr ""
-#: ipalib/plugins/automember.py:133
+#: ipalib/plugins/automember.py:156
msgid ""
"Attribute to filter via regex. For example fqdn for a host, or manager for a "
"user"
msgstr ""
-#: ipalib/plugins/automember.py:140
+#: ipalib/plugins/automember.py:163
msgid "Grouping Type"
msgstr ""
-#: ipalib/plugins/automember.py:141
+#: ipalib/plugins/automember.py:164
msgid "Grouping to which the rule applies"
msgstr ""
-#: ipalib/plugins/automember.py:149 ipalib/plugins/automember.py:150
+#: ipalib/plugins/automember.py:172 ipalib/plugins/automember.py:173
msgid "Automember Rule"
msgstr ""
-#: ipalib/plugins/automember.py:171
+#: ipalib/plugins/automember.py:232
msgid "Auto Membership Rule"
msgstr ""
-#: ipalib/plugins/automember.py:176 ipalib/plugins/automount.py:579
-#: ipalib/plugins/group.py:155 ipalib/plugins/hbacrule.py:179
-#: ipalib/plugins/hbacsvc.py:79 ipalib/plugins/hbacsvcgroup.py:73
-#: ipalib/plugins/host.py:267 ipalib/plugins/hostgroup.py:90
-#: ipalib/plugins/netgroup.py:122 ipalib/plugins/privilege.py:73
-#: ipalib/plugins/role.py:92 ipalib/plugins/selinuxusermap.py:184
-#: ipalib/plugins/sudocmd.py:77 ipalib/plugins/sudocmdgroup.py:78
-#: ipalib/plugins/sudorule.py:111
+#: ipalib/plugins/automember.py:237 ipalib/plugins/automount.py:600
+#: ipalib/plugins/group.py:222 ipalib/plugins/hbacrule.py:233
+#: ipalib/plugins/hbacsvc.py:108 ipalib/plugins/hbacsvcgroup.py:112
+#: ipalib/plugins/host.py:385 ipalib/plugins/hostgroup.py:144
+#: ipalib/plugins/netgroup.py:179 ipalib/plugins/otptoken.py:149
+#: ipalib/plugins/privilege.py:107 ipalib/plugins/radiusproxy.py:109
+#: ipalib/plugins/role.py:139 ipalib/plugins/selinuxusermap.py:227
+#: ipalib/plugins/sudocmd.py:119 ipalib/plugins/sudocmdgroup.py:122
+#: ipalib/plugins/sudorule.py:223
msgid "Description"
msgstr ""
-#: ipalib/plugins/automember.py:177
+#: ipalib/plugins/automember.py:238
msgid "A description of this auto member rule"
msgstr ""
-#: ipalib/plugins/automember.py:181 ipalib/plugins/automember.py:511
+#: ipalib/plugins/automember.py:242 ipalib/plugins/automember.py:568
msgid "Default (fallback) Group"
msgstr ""
-#: ipalib/plugins/automember.py:182
+#: ipalib/plugins/automember.py:243
msgid "Default group for entries to land"
msgstr ""
-#: ipalib/plugins/automember.py:193
+#: ipalib/plugins/automember.py:255
#, python-format
-msgid "Group: %s not found!"
+msgid "%(otype)s \"%(oname)s\" not found"
msgstr ""
-#: ipalib/plugins/automember.py:217
+#: ipalib/plugins/automember.py:281
#, python-format
msgid "%s is not a valid attribute."
msgstr ""
-#: ipalib/plugins/automember.py:230
+#: ipalib/plugins/automember.py:294
msgid ""
"\n"
" Add an automember rule.\n"
" "
msgstr ""
-#: ipalib/plugins/automember.py:235
+#: ipalib/plugins/automember.py:299
#, python-format
msgid "Added automember rule \"%(value)s\""
msgstr ""
-#: ipalib/plugins/automember.py:242
+#: ipalib/plugins/automember.py:306
msgid "Auto Membership is not configured"
msgstr ""
-#: ipalib/plugins/automember.py:255
+#: ipalib/plugins/automember.py:318
msgid ""
"\n"
" Add conditions to an automember rule.\n"
" "
msgstr ""
-#: ipalib/plugins/automember.py:260
+#: ipalib/plugins/automember.py:323
msgid "Failed to add"
msgstr ""
-#: ipalib/plugins/automember.py:267
+#: ipalib/plugins/automember.py:330
#, python-format
msgid "Added condition(s) to \"%(value)s\""
msgstr ""
-#: ipalib/plugins/automember.py:276
+#: ipalib/plugins/automember.py:339
msgid "Conditions that could not be added"
msgstr ""
-#: ipalib/plugins/automember.py:280
+#: ipalib/plugins/automember.py:343
msgid "Number of conditions added"
msgstr ""
-#: ipalib/plugins/automember.py:290 ipalib/plugins/automember.py:376
+#: ipalib/plugins/automember.py:353 ipalib/plugins/automember.py:438
#, python-format
msgid "Auto member rule: %s not found!"
msgstr ""
-#: ipalib/plugins/automember.py:332
+#: ipalib/plugins/automember.py:395
msgid ""
"\n"
" Override this so we can add completed and failed to the return "
@@ -1040,119 +1231,196 @@ msgid ""
" "
msgstr ""
-#: ipalib/plugins/automember.py:348
+#: ipalib/plugins/automember.py:410
msgid ""
"\n"
" Remove conditions from an automember rule.\n"
" "
msgstr ""
-#: ipalib/plugins/automember.py:353
+#: ipalib/plugins/automember.py:415
#, python-format
msgid "Removed condition(s) from \"%(value)s\""
msgstr ""
-#: ipalib/plugins/automember.py:362
+#: ipalib/plugins/automember.py:424
msgid "Conditions that could not be removed"
msgstr ""
-#: ipalib/plugins/automember.py:366
+#: ipalib/plugins/automember.py:428
msgid "Number of conditions removed"
msgstr ""
-#: ipalib/plugins/automember.py:420
+#: ipalib/plugins/automember.py:482
msgid ""
"\n"
" Override this so we can set completed and failed.\n"
" "
msgstr ""
-#: ipalib/plugins/automember.py:436
+#: ipalib/plugins/automember.py:497
msgid ""
"\n"
" Modify an automember rule.\n"
" "
msgstr ""
-#: ipalib/plugins/automember.py:441
+#: ipalib/plugins/automember.py:502
#, python-format
msgid "Modified automember rule \"%(value)s\""
msgstr ""
-#: ipalib/plugins/automember.py:452
+#: ipalib/plugins/automember.py:512
msgid ""
"\n"
" Delete an automember rule.\n"
" "
msgstr ""
-#: ipalib/plugins/automember.py:457
+#: ipalib/plugins/automember.py:517
#, python-format
msgid "Deleted automember rule \"%(value)s\""
msgstr ""
-#: ipalib/plugins/automember.py:468
+#: ipalib/plugins/automember.py:527
msgid ""
"\n"
" Search for automember rules.\n"
" "
msgstr ""
-#: ipalib/plugins/automember.py:475
+#: ipalib/plugins/automember.py:534
#, python-format
msgid "%(count)d rules matched"
msgid_plural "%(count)d rules matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/automember.py:488
+#: ipalib/plugins/automember.py:546
msgid ""
"\n"
" Display information about an automember rule.\n"
" "
msgstr ""
-#: ipalib/plugins/automember.py:504
+#: ipalib/plugins/automember.py:561
msgid ""
"\n"
" Set default (fallback) group for all unmatched entries.\n"
" "
msgstr ""
-#: ipalib/plugins/automember.py:512
+#: ipalib/plugins/automember.py:569
msgid "Default (fallback) group for entries to land"
msgstr ""
-#: ipalib/plugins/automember.py:516
+#: ipalib/plugins/automember.py:573
#, python-format
msgid "Set default (fallback) group for automember \"%(value)s\""
msgstr ""
-#: ipalib/plugins/automember.py:533
+#: ipalib/plugins/automember.py:589
msgid ""
"\n"
" Remove default (fallback) group for all unmatched entries.\n"
" "
msgstr ""
-#: ipalib/plugins/automember.py:538
+#: ipalib/plugins/automember.py:594
#, python-format
msgid "Removed default (fallback) group for automember \"%(value)s\""
msgstr ""
-#: ipalib/plugins/automember.py:548 ipalib/plugins/automember.py:556
-#: ipalib/plugins/automember.py:581
+#: ipalib/plugins/automember.py:604 ipalib/plugins/automember.py:612
+#: ipalib/plugins/automember.py:636
msgid "No default (fallback) group set"
msgstr ""
-#: ipalib/plugins/automember.py:568
+#: ipalib/plugins/automember.py:623
msgid ""
"\n"
" Display information about the default (fallback) automember groups.\n"
" "
msgstr ""
-#: ipalib/plugins/automount.py:29
+#: ipalib/plugins/automember.py:647
+msgid "Rebuild auto membership."
+msgstr ""
+
+#: ipalib/plugins/automember.py:653
+msgid "Rebuild membership for all members of a grouping"
+msgstr ""
+
+#: ipalib/plugins/automember.py:657 ipalib/plugins/hbacrule.py:240
+#: ipalib/plugins/internal.py:512 ipalib/plugins/selinuxusermap.py:234
+#: ipalib/plugins/sudorule.py:267 ipalib/plugins/user.py:429
+msgid "Users"
+msgstr ""
+
+#: ipalib/plugins/automember.py:658
+msgid "Rebuild membership for specified users"
+msgstr ""
+
+#: ipalib/plugins/automember.py:662 ipalib/plugins/hbacrule.py:248
+#: ipalib/plugins/host.py:373 ipalib/plugins/internal.py:506
+#: ipalib/plugins/selinuxusermap.py:242 ipalib/plugins/sudorule.py:280
+msgid "Hosts"
+msgstr ""
+
+#: ipalib/plugins/automember.py:663
+msgid "Rebuild membership for specified hosts"
+msgstr ""
+
+#: ipalib/plugins/automember.py:668
+msgid "No wait"
+msgstr ""
+
+#: ipalib/plugins/automember.py:669
+msgid "Don't wait for rebuilding membership"
+msgstr ""
+
+#: ipalib/plugins/automember.py:676
+msgid "Task DN"
+msgstr ""
+
+#: ipalib/plugins/automember.py:677
+msgid "DN of the started task"
+msgstr ""
+
+#: ipalib/plugins/automember.py:694
+msgid "at least one of options: type, users, hosts must be specified"
+msgstr ""
+
+#: ipalib/plugins/automember.py:700
+msgid "users and hosts cannot both be set"
+msgstr ""
+
+#: ipalib/plugins/automember.py:704
+msgid "hosts cannot be set when type is 'group'"
+msgstr ""
+
+#: ipalib/plugins/automember.py:708
+msgid "users cannot be set when type is 'hostgroup'"
+msgstr ""
+
+#: ipalib/plugins/automember.py:759
+msgid "Automember rebuild membership task started"
+msgstr ""
+
+#: ipalib/plugins/automember.py:763 ipalib/plugins/internal.py:158
+msgid "Automember rebuild membership task completed"
+msgstr ""
+
+#: ipalib/plugins/automember.py:780
+#, python-format
+msgid "Task DN = '%s'"
+msgstr ""
+
+#: ipalib/plugins/automember.py:783 ipalib/plugins/internal.py:692
+msgid "Automember"
+msgstr ""
+
+#: ipalib/plugins/automount.py:30
msgid ""
"\n"
"Automount\n"
@@ -1260,628 +1528,627 @@ msgid ""
" ipa automountkey-del baltimore auto.share --key=man\n"
msgstr ""
-#: ipalib/plugins/automount.py:205
+#: ipalib/plugins/automount.py:209
msgid "automount location"
msgstr ""
-#: ipalib/plugins/automount.py:206
+#: ipalib/plugins/automount.py:210
msgid "automount locations"
msgstr ""
-#: ipalib/plugins/automount.py:209
+#: ipalib/plugins/automount.py:213
msgid "Automount Locations"
msgstr ""
-#: ipalib/plugins/automount.py:210
+#: ipalib/plugins/automount.py:214
msgid "Automount Location"
msgstr ""
-#: ipalib/plugins/automount.py:215 ipalib/plugins/host.py:277
+#: ipalib/plugins/automount.py:243 ipalib/plugins/host.py:395
msgid "Location"
msgstr ""
-#: ipalib/plugins/automount.py:216
+#: ipalib/plugins/automount.py:244
msgid "Automount location name."
msgstr ""
-#: ipalib/plugins/automount.py:225
+#: ipalib/plugins/automount.py:252
msgid "Create a new automount location."
msgstr ""
-#: ipalib/plugins/automount.py:227
+#: ipalib/plugins/automount.py:254
#, python-format
msgid "Added automount location \"%(value)s\""
msgstr ""
-#: ipalib/plugins/automount.py:247
+#: ipalib/plugins/automount.py:272
msgid "Delete an automount location."
msgstr ""
-#: ipalib/plugins/automount.py:249
+#: ipalib/plugins/automount.py:274
#, python-format
msgid "Deleted automount location \"%(value)s\""
msgstr ""
-#: ipalib/plugins/automount.py:255
+#: ipalib/plugins/automount.py:279
msgid "Display an automount location."
msgstr ""
-#: ipalib/plugins/automount.py:261
+#: ipalib/plugins/automount.py:284
msgid "Search for an automount location."
msgstr ""
-#: ipalib/plugins/automount.py:264
+#: ipalib/plugins/automount.py:287
#, python-format
msgid "%(count)d automount location matched"
msgid_plural "%(count)d automount locations matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/automount.py:272
+#: ipalib/plugins/automount.py:294
msgid "Generate automount files for a specific location."
msgstr ""
-#: ipalib/plugins/automount.py:350
+#: ipalib/plugins/automount.py:372
msgid "maps not connected to /etc/auto.master:"
msgstr ""
-#: ipalib/plugins/automount.py:368
+#: ipalib/plugins/automount.py:389
msgid "Import automount files for a specific location."
msgstr ""
-#: ipalib/plugins/automount.py:372
+#: ipalib/plugins/automount.py:393
msgid "Master file"
msgstr ""
-#: ipalib/plugins/automount.py:373
+#: ipalib/plugins/automount.py:394
msgid "Automount master file."
msgstr ""
-#: ipalib/plugins/automount.py:380
+#: ipalib/plugins/automount.py:401
msgid ""
"Continuous operation mode. Errors are reported but the process continues."
msgstr ""
-#: ipalib/plugins/automount.py:392
+#: ipalib/plugins/automount.py:413
#, python-format
msgid "File %(file)s not found"
msgstr ""
-#: ipalib/plugins/automount.py:444
+#: ipalib/plugins/automount.py:465
#, python-format
msgid "key %(key)s already exists"
msgstr ""
-#: ipalib/plugins/automount.py:460
+#: ipalib/plugins/automount.py:481
#, python-format
msgid "map %(map)s already exists"
msgstr ""
-#: ipalib/plugins/automount.py:565
+#: ipalib/plugins/automount.py:585
msgid "automount map"
msgstr ""
-#: ipalib/plugins/automount.py:566
+#: ipalib/plugins/automount.py:586
msgid "automount maps"
msgstr ""
-#: ipalib/plugins/automount.py:573
+#: ipalib/plugins/automount.py:594
msgid "Map"
msgstr ""
-#: ipalib/plugins/automount.py:574
+#: ipalib/plugins/automount.py:595
msgid "Automount map name."
msgstr ""
-#: ipalib/plugins/automount.py:583
+#: ipalib/plugins/automount.py:629
msgid "Automount Maps"
msgstr ""
-#: ipalib/plugins/automount.py:584
+#: ipalib/plugins/automount.py:630
msgid "Automount Map"
msgstr ""
-#: ipalib/plugins/automount.py:590
+#: ipalib/plugins/automount.py:635
msgid "Create a new automount map."
msgstr ""
-#: ipalib/plugins/automount.py:592
+#: ipalib/plugins/automount.py:637
#, python-format
msgid "Added automount map \"%(value)s\""
msgstr ""
-#: ipalib/plugins/automount.py:598
+#: ipalib/plugins/automount.py:642
msgid "Delete an automount map."
msgstr ""
-#: ipalib/plugins/automount.py:600
+#: ipalib/plugins/automount.py:644
#, python-format
msgid "Deleted automount map \"%(value)s\""
msgstr ""
-#: ipalib/plugins/automount.py:619
+#: ipalib/plugins/automount.py:662
msgid "Modify an automount map."
msgstr ""
-#: ipalib/plugins/automount.py:621
+#: ipalib/plugins/automount.py:664
#, python-format
msgid "Modified automount map \"%(value)s\""
msgstr ""
-#: ipalib/plugins/automount.py:627
+#: ipalib/plugins/automount.py:669
msgid "Search for an automount map."
msgstr ""
-#: ipalib/plugins/automount.py:630
+#: ipalib/plugins/automount.py:672
#, python-format
msgid "%(count)d automount map matched"
msgid_plural "%(count)d automount maps matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/automount.py:638
+#: ipalib/plugins/automount.py:679
msgid "Display an automount map."
msgstr ""
-#: ipalib/plugins/automount.py:644
+#: ipalib/plugins/automount.py:684
msgid "Automount key object."
msgstr ""
-#: ipalib/plugins/automount.py:648
+#: ipalib/plugins/automount.py:688
msgid "automount key"
msgstr ""
-#: ipalib/plugins/automount.py:649
+#: ipalib/plugins/automount.py:689
msgid "automount keys"
msgstr ""
-#: ipalib/plugins/automount.py:660 ipalib/plugins/automount.py:883
-#: ipalib/plugins/automount.py:993
+#: ipalib/plugins/automount.py:701 ipalib/plugins/automount.py:950
+#: ipalib/plugins/automount.py:1057 ipalib/plugins/otptoken.py:191
msgid "Key"
msgstr ""
-#: ipalib/plugins/automount.py:661 ipalib/plugins/automount.py:884
-#: ipalib/plugins/automount.py:994
+#: ipalib/plugins/automount.py:702 ipalib/plugins/automount.py:951
+#: ipalib/plugins/automount.py:1058
msgid "Automount key name."
msgstr ""
-#: ipalib/plugins/automount.py:666 ipalib/plugins/automount.py:888
-#: ipalib/plugins/automount.py:998
+#: ipalib/plugins/automount.py:707 ipalib/plugins/automount.py:955
+#: ipalib/plugins/automount.py:1062
msgid "Mount information"
msgstr ""
-#: ipalib/plugins/automount.py:669
+#: ipalib/plugins/automount.py:710
msgid "description"
msgstr ""
-#: ipalib/plugins/automount.py:678
+#: ipalib/plugins/automount.py:748
msgid "Automount Keys"
msgstr ""
-#: ipalib/plugins/automount.py:679
+#: ipalib/plugins/automount.py:749
msgid "Automount Key"
msgstr ""
-#: ipalib/plugins/automount.py:680
+#: ipalib/plugins/automount.py:750
#, python-format
msgid ""
"The key,info pair must be unique. A key named %(key)s with info %(info)s "
"already exists"
msgstr ""
-#: ipalib/plugins/automount.py:681
+#: ipalib/plugins/automount.py:751
#, python-format
msgid "key named %(key)s already exists"
msgstr ""
-#: ipalib/plugins/automount.py:682
+#: ipalib/plugins/automount.py:752
#, python-format
msgid "The automount key %(key)s with info %(info)s does not exist"
msgstr ""
-#: ipalib/plugins/automount.py:732
+#: ipalib/plugins/automount.py:802
#, python-format
msgid ""
"More than one entry with key %(key)s found, use --info to select specific "
"entry."
msgstr ""
-#: ipalib/plugins/automount.py:792
+#: ipalib/plugins/automount.py:861
msgid "Create a new automount key."
msgstr ""
-#: ipalib/plugins/automount.py:794
+#: ipalib/plugins/automount.py:863
#, python-format
msgid "Added automount key \"%(value)s\""
msgstr ""
-#: ipalib/plugins/automount.py:822
+#: ipalib/plugins/automount.py:890
msgid "Create a new indirect mount point."
msgstr ""
-#: ipalib/plugins/automount.py:824
+#: ipalib/plugins/automount.py:892
#, python-format
msgid "Added automount indirect map \"%(value)s\""
msgstr ""
-#: ipalib/plugins/automount.py:829
+#: ipalib/plugins/automount.py:897
msgid "Mount point"
msgstr ""
-#: ipalib/plugins/automount.py:833
+#: ipalib/plugins/automount.py:901
msgid "Parent map"
msgstr ""
-#: ipalib/plugins/automount.py:834
+#: ipalib/plugins/automount.py:902
msgid "Name of parent automount map (default: auto.master)."
msgstr ""
-#: ipalib/plugins/automount.py:848
+#: ipalib/plugins/automount.py:916
msgid "mount point is relative to parent map, cannot begin with /"
msgstr ""
-#: ipalib/plugins/automount.py:876
+#: ipalib/plugins/automount.py:943
msgid "Delete an automount key."
msgstr ""
-#: ipalib/plugins/automount.py:878
+#: ipalib/plugins/automount.py:945
#, python-format
msgid "Deleted automount key \"%(value)s\""
msgstr ""
-#: ipalib/plugins/automount.py:918
+#: ipalib/plugins/automount.py:984
msgid "Modify an automount key."
msgstr ""
-#: ipalib/plugins/automount.py:920
+#: ipalib/plugins/automount.py:986
#, python-format
msgid "Modified automount key \"%(value)s\""
msgstr ""
-#: ipalib/plugins/automount.py:927
+#: ipalib/plugins/automount.py:993
msgid "New mount information"
msgstr ""
-#: ipalib/plugins/automount.py:977
+#: ipalib/plugins/automount.py:1042
msgid "Search for an automount key."
msgstr ""
-#: ipalib/plugins/automount.py:980
+#: ipalib/plugins/automount.py:1045
#, python-format
msgid "%(count)d automount key matched"
msgid_plural "%(count)d automount keys matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/automount.py:988
+#: ipalib/plugins/automount.py:1052
msgid "Display an automount key."
msgstr ""
-#: ipalib/plugins/baseldap.py:41 ipalib/plugins/internal.py:280
-#: ipalib/plugins/internal.py:633 ipalib/plugins/migration.py:491
-#: ipalib/plugins/user.py:289
+#: ipalib/plugins/baseldap.py:43 ipalib/plugins/internal.py:292
+#: ipalib/plugins/internal.py:659 ipalib/plugins/migration.py:502
+#: ipalib/plugins/otptoken.py:442 ipalib/plugins/user.py:497
msgid "Password"
msgstr ""
-#: ipalib/plugins/baseldap.py:44
+#: ipalib/plugins/baseldap.py:46
msgid "Failed members"
msgstr ""
-#: ipalib/plugins/baseldap.py:47
+#: ipalib/plugins/baseldap.py:49
msgid "Member users"
msgstr ""
-#: ipalib/plugins/baseldap.py:50
+#: ipalib/plugins/baseldap.py:52
msgid "Member groups"
msgstr ""
-#: ipalib/plugins/baseldap.py:53
+#: ipalib/plugins/baseldap.py:55
msgid "Member of groups"
msgstr ""
-#: ipalib/plugins/baseldap.py:56
+#: ipalib/plugins/baseldap.py:58
msgid "Member hosts"
msgstr ""
-#: ipalib/plugins/baseldap.py:59
+#: ipalib/plugins/baseldap.py:61
msgid "Member host-groups"
msgstr ""
-#: ipalib/plugins/baseldap.py:62
+#: ipalib/plugins/baseldap.py:64
msgid "Member of host-groups"
msgstr ""
-#: ipalib/plugins/baseldap.py:71 ipalib/plugins/role.py:81
+#: ipalib/plugins/baseldap.py:73 ipalib/plugins/role.py:128
msgid "Roles"
msgstr ""
-#: ipalib/plugins/baseldap.py:74 ipalib/plugins/sudocmdgroup.py:66
-#: ipalib/plugins/sudocmdgroup.py:86
+#: ipalib/plugins/baseldap.py:76 ipalib/plugins/sudocmdgroup.py:110
+#: ipalib/plugins/sudocmdgroup.py:130
msgid "Sudo Command Groups"
msgstr ""
-#: ipalib/plugins/baseldap.py:80
+#: ipalib/plugins/baseldap.py:82
msgid "Granting privilege to roles"
msgstr ""
-#: ipalib/plugins/baseldap.py:83
+#: ipalib/plugins/baseldap.py:85
msgid "Member netgroups"
msgstr ""
-#: ipalib/plugins/baseldap.py:86
+#: ipalib/plugins/baseldap.py:88
msgid "Member of netgroups"
msgstr ""
-#: ipalib/plugins/baseldap.py:89
+#: ipalib/plugins/baseldap.py:91
msgid "Member services"
msgstr ""
-#: ipalib/plugins/baseldap.py:92
+#: ipalib/plugins/baseldap.py:94
msgid "Member service groups"
msgstr ""
-#: ipalib/plugins/baseldap.py:98
+#: ipalib/plugins/baseldap.py:100
msgid "Member HBAC service"
msgstr ""
-#: ipalib/plugins/baseldap.py:101
+#: ipalib/plugins/baseldap.py:103
msgid "Member HBAC service groups"
msgstr ""
-#: ipalib/plugins/baseldap.py:116
+#: ipalib/plugins/baseldap.py:118
msgid "Indirect Member users"
msgstr ""
-#: ipalib/plugins/baseldap.py:119
+#: ipalib/plugins/baseldap.py:121
msgid "Indirect Member groups"
msgstr ""
-#: ipalib/plugins/baseldap.py:122
+#: ipalib/plugins/baseldap.py:124
msgid "Indirect Member hosts"
msgstr ""
-#: ipalib/plugins/baseldap.py:125
+#: ipalib/plugins/baseldap.py:127
msgid "Indirect Member host-groups"
msgstr ""
-#: ipalib/plugins/baseldap.py:128
+#: ipalib/plugins/baseldap.py:130
msgid "Indirect Member of roles"
msgstr ""
-#: ipalib/plugins/baseldap.py:131
+#: ipalib/plugins/baseldap.py:133
msgid "Indirect Member permissions"
msgstr ""
-#: ipalib/plugins/baseldap.py:134
+#: ipalib/plugins/baseldap.py:136
msgid "Indirect Member HBAC service"
msgstr ""
-#: ipalib/plugins/baseldap.py:137
+#: ipalib/plugins/baseldap.py:139
msgid "Indirect Member HBAC service group"
msgstr ""
-#: ipalib/plugins/baseldap.py:140
+#: ipalib/plugins/baseldap.py:142
msgid "Indirect Member netgroups"
msgstr ""
-#: ipalib/plugins/baseldap.py:161
+#: ipalib/plugins/baseldap.py:163
msgid "Failed source hosts/hostgroups"
msgstr ""
-#: ipalib/plugins/baseldap.py:164
+#: ipalib/plugins/baseldap.py:166
msgid "Failed hosts/hostgroups"
msgstr ""
-#: ipalib/plugins/baseldap.py:167
+#: ipalib/plugins/baseldap.py:169
msgid "Failed users/groups"
msgstr ""
-#: ipalib/plugins/baseldap.py:170
+#: ipalib/plugins/baseldap.py:172
msgid "Failed service/service groups"
msgstr ""
-#: ipalib/plugins/baseldap.py:173
+#: ipalib/plugins/baseldap.py:175
msgid "Failed to remove"
msgstr ""
-#: ipalib/plugins/baseldap.py:177
+#: ipalib/plugins/baseldap.py:179
msgid "Failed RunAs"
msgstr ""
-#: ipalib/plugins/baseldap.py:180
+#: ipalib/plugins/baseldap.py:182
msgid "Failed RunAsGroup"
msgstr ""
-#: ipalib/plugins/baseldap.py:198
+#: ipalib/plugins/baseldap.py:200
msgid "Invalid format. Should be name=value"
msgstr ""
-#: ipalib/plugins/baseldap.py:286
+#: ipalib/plugins/baseldap.py:311
msgid "External host"
msgstr ""
-#: ipalib/plugins/baseldap.py:419
+#: ipalib/plugins/baseldap.py:483
msgid "An IPA master host cannot be deleted or disabled"
msgstr ""
-#: ipalib/plugins/baseldap.py:433
+#: ipalib/plugins/baseldap.py:497
msgid "entry"
msgstr ""
-#: ipalib/plugins/baseldap.py:434
+#: ipalib/plugins/baseldap.py:498
msgid "entries"
msgstr ""
-#: ipalib/plugins/baseldap.py:466 ipalib/plugins/baseldap.py:467
+#: ipalib/plugins/baseldap.py:531 ipalib/plugins/baseldap.py:532
msgid "Entry"
msgstr ""
-#: ipalib/plugins/baseldap.py:469
+#: ipalib/plugins/baseldap.py:535
#, python-format
msgid "container entry (%(container)s) not found"
msgstr ""
-#: ipalib/plugins/baseldap.py:470
+#: ipalib/plugins/baseldap.py:536
#, python-format
msgid "%(parent)s: %(oname)s not found"
msgstr ""
-#: ipalib/plugins/baseldap.py:471
+#: ipalib/plugins/baseldap.py:537
#, python-format
msgid "%(pkey)s: %(oname)s not found"
msgstr ""
-#: ipalib/plugins/baseldap.py:472
+#: ipalib/plugins/baseldap.py:538
#, python-format
msgid "%(oname)s with name \"%(pkey)s\" already exists"
msgstr ""
-#: ipalib/plugins/baseldap.py:669 ipalib/plugins/baseldap.py:677
-#: ipalib/plugins/baseldap.py:682
+#: ipalib/plugins/baseldap.py:738 ipalib/plugins/baseldap.py:746
+#: ipalib/plugins/baseldap.py:751
#, python-format
msgid "attribute \"%(attribute)s\" not allowed"
msgstr ""
-#: ipalib/plugins/baseldap.py:744
+#: ipalib/plugins/baseldap.py:813
msgid ""
"Set an attribute to a name/value pair. Format is attr=value.\n"
"For multi-valued attributes, the command replaces the values already present."
msgstr ""
-#: ipalib/plugins/baseldap.py:750
+#: ipalib/plugins/baseldap.py:819
msgid ""
"Add an attribute/value pair. Format is attr=value. The attribute\n"
"must be part of the schema."
msgstr ""
-#: ipalib/plugins/baseldap.py:756
+#: ipalib/plugins/baseldap.py:825
msgid ""
"Delete an attribute/value pair. The option will be evaluated\n"
"last, after all sets and adds."
msgstr ""
-#: ipalib/plugins/baseldap.py:784
+#: ipalib/plugins/baseldap.py:859
msgid "attribute is not configurable"
msgstr ""
-#: ipalib/plugins/baseldap.py:887
+#: ipalib/plugins/baseldap.py:962
msgid "No such attribute on this entry"
msgstr ""
-#: ipalib/plugins/baseldap.py:981
+#: ipalib/plugins/baseldap.py:1058
msgid "Suppress processing of membership attributes."
msgstr ""
-#: ipalib/plugins/baseldap.py:1159
+#: ipalib/plugins/baseldap.py:1235
msgid "Continuous mode: Don't stop on errors."
msgstr ""
-#: ipalib/plugins/baseldap.py:1180 ipalib/plugins/baseldap.py:1253
-#: ipalib/plugins/internal.py:501
+#: ipalib/plugins/baseldap.py:1256 ipalib/plugins/baseldap.py:1332
msgid "Rights"
msgstr ""
-#: ipalib/plugins/baseldap.py:1181 ipalib/plugins/baseldap.py:1254
+#: ipalib/plugins/baseldap.py:1257 ipalib/plugins/baseldap.py:1333
msgid ""
"Display the access rights of this entry (requires --all). See ipa man page "
"for details."
msgstr ""
-#: ipalib/plugins/baseldap.py:1263
+#: ipalib/plugins/baseldap.py:1342
msgid "Rename"
msgstr ""
-#: ipalib/plugins/baseldap.py:1264
+#: ipalib/plugins/baseldap.py:1343
#, python-format
msgid "Rename the %(ldap_obj_name)s object"
msgstr ""
-#: ipalib/plugins/baseldap.py:1345
+#: ipalib/plugins/baseldap.py:1424
msgid "the entry was deleted while being modified"
msgstr ""
-#: ipalib/plugins/baseldap.py:1472 ipalib/plugins/baseldap.py:1941
+#: ipalib/plugins/baseldap.py:1555 ipalib/plugins/baseldap.py:2023
#, python-format
msgid "%s"
msgstr ""
-#: ipalib/plugins/baseldap.py:1484
+#: ipalib/plugins/baseldap.py:1567
#, python-format
msgid "member %s"
msgstr ""
-#: ipalib/plugins/baseldap.py:1514 ipalib/plugins/baseldap.py:1966
+#: ipalib/plugins/baseldap.py:1597 ipalib/plugins/baseldap.py:2048
#, python-format
msgid "%s to add"
msgstr ""
-#: ipalib/plugins/baseldap.py:1522 ipalib/plugins/baseldap.py:1978
-#: ipalib/plugins/privilege.py:150 ipalib/plugins/privilege.py:175
-#: ipalib/plugins/role.py:164 ipalib/plugins/role.py:187
+#: ipalib/plugins/baseldap.py:1605 ipalib/plugins/baseldap.py:2060
+#: ipalib/plugins/privilege.py:176 ipalib/plugins/privilege.py:231
+#: ipalib/plugins/role.py:211 ipalib/plugins/role.py:234
msgid "Members that could not be added"
msgstr ""
-#: ipalib/plugins/baseldap.py:1526 ipalib/plugins/baseldap.py:1982
+#: ipalib/plugins/baseldap.py:1609 ipalib/plugins/baseldap.py:2064
msgid "Number of members added"
msgstr ""
-#: ipalib/plugins/baseldap.py:1615 ipalib/plugins/baseldap.py:2071
+#: ipalib/plugins/baseldap.py:1697 ipalib/plugins/baseldap.py:2152
#, python-format
msgid "%s to remove"
msgstr ""
-#: ipalib/plugins/baseldap.py:1622 ipalib/plugins/baseldap.py:2083
+#: ipalib/plugins/baseldap.py:1704 ipalib/plugins/baseldap.py:2164
msgid "Members that could not be removed"
msgstr ""
-#: ipalib/plugins/baseldap.py:1626 ipalib/plugins/baseldap.py:2087
+#: ipalib/plugins/baseldap.py:1708 ipalib/plugins/baseldap.py:2168
msgid "Number of members removed"
msgstr ""
-#: ipalib/plugins/baseldap.py:1716
+#: ipalib/plugins/baseldap.py:1797
msgid "Primary key only"
msgstr ""
-#: ipalib/plugins/baseldap.py:1717
+#: ipalib/plugins/baseldap.py:1798
#, python-format
msgid "Results should contain primary key attribute only (\"%s\")"
msgstr ""
-#: ipalib/plugins/baseldap.py:1725
+#: ipalib/plugins/baseldap.py:1806
#, python-format
msgid ""
"Search for %(searched_object)s with these %(relationship)s %(ldap_object)s."
msgstr ""
-#: ipalib/plugins/baseldap.py:1726
+#: ipalib/plugins/baseldap.py:1807
#, python-format
msgid ""
"Search for %(searched_object)s without these %(relationship)s "
"%(ldap_object)s."
msgstr ""
-#: ipalib/plugins/baseldap.py:1735
+#: ipalib/plugins/baseldap.py:1816
msgid "Time Limit"
msgstr ""
-#: ipalib/plugins/baseldap.py:1736
+#: ipalib/plugins/baseldap.py:1817
msgid "Time limit of search in seconds"
msgstr ""
-#: ipalib/plugins/baseldap.py:1742 ipalib/plugins/cert.py:696
-#: ipalib/plugins/hbactest.py:285
+#: ipalib/plugins/baseldap.py:1823 ipalib/plugins/cert.py:721
+#: ipalib/plugins/hbactest.py:289
msgid "Size Limit"
msgstr ""
-#: ipalib/plugins/baseldap.py:1743
+#: ipalib/plugins/baseldap.py:1824
msgid "Maximum number of entries returned"
msgstr ""
-#: ipalib/plugins/batch.py:62
+#: ipalib/plugins/batch.py:66
msgid "Nested Methods to execute"
msgstr ""
-#: ipalib/plugins/cert.py:45
+#: ipalib/plugins/cert.py:47
msgid ""
"\n"
"IPA certificate operations\n"
@@ -1965,260 +2232,275 @@ msgid ""
"\n"
msgstr ""
-#: ipalib/plugins/cert.py:145
-msgid "Failure decoding Certificate Signing Request:"
-msgstr ""
-
-#: ipalib/plugins/cert.py:158 ipalib/plugins/cert.py:175
-msgid "Failure decoding Certificate Signing Request"
-msgstr ""
-
-#: ipalib/plugins/cert.py:177
+#: ipalib/plugins/cert.py:155 ipalib/plugins/cert.py:320
#, python-format
msgid "Failure decoding Certificate Signing Request: %s"
msgstr ""
-#: ipalib/plugins/cert.py:240
+#: ipalib/plugins/cert.py:219
msgid "Submit a certificate signing request."
msgstr ""
-#: ipalib/plugins/cert.py:244
+#: ipalib/plugins/cert.py:223
msgid "CSR"
msgstr ""
-#: ipalib/plugins/cert.py:253 ipalib/plugins/service.py:321
+#: ipalib/plugins/cert.py:232 ipalib/plugins/service.py:371
msgid "Principal"
msgstr ""
-#: ipalib/plugins/cert.py:254
+#: ipalib/plugins/cert.py:233
msgid "Service principal for this certificate (e.g. HTTP/test.example.com)"
msgstr ""
-#: ipalib/plugins/cert.py:261
+#: ipalib/plugins/cert.py:240
msgid "automatically add the principal if it doesn't exist"
msgstr ""
-#: ipalib/plugins/cert.py:269 ipalib/plugins/cert.py:481
-#: ipalib/plugins/host.py:306 ipalib/plugins/internal.py:319
-#: ipalib/plugins/service.py:328
+#: ipalib/plugins/cert.py:248 ipalib/plugins/cert.py:504
+#: ipalib/plugins/host.py:424 ipalib/plugins/internal.py:331
+#: ipalib/plugins/service.py:378
msgid "Certificate"
msgstr ""
-#: ipalib/plugins/cert.py:272 ipalib/plugins/cert.py:484
-#: ipalib/plugins/cert.py:638 ipalib/plugins/cert.py:639
-#: ipalib/plugins/host.py:166 ipalib/plugins/internal.py:332
-#: ipalib/plugins/service.py:102
+#: ipalib/plugins/cert.py:251 ipalib/plugins/cert.py:507
+#: ipalib/plugins/cert.py:661 ipalib/plugins/cert.py:662
+#: ipalib/plugins/host.py:169 ipalib/plugins/internal.py:344
+#: ipalib/plugins/service.py:105
msgid "Subject"
msgstr ""
-#: ipalib/plugins/cert.py:275 ipalib/plugins/cert.py:487
-#: ipalib/plugins/host.py:175 ipalib/plugins/service.py:111
+#: ipalib/plugins/cert.py:254 ipalib/plugins/cert.py:510
+#: ipalib/plugins/host.py:178 ipalib/plugins/service.py:114
msgid "Issuer"
msgstr ""
-#: ipalib/plugins/cert.py:278 ipalib/plugins/cert.py:490
-#: ipalib/plugins/host.py:178 ipalib/plugins/service.py:114
+#: ipalib/plugins/cert.py:257 ipalib/plugins/cert.py:513
+#: ipalib/plugins/host.py:181 ipalib/plugins/service.py:117
msgid "Not Before"
msgstr ""
-#: ipalib/plugins/cert.py:281 ipalib/plugins/cert.py:493
-#: ipalib/plugins/host.py:181 ipalib/plugins/service.py:117
+#: ipalib/plugins/cert.py:260 ipalib/plugins/cert.py:516
+#: ipalib/plugins/host.py:184 ipalib/plugins/service.py:120
msgid "Not After"
msgstr ""
-#: ipalib/plugins/cert.py:284 ipalib/plugins/cert.py:496
-#: ipalib/plugins/host.py:184 ipalib/plugins/service.py:120
+#: ipalib/plugins/cert.py:263 ipalib/plugins/cert.py:519
+#: ipalib/plugins/host.py:187 ipalib/plugins/service.py:123
msgid "Fingerprint (MD5)"
msgstr ""
-#: ipalib/plugins/cert.py:287 ipalib/plugins/cert.py:499
-#: ipalib/plugins/host.py:187 ipalib/plugins/service.py:123
+#: ipalib/plugins/cert.py:266 ipalib/plugins/cert.py:522
+#: ipalib/plugins/host.py:190 ipalib/plugins/service.py:126
msgid "Fingerprint (SHA1)"
msgstr ""
-#: ipalib/plugins/cert.py:290 ipalib/plugins/cert.py:469
-#: ipalib/plugins/cert.py:710
+#: ipalib/plugins/cert.py:269 ipalib/plugins/cert.py:491
+#: ipalib/plugins/cert.py:735
msgid "Serial number"
msgstr ""
-#: ipalib/plugins/cert.py:293 ipalib/plugins/cert.py:505
-#: ipalib/plugins/cert.py:707
+#: ipalib/plugins/cert.py:272 ipalib/plugins/cert.py:528
+#: ipalib/plugins/cert.py:732
msgid "Serial number (hex)"
msgstr ""
-#: ipalib/plugins/cert.py:300 ipalib/plugins/misc.py:57
+#: ipalib/plugins/cert.py:279 ipalib/plugins/misc.py:61
msgid "Dictionary mapping variable name to value"
msgstr ""
-#: ipalib/plugins/cert.py:333
+#: ipalib/plugins/cert.py:332
msgid "No hostname was found in subject of request."
msgstr ""
-#: ipalib/plugins/cert.py:338
+#: ipalib/plugins/cert.py:337
#, python-format
msgid ""
"hostname in subject of request '%(subject_host)s' does not match principal "
"hostname '%(hostname)s'"
msgstr ""
-#: ipalib/plugins/cert.py:356
+#: ipalib/plugins/cert.py:344
+#, python-format
+msgid "extension %s is forbidden"
+msgstr ""
+
+#: ipalib/plugins/cert.py:352
+#, python-format
+msgid "subject alt name type %s is forbidden"
+msgstr ""
+
+#: ipalib/plugins/cert.py:366
msgid "The service principal for this request doesn't exist."
msgstr ""
-#: ipalib/plugins/cert.py:362
+#: ipalib/plugins/cert.py:371
msgid "You need to be a member of the serviceadmin role to add services"
msgstr ""
-#: ipalib/plugins/cert.py:367
+#: ipalib/plugins/cert.py:378
#, python-format
msgid ""
"Insufficient 'write' privilege to the 'userCertificate' attribute of entry "
"'%s'."
msgstr ""
-#: ipalib/plugins/cert.py:383
+#: ipalib/plugins/cert.py:396
#, python-format
-msgid "no host record for subject alt name %s in certificate request"
+msgid ""
+"The service principal for subject alt name %s in certificate request does "
+"not exist"
msgstr ""
-#: ipalib/plugins/cert.py:389
+#: ipalib/plugins/cert.py:402
#, python-format
msgid ""
"Insufficient privilege to create a certificate with subject alt name '%s'."
msgstr ""
-#: ipalib/plugins/cert.py:442
+#: ipalib/plugins/cert.py:408
+#, python-format
+msgid ""
+"Principal '%s' in subject alt name does not match requested service principal"
+msgstr ""
+
+#: ipalib/plugins/cert.py:412
+#, python-format
+msgid "Subject alt name type %s is forbidden"
+msgstr ""
+
+#: ipalib/plugins/cert.py:465
msgid "Check the status of a certificate signing request."
msgstr ""
-#: ipalib/plugins/cert.py:446
+#: ipalib/plugins/cert.py:469
msgid "Request id"
msgstr ""
-#: ipalib/plugins/cert.py:452
+#: ipalib/plugins/cert.py:475
msgid "Request status"
msgstr ""
-#: ipalib/plugins/cert.py:470
+#: ipalib/plugins/cert.py:492
msgid "Serial number in decimal or if prefixed with 0x in hexadecimal"
msgstr ""
-#: ipalib/plugins/cert.py:475
+#: ipalib/plugins/cert.py:498
msgid "Retrieve an existing certificate."
msgstr ""
-#: ipalib/plugins/cert.py:502 ipalib/plugins/host.py:190
-#: ipalib/plugins/internal.py:329 ipalib/plugins/internal.py:358
-#: ipalib/plugins/service.py:126
+#: ipalib/plugins/cert.py:525 ipalib/plugins/host.py:193
+#: ipalib/plugins/internal.py:341 ipalib/plugins/internal.py:371
+#: ipalib/plugins/service.py:129
msgid "Revocation reason"
msgstr ""
-#: ipalib/plugins/cert.py:511
+#: ipalib/plugins/cert.py:534
msgid "Output filename"
msgstr ""
-#: ipalib/plugins/cert.py:512
+#: ipalib/plugins/cert.py:535
msgid "File to store the certificate in."
msgstr ""
-#: ipalib/plugins/cert.py:563
+#: ipalib/plugins/cert.py:586
msgid "Revoke a certificate."
msgstr ""
-#: ipalib/plugins/cert.py:569
+#: ipalib/plugins/cert.py:592
msgid "Revoked"
msgstr ""
-#: ipalib/plugins/cert.py:577 ipalib/plugins/cert.py:643
+#: ipalib/plugins/cert.py:600 ipalib/plugins/cert.py:666
msgid "Reason"
msgstr ""
-#: ipalib/plugins/cert.py:578 ipalib/plugins/cert.py:644
+#: ipalib/plugins/cert.py:601 ipalib/plugins/cert.py:667
msgid "Reason for revoking the certificate (0-10)"
msgstr ""
-#: ipalib/plugins/cert.py:600
+#: ipalib/plugins/cert.py:623
msgid "7 is not a valid revocation reason"
msgstr ""
-#: ipalib/plugins/cert.py:610
+#: ipalib/plugins/cert.py:633
msgid "Take a revoked certificate off hold."
msgstr ""
-#: ipalib/plugins/cert.py:616
+#: ipalib/plugins/cert.py:639
msgid "Unrevoked"
msgstr ""
-#: ipalib/plugins/cert.py:619 ipalib/plugins/internal.py:249
+#: ipalib/plugins/cert.py:642 ipalib/plugins/internal.py:261
msgid "Error"
msgstr ""
-#: ipalib/plugins/cert.py:634
+#: ipalib/plugins/cert.py:657
msgid "Search for existing certificates."
msgstr ""
-#: ipalib/plugins/cert.py:650
+#: ipalib/plugins/cert.py:673
msgid "minimum serial number"
msgstr ""
-#: ipalib/plugins/cert.py:655
+#: ipalib/plugins/cert.py:679
msgid "maximum serial number"
msgstr ""
-#: ipalib/plugins/cert.py:660
+#: ipalib/plugins/cert.py:685
msgid "match the common name exactly"
msgstr ""
-#: ipalib/plugins/cert.py:664
+#: ipalib/plugins/cert.py:689
msgid "Valid not after from this date (YYYY-mm-dd)"
msgstr ""
-#: ipalib/plugins/cert.py:668
+#: ipalib/plugins/cert.py:693
msgid "Valid not after to this date (YYYY-mm-dd)"
msgstr ""
-#: ipalib/plugins/cert.py:672
+#: ipalib/plugins/cert.py:697
msgid "Valid not before from this date (YYYY-mm-dd)"
msgstr ""
-#: ipalib/plugins/cert.py:676
+#: ipalib/plugins/cert.py:701
msgid "Valid not before to this date (YYYY-mm-dd)"
msgstr ""
-#: ipalib/plugins/cert.py:680
+#: ipalib/plugins/cert.py:705
msgid "Issued on from this date (YYYY-mm-dd)"
msgstr ""
-#: ipalib/plugins/cert.py:684
+#: ipalib/plugins/cert.py:709
msgid "Issued on to this date (YYYY-mm-dd)"
msgstr ""
-#: ipalib/plugins/cert.py:688
+#: ipalib/plugins/cert.py:713
msgid "Revoked on from this date (YYYY-mm-dd)"
msgstr ""
-#: ipalib/plugins/cert.py:692
+#: ipalib/plugins/cert.py:717
msgid "Revoked on to this date (YYYY-mm-dd)"
msgstr ""
-#: ipalib/plugins/cert.py:697
+#: ipalib/plugins/cert.py:722
msgid "Maximum number of certs returned"
msgstr ""
-#: ipalib/plugins/cert.py:713 ipalib/plugins/internal.py:366
-#: ipalib/plugins/internal.py:472 ipalib/plugins/internal.py:552
-#: ipalib/plugins/internal.py:659
+#: ipalib/plugins/cert.py:738 ipalib/plugins/internal.py:379
+#: ipalib/plugins/internal.py:488 ipalib/plugins/internal.py:575
+#: ipalib/plugins/internal.py:687
msgid "Status"
msgstr ""
-#: ipalib/plugins/cert.py:718
+#: ipalib/plugins/cert.py:743
#, python-format
msgid "%(count)d certificate matched"
msgid_plural "%(count)d certificates matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/config.py:32
+#: ipalib/plugins/config.py:33
msgid ""
"\n"
"Server configuration\n"
@@ -2268,187 +2550,195 @@ msgid ""
"s0:c0.c1023$staff_u:s0-s0:c0.c1023$unconfined_u:s0-s0:c0.c1023'\n"
msgstr ""
-#: ipalib/plugins/config.py:80
+#: ipalib/plugins/config.py:83
msgid "searchtimelimit must be -1 or > 1."
msgstr ""
-#: ipalib/plugins/config.py:87
+#: ipalib/plugins/config.py:91
msgid "configuration options"
msgstr ""
-#: ipalib/plugins/config.py:97 ipalib/plugins/config.py:98
+#: ipalib/plugins/config.py:124 ipalib/plugins/config.py:125
msgid "Configuration"
msgstr ""
-#: ipalib/plugins/config.py:103
+#: ipalib/plugins/config.py:130
msgid "Maximum username length"
msgstr ""
-#: ipalib/plugins/config.py:108
+#: ipalib/plugins/config.py:135
msgid "Home directory base"
msgstr ""
-#: ipalib/plugins/config.py:109
+#: ipalib/plugins/config.py:136
msgid "Default location of home directories"
msgstr ""
-#: ipalib/plugins/config.py:113
+#: ipalib/plugins/config.py:140
msgid "Default shell"
msgstr ""
-#: ipalib/plugins/config.py:114
+#: ipalib/plugins/config.py:141
msgid "Default shell for new users"
msgstr ""
-#: ipalib/plugins/config.py:118
+#: ipalib/plugins/config.py:145
msgid "Default users group"
msgstr ""
-#: ipalib/plugins/config.py:119
+#: ipalib/plugins/config.py:146
msgid "Default group for new users"
msgstr ""
-#: ipalib/plugins/config.py:123 ipalib/plugins/config.py:124
+#: ipalib/plugins/config.py:150 ipalib/plugins/config.py:151
msgid "Default e-mail domain"
msgstr ""
-#: ipalib/plugins/config.py:128
+#: ipalib/plugins/config.py:155
msgid "Search time limit"
msgstr ""
-#: ipalib/plugins/config.py:129
+#: ipalib/plugins/config.py:156
msgid ""
"Maximum amount of time (seconds) for a search (> 0, or -1 for unlimited)"
msgstr ""
-#: ipalib/plugins/config.py:134
+#: ipalib/plugins/config.py:161
msgid "Search size limit"
msgstr ""
-#: ipalib/plugins/config.py:135
+#: ipalib/plugins/config.py:162
msgid "Maximum number of records to search (-1 is unlimited)"
msgstr ""
-#: ipalib/plugins/config.py:140
+#: ipalib/plugins/config.py:167
msgid "User search fields"
msgstr ""
-#: ipalib/plugins/config.py:141
+#: ipalib/plugins/config.py:168
msgid "A comma-separated list of fields to search in when searching for users"
msgstr ""
-#: ipalib/plugins/config.py:146
+#: ipalib/plugins/config.py:173
msgid "A comma-separated list of fields to search in when searching for groups"
msgstr ""
-#: ipalib/plugins/config.py:150 ipalib/plugins/config.py:151
+#: ipalib/plugins/config.py:177 ipalib/plugins/config.py:178
msgid "Enable migration mode"
msgstr ""
-#: ipalib/plugins/config.py:155
+#: ipalib/plugins/config.py:182
msgid "Certificate Subject base"
msgstr ""
-#: ipalib/plugins/config.py:156
+#: ipalib/plugins/config.py:183
msgid "Base for certificate subjects (OU=Test,O=Example)"
msgstr ""
-#: ipalib/plugins/config.py:161
+#: ipalib/plugins/config.py:188
msgid "Default group objectclasses"
msgstr ""
-#: ipalib/plugins/config.py:162
+#: ipalib/plugins/config.py:189
msgid "Default group objectclasses (comma-separated list)"
msgstr ""
-#: ipalib/plugins/config.py:167
+#: ipalib/plugins/config.py:194
msgid "Default user objectclasses"
msgstr ""
-#: ipalib/plugins/config.py:168
+#: ipalib/plugins/config.py:195
msgid "Default user objectclasses (comma-separated list)"
msgstr ""
-#: ipalib/plugins/config.py:173
+#: ipalib/plugins/config.py:200
msgid "Password Expiration Notification (days)"
msgstr ""
-#: ipalib/plugins/config.py:174
+#: ipalib/plugins/config.py:201
msgid "Number of days's notice of impending password expiration"
msgstr ""
-#: ipalib/plugins/config.py:179
+#: ipalib/plugins/config.py:206
msgid "Password plugin features"
msgstr ""
-#: ipalib/plugins/config.py:180
+#: ipalib/plugins/config.py:207
msgid "Extra hashes to generate in password plug-in"
msgstr ""
-#: ipalib/plugins/config.py:186
+#: ipalib/plugins/config.py:213
msgid "SELinux user map order"
msgstr ""
-#: ipalib/plugins/config.py:187
+#: ipalib/plugins/config.py:214
msgid "Order in increasing priority of SELinux users, delimited by $"
msgstr ""
-#: ipalib/plugins/config.py:190
+#: ipalib/plugins/config.py:217
msgid "Default SELinux user"
msgstr ""
-#: ipalib/plugins/config.py:191
+#: ipalib/plugins/config.py:218
msgid "Default SELinux user when no match is found in SELinux map rule"
msgstr ""
-#: ipalib/plugins/config.py:195
+#: ipalib/plugins/config.py:222
msgid "Default PAC types"
msgstr ""
-#: ipalib/plugins/config.py:196
+#: ipalib/plugins/config.py:223
msgid "Default types of PAC supported for services"
msgstr ""
-#: ipalib/plugins/config.py:209
+#: ipalib/plugins/config.py:229
+msgid "Default user authentication types"
+msgstr ""
+
+#: ipalib/plugins/config.py:230
+msgid "Default types of supported user authentication"
+msgstr ""
+
+#: ipalib/plugins/config.py:243
msgid "Modify configuration options."
msgstr ""
-#: ipalib/plugins/config.py:218
+#: ipalib/plugins/config.py:252
msgid "The group doesn't exist"
msgstr ""
-#: ipalib/plugins/config.py:233
+#: ipalib/plugins/config.py:267
#, python-format
msgid "attribute \"%s\" not allowed"
msgstr ""
-#: ipalib/plugins/config.py:241
+#: ipalib/plugins/config.py:275
msgid "May not be empty"
msgstr ""
-#: ipalib/plugins/config.py:259
+#: ipalib/plugins/config.py:293
#, python-format
msgid "%(obj)s default attribute %(attr)s would not be allowed!"
msgstr ""
-#: ipalib/plugins/config.py:291
+#: ipalib/plugins/config.py:325
msgid "A list of SELinux users delimited by $ expected"
msgstr ""
-#: ipalib/plugins/config.py:295
+#: ipalib/plugins/config.py:329
#, python-format
msgid "SELinux user '%(user)s' is not valid: %(error)s"
msgstr ""
-#: ipalib/plugins/config.py:307
+#: ipalib/plugins/config.py:341
msgid "SELinux user map default user not in order list"
msgstr ""
-#: ipalib/plugins/config.py:315
+#: ipalib/plugins/config.py:349
msgid "Show the current configuration."
msgstr ""
-#: ipalib/plugins/delegation.py:29
+#: ipalib/plugins/delegation.py:30
msgid ""
"\n"
"Group to Group Delegation\n"
@@ -2478,85 +2768,85 @@ msgid ""
" ipa delegation-del \"managers edit employees' street\"\n"
msgstr ""
-#: ipalib/plugins/delegation.py:69
+#: ipalib/plugins/delegation.py:73
msgid "delegation"
msgstr ""
-#: ipalib/plugins/delegation.py:70
+#: ipalib/plugins/delegation.py:74
msgid "delegations"
msgstr ""
-#: ipalib/plugins/delegation.py:71
+#: ipalib/plugins/delegation.py:75
msgid "Delegations"
msgstr ""
-#: ipalib/plugins/delegation.py:72
+#: ipalib/plugins/delegation.py:76
msgid "Delegation"
msgstr ""
-#: ipalib/plugins/delegation.py:77 ipalib/plugins/delegation.py:78
+#: ipalib/plugins/delegation.py:81 ipalib/plugins/delegation.py:82
msgid "Delegation name"
msgstr ""
-#: ipalib/plugins/delegation.py:84 ipalib/plugins/selfservice.py:88
+#: ipalib/plugins/delegation.py:88 ipalib/plugins/selfservice.py:92
msgid "Permissions to grant (read, write). Default is write."
msgstr ""
-#: ipalib/plugins/delegation.py:90
+#: ipalib/plugins/delegation.py:94
msgid "Attributes to which the delegation applies"
msgstr ""
-#: ipalib/plugins/delegation.py:96
+#: ipalib/plugins/delegation.py:100
msgid "Member user group"
msgstr ""
-#: ipalib/plugins/delegation.py:97
+#: ipalib/plugins/delegation.py:101
msgid "User group to apply delegation to"
msgstr ""
-#: ipalib/plugins/delegation.py:130
+#: ipalib/plugins/delegation.py:134
msgid "Add a new delegation."
msgstr ""
-#: ipalib/plugins/delegation.py:132
+#: ipalib/plugins/delegation.py:136
#, python-format
msgid "Added delegation \"%(value)s\""
msgstr ""
-#: ipalib/plugins/delegation.py:151
+#: ipalib/plugins/delegation.py:155
msgid "Delete a delegation."
msgstr ""
-#: ipalib/plugins/delegation.py:154
+#: ipalib/plugins/delegation.py:158
#, python-format
msgid "Deleted delegation \"%(value)s\""
msgstr ""
-#: ipalib/plugins/delegation.py:169
+#: ipalib/plugins/delegation.py:173
msgid "Modify a delegation."
msgstr ""
-#: ipalib/plugins/delegation.py:171
+#: ipalib/plugins/delegation.py:175
#, python-format
msgid "Modified delegation \"%(value)s\""
msgstr ""
-#: ipalib/plugins/delegation.py:188
+#: ipalib/plugins/delegation.py:192
msgid "Search for delegations."
msgstr ""
-#: ipalib/plugins/delegation.py:191
+#: ipalib/plugins/delegation.py:195
#, python-format
msgid "%(count)d delegation matched"
msgid_plural "%(count)d delegations matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/delegation.py:214
+#: ipalib/plugins/delegation.py:218
msgid "Display information about a delegation."
msgstr ""
-#: ipalib/plugins/dns.py:41
+#: ipalib/plugins/dns.py:46
msgid ""
"\n"
"Domain Name System (DNS)\n"
@@ -2767,243 +3057,233 @@ msgid ""
" ipa dnsconfig-mod --forwarder=10.0.0.1\n"
msgstr ""
-#: ipalib/plugins/dns.py:293
+#: ipalib/plugins/dns.py:267
+msgid "Permission value"
+msgstr ""
+
+#: ipalib/plugins/dns.py:312
#, python-format
msgid "invalid IP address version (is %(value)d, must be %(required_value)d)!"
msgstr ""
-#: ipalib/plugins/dns.py:296
+#: ipalib/plugins/dns.py:315
msgid "invalid IP address format"
msgstr ""
-#: ipalib/plugins/dns.py:309
+#: ipalib/plugins/dns.py:328
msgid "invalid IP network format"
msgstr ""
-#: ipalib/plugins/dns.py:318
+#: ipalib/plugins/dns.py:337
msgid "each ACL element must be terminated with a semicolon"
msgstr ""
-#: ipalib/plugins/dns.py:335
+#: ipalib/plugins/dns.py:354
msgid "invalid address format"
msgstr ""
-#: ipalib/plugins/dns.py:379 ipalib/plugins/dns.py:422
+#: ipalib/plugins/dns.py:404
#, python-format
-msgid "invalid domain-name: %s"
+msgid "%(port)s is not a valid port"
msgstr ""
-#: ipalib/plugins/dns.py:408
-#, python-format
-msgid "%(port)s is not a valid port"
+#: ipalib/plugins/dns.py:411
+msgid "invalid domain-name: not fully qualified"
msgstr ""
-#: ipalib/plugins/dns.py:484
+#: ipalib/plugins/dns.py:466
#, python-format
msgid "DNS reverse zone for IP address %(addr)s not found"
msgstr ""
-#: ipalib/plugins/dns.py:496
+#: ipalib/plugins/dns.py:481
#, python-format
msgid "DNS zone %(zone)s not found"
msgstr ""
-#: ipalib/plugins/dns.py:510
+#: ipalib/plugins/dns.py:495
#, python-format
msgid "IP address %(ip)s is already assigned in domain %(domain)s."
msgstr ""
-#: ipalib/plugins/dns.py:523
+#: ipalib/plugins/dns.py:508
#, python-format
msgid ""
"Reverse record for IP address %(ip)s already exists in reverse zone %(zone)s."
msgstr ""
-#: ipalib/plugins/dns.py:559
+#: ipalib/plugins/dns.py:585
#, python-format
msgid "%s record"
msgstr ""
-#: ipalib/plugins/dns.py:561
+#: ipalib/plugins/dns.py:587
#, python-format
msgid "Raw %s records"
msgstr ""
-#: ipalib/plugins/dns.py:562
+#: ipalib/plugins/dns.py:588
#, python-format
msgid "%s Record"
msgstr ""
-#: ipalib/plugins/dns.py:563
+#: ipalib/plugins/dns.py:589
#, python-format
msgid "(see RFC %s for details)"
msgstr ""
-#: ipalib/plugins/dns.py:619
+#: ipalib/plugins/dns.py:654
#, python-format
msgid "'%s' is a required part of DNS record"
msgstr ""
-#: ipalib/plugins/dns.py:626
+#: ipalib/plugins/dns.py:661
msgid "Invalid number of parts!"
msgstr ""
-#: ipalib/plugins/dns.py:681
+#: ipalib/plugins/dns.py:716
#, python-format
msgid "DNS RR type \"%s\" is not supported by bind-dyndb-ldap plugin"
msgstr ""
-#: ipalib/plugins/dns.py:697
+#: ipalib/plugins/dns.py:732
#, python-format
msgid "format must be specified as \"%(format)s\" %(rfcs)s"
msgstr ""
-#: ipalib/plugins/dns.py:821
+#: ipalib/plugins/dns.py:856
msgid "Create reverse"
msgstr ""
-#: ipalib/plugins/dns.py:822
+#: ipalib/plugins/dns.py:857
msgid "Create reverse record for this IP Address"
msgstr ""
-#: ipalib/plugins/dns.py:857
+#: ipalib/plugins/dns.py:892
#, python-format
msgid "Cannot create reverse record for \"%(value)s\": %(exc)s"
msgstr ""
-#: ipalib/plugins/dns.py:866 ipalib/plugins/dns.py:889
-#: ipalib/plugins/host.py:406
+#: ipalib/plugins/dns.py:901 ipalib/plugins/dns.py:924
+#: ipalib/plugins/host.py:525
msgid "IP Address"
msgstr ""
-#: ipalib/plugins/dns.py:875 ipalib/plugins/dns.py:1486
+#: ipalib/plugins/dns.py:910 ipalib/plugins/dns.py:1453
msgid "Record data"
msgstr ""
-#: ipalib/plugins/dns.py:898
+#: ipalib/plugins/dns.py:933
msgid "Subtype"
msgstr ""
-#: ipalib/plugins/dns.py:904 ipalib/plugins/dns.py:943
-#: ipalib/plugins/dns.py:1196 ipalib/plugins/dns.py:1293
-#: ipalib/plugins/dns.py:2930
+#: ipalib/plugins/dns.py:938 ipalib/plugins/dns.py:976
+#: ipalib/plugins/dns.py:1215 ipalib/plugins/dns.py:1306
+#: ipalib/plugins/dns.py:3564
msgid "Hostname"
msgstr ""
-#: ipalib/plugins/dns.py:918
+#: ipalib/plugins/dns.py:952
msgid "Certificate Type"
msgstr ""
-#: ipalib/plugins/dns.py:923 ipalib/plugins/dns.py:978
-#: ipalib/plugins/dns.py:1376
+#: ipalib/plugins/dns.py:957 ipalib/plugins/dns.py:1005
msgid "Key Tag"
msgstr ""
-#: ipalib/plugins/dns.py:928 ipalib/plugins/dns.py:983
-#: ipalib/plugins/dns.py:1017 ipalib/plugins/dns.py:1354
-#: ipalib/plugins/dns.py:1402
+#: ipalib/plugins/dns.py:962 ipalib/plugins/dns.py:1010
+#: ipalib/plugins/dns.py:1234 ipalib/plugins/dns.py:1369
+#: ipalib/plugins/otptoken.py:198
msgid "Algorithm"
msgstr ""
-#: ipalib/plugins/dns.py:933
+#: ipalib/plugins/dns.py:967
msgid "Certificate/CRL"
msgstr ""
-#: ipalib/plugins/dns.py:944
+#: ipalib/plugins/dns.py:977
msgid "A hostname which this alias hostname points to"
msgstr ""
-#: ipalib/plugins/dns.py:964 ipalib/plugins/dns.py:1330
-#: ipalib/plugins/internal.py:502
+#: ipalib/plugins/dns.py:991 ipalib/plugins/dns.py:1336
+#: ipalib/plugins/internal.py:522
msgid "Target"
msgstr ""
-#: ipalib/plugins/dns.py:988
+#: ipalib/plugins/dns.py:1015
msgid "Digest Type"
msgstr ""
-#: ipalib/plugins/dns.py:993
+#: ipalib/plugins/dns.py:1020
msgid "Digest"
msgstr ""
-#: ipalib/plugins/dns.py:1007 ipalib/plugins/dns.py:1272
-msgid "Flags"
-msgstr ""
-
-#: ipalib/plugins/dns.py:1012
-msgid "Protocol"
-msgstr ""
-
-#: ipalib/plugins/dns.py:1022
-msgid "Public Key"
-msgstr ""
-
-#: ipalib/plugins/dns.py:1036 ipalib/plugins/dns.py:1177
-#: ipalib/plugins/dns.py:1266
+#: ipalib/plugins/dns.py:1053 ipalib/plugins/dns.py:1198
+#: ipalib/plugins/dns.py:1280
msgid "Preference"
msgstr ""
-#: ipalib/plugins/dns.py:1037 ipalib/plugins/dns.py:1178
+#: ipalib/plugins/dns.py:1054 ipalib/plugins/dns.py:1199
msgid "Preference given to this exchanger. Lower values are more preferred"
msgstr ""
-#: ipalib/plugins/dns.py:1043 ipalib/plugins/dns.py:1184
+#: ipalib/plugins/dns.py:1059 ipalib/plugins/dns.py:1204
msgid "Exchanger"
msgstr ""
-#: ipalib/plugins/dns.py:1044
+#: ipalib/plugins/dns.py:1060
msgid "A host willing to act as a key exchanger"
msgstr ""
-#: ipalib/plugins/dns.py:1053
+#: ipalib/plugins/dns.py:1069
msgid "Degrees Latitude"
msgstr ""
-#: ipalib/plugins/dns.py:1058
+#: ipalib/plugins/dns.py:1074
msgid "Minutes Latitude"
msgstr ""
-#: ipalib/plugins/dns.py:1063
+#: ipalib/plugins/dns.py:1079
msgid "Seconds Latitude"
msgstr ""
-#: ipalib/plugins/dns.py:1069
+#: ipalib/plugins/dns.py:1085
msgid "Direction Latitude"
msgstr ""
-#: ipalib/plugins/dns.py:1073
+#: ipalib/plugins/dns.py:1089
msgid "Degrees Longitude"
msgstr ""
-#: ipalib/plugins/dns.py:1078
+#: ipalib/plugins/dns.py:1094
msgid "Minutes Longitude"
msgstr ""
-#: ipalib/plugins/dns.py:1083
+#: ipalib/plugins/dns.py:1099
msgid "Seconds Longitude"
msgstr ""
-#: ipalib/plugins/dns.py:1089
+#: ipalib/plugins/dns.py:1105
msgid "Direction Longitude"
msgstr ""
-#: ipalib/plugins/dns.py:1093
+#: ipalib/plugins/dns.py:1109
msgid "Altitude"
msgstr ""
-#: ipalib/plugins/dns.py:1099
+#: ipalib/plugins/dns.py:1115
msgid "Size"
msgstr ""
-#: ipalib/plugins/dns.py:1105
+#: ipalib/plugins/dns.py:1121
msgid "Horizontal Precision"
msgstr ""
-#: ipalib/plugins/dns.py:1111
+#: ipalib/plugins/dns.py:1127
msgid "Vertical Precision"
msgstr ""
-#: ipalib/plugins/dns.py:1118
+#: ipalib/plugins/dns.py:1134
msgid ""
"format must be specified as\n"
" \"d1 [m1 [s1]] {\"N\"|\"S\"} d2 [m2 [s2]] {\"E\"|\"W\"} alt[\"m\"] "
@@ -3018,547 +3298,556 @@ msgid ""
" See RFC 1876 for details"
msgstr ""
-#: ipalib/plugins/dns.py:1167
+#: ipalib/plugins/dns.py:1188
#, python-format
msgid "'%(required)s' must not be empty when '%(name)s' is set"
msgstr ""
-#: ipalib/plugins/dns.py:1185
+#: ipalib/plugins/dns.py:1205
msgid "A host willing to act as a mail exchanger"
msgstr ""
-#: ipalib/plugins/dns.py:1203
-msgid ""
-"format must be specified as \"NEXT TYPE1 [TYPE2 [TYPE3 [...]]]\" (see RFC "
-"4034 for details)"
+#: ipalib/plugins/dns.py:1239 ipalib/plugins/dns.py:1286
+msgid "Flags"
msgstr ""
-#: ipalib/plugins/dns.py:1210
-msgid "Next Domain Name"
+#: ipalib/plugins/dns.py:1245
+msgid "Iterations"
msgstr ""
-#: ipalib/plugins/dns.py:1213
-msgid "Type Map"
+#: ipalib/plugins/dns.py:1250
+msgid "Salt"
+msgstr ""
+
+#: ipalib/plugins/dns.py:1251
+msgid ""
+"A hexadecimal salt value. Requires hexadecimal digits or hyphen (\"-\") if "
+"no salt is required"
msgstr ""
-#: ipalib/plugins/dns.py:1253
+#: ipalib/plugins/dns.py:1267
msgid "flags must be one of \"S\", \"A\", \"U\", or \"P\""
msgstr ""
-#: ipalib/plugins/dns.py:1261
+#: ipalib/plugins/dns.py:1275
msgid "Order"
msgstr ""
-#: ipalib/plugins/dns.py:1276 ipalib/plugins/hbactest.py:265
-#: ipalib/plugins/internal.py:551 ipalib/plugins/service.py:316
+#: ipalib/plugins/dns.py:1290 ipalib/plugins/hbactest.py:269
+#: ipalib/plugins/internal.py:574 ipalib/plugins/service.py:366
msgid "Service"
msgstr ""
-#: ipalib/plugins/dns.py:1279
+#: ipalib/plugins/dns.py:1293
msgid "Regular Expression"
msgstr ""
-#: ipalib/plugins/dns.py:1282
+#: ipalib/plugins/dns.py:1296
msgid "Replacement"
msgstr ""
-#: ipalib/plugins/dns.py:1294
+#: ipalib/plugins/dns.py:1307
msgid "The hostname this reverse record points to"
msgstr ""
-#: ipalib/plugins/dns.py:1314 ipalib/plugins/pwpolicy.py:267
+#: ipalib/plugins/dns.py:1321 ipalib/plugins/pwpolicy.py:346
msgid "Priority"
msgstr ""
-#: ipalib/plugins/dns.py:1319
+#: ipalib/plugins/dns.py:1326
msgid "Weight"
msgstr ""
-#: ipalib/plugins/dns.py:1324
+#: ipalib/plugins/dns.py:1331
msgid "Port"
msgstr ""
-#: ipalib/plugins/dns.py:1331
+#: ipalib/plugins/dns.py:1337
msgid ""
"The domain name of the target host or '.' if the service is decidedly not "
"available at this domain"
msgstr ""
-#: ipalib/plugins/dns.py:1340
+#: ipalib/plugins/dns.py:1346
msgid "the value does not follow \"YYYYMMDDHHMMSS\" time format"
msgstr ""
-#: ipalib/plugins/dns.py:1350
-msgid "Type Covered"
+#: ipalib/plugins/dns.py:1374
+msgid "Fingerprint Type"
msgstr ""
-#: ipalib/plugins/dns.py:1359
-msgid "Labels"
+#: ipalib/plugins/dns.py:1379
+msgid "Fingerprint"
msgstr ""
-#: ipalib/plugins/dns.py:1364
-msgid "Original TTL"
+#: ipalib/plugins/dns.py:1400
+msgid "Text Data"
msgstr ""
-#: ipalib/plugins/dns.py:1369
-msgid "Signature Expiration"
+#: ipalib/plugins/dns.py:1447
+msgid "Records"
msgstr ""
-#: ipalib/plugins/dns.py:1373
-msgid "Signature Inception"
+#: ipalib/plugins/dns.py:1450
+msgid "Record type"
msgstr ""
-#: ipalib/plugins/dns.py:1381
-msgid "Signer's Name"
+#: ipalib/plugins/dns.py:1485
+#, python-format
+msgid "Nameserver '%(host)s' does not have a corresponding A/AAAA record"
msgstr ""
-#: ipalib/plugins/dns.py:1384
-msgid "Signature"
+#: ipalib/plugins/dns.py:1504
+msgid "Managedby permission"
msgstr ""
-#: ipalib/plugins/dns.py:1407
-msgid "Fingerprint Type"
+#: ipalib/plugins/dns.py:1650
+msgid "Zone name"
msgstr ""
-#: ipalib/plugins/dns.py:1412
-msgid "Fingerprint"
+#: ipalib/plugins/dns.py:1651
+msgid "Zone name (FQDN)"
msgstr ""
-#: ipalib/plugins/dns.py:1433
-msgid "Text Data"
+#: ipalib/plugins/dns.py:1656
+msgid "Reverse zone IP network"
msgstr ""
-#: ipalib/plugins/dns.py:1480
-msgid "Records"
+#: ipalib/plugins/dns.py:1657
+msgid "IP network to create reverse zone name from"
msgstr ""
-#: ipalib/plugins/dns.py:1483
-msgid "Record type"
+#: ipalib/plugins/dns.py:1662
+msgid "Active zone"
msgstr ""
-#: ipalib/plugins/dns.py:1516
-#, python-format
-msgid "Nameserver '%(host)s' does not have a corresponding A/AAAA record"
+#: ipalib/plugins/dns.py:1663
+msgid "Is zone active?"
msgstr ""
-#: ipalib/plugins/dns.py:1534
-msgid "Managedby permission"
+#: ipalib/plugins/dns.py:1670
+msgid "Zone forwarders"
msgstr ""
-#: ipalib/plugins/dns.py:1543
-msgid "DNS zone"
+#: ipalib/plugins/dns.py:1671
+msgid ""
+"Per-zone forwarders. A custom port can be specified for each forwarder using "
+"a standard format \"IP_ADDRESS port PORT\""
msgstr ""
-#: ipalib/plugins/dns.py:1544
-msgid "DNS zones"
+#: ipalib/plugins/dns.py:1677 ipalib/plugins/dns.py:3633
+msgid "Forward policy"
msgstr ""
-#: ipalib/plugins/dns.py:1553
-msgid "DNS Zones"
+#: ipalib/plugins/dns.py:1678
+msgid ""
+"Per-zone conditional forwarding policy. Set to \"none\" to disable "
+"forwarding to global forwarder for this zone. In that case, conditional zone "
+"forwarders are disregarded."
msgstr ""
-#: ipalib/plugins/dns.py:1554
-msgid "DNS Zone"
+#: ipalib/plugins/dns.py:1735
+msgid "DNS is not configured"
msgstr ""
-#: ipalib/plugins/dns.py:1560
-msgid "Zone name"
+#: ipalib/plugins/dns.py:1746
+msgid "Only one zone type is allowed per zone name"
msgstr ""
-#: ipalib/plugins/dns.py:1561
-msgid "Zone name (FQDN)"
+#: ipalib/plugins/dns.py:1777 ipalib/plugins/dns.py:2351
+msgid "Search for DNS zones (SOA records)."
msgstr ""
-#: ipalib/plugins/dns.py:1567
-msgid "Reverse zone IP network"
+#: ipalib/plugins/dns.py:1864
+#, python-format
+msgid "Added system permission \"%(value)s\""
msgstr ""
-#: ipalib/plugins/dns.py:1568
-msgid "IP network to create reverse zone name from"
+#: ipalib/plugins/dns.py:1891
+#, python-format
+msgid "permission \"%(value)s\" already exists"
+msgstr ""
+
+#: ipalib/plugins/dns.py:1919
+#, python-format
+msgid "Removed system permission \"%(value)s\""
+msgstr ""
+
+#: ipalib/plugins/dns.py:1967
+msgid "DNS zone"
+msgstr ""
+
+#: ipalib/plugins/dns.py:1968
+msgid "DNS zones"
+msgstr ""
+
+#: ipalib/plugins/dns.py:1975
+msgid "DNS Zones"
msgstr ""
-#: ipalib/plugins/dns.py:1573
+#: ipalib/plugins/dns.py:1976
+msgid "DNS Zone"
+msgstr ""
+
+#: ipalib/plugins/dns.py:1981
msgid "Authoritative nameserver"
msgstr ""
-#: ipalib/plugins/dns.py:1574
+#: ipalib/plugins/dns.py:1982
msgid "Authoritative nameserver domain name"
msgstr ""
-#: ipalib/plugins/dns.py:1580 ipalib/plugins/dns.py:1581
+#: ipalib/plugins/dns.py:1988 ipalib/plugins/dns.py:1989
msgid "Administrator e-mail address"
msgstr ""
-#: ipalib/plugins/dns.py:1587
+#: ipalib/plugins/dns.py:1996
msgid "SOA serial"
msgstr ""
-#: ipalib/plugins/dns.py:1588
+#: ipalib/plugins/dns.py:1997
msgid "SOA record serial number"
msgstr ""
-#: ipalib/plugins/dns.py:1596
+#: ipalib/plugins/dns.py:2005
msgid "SOA refresh"
msgstr ""
-#: ipalib/plugins/dns.py:1597
+#: ipalib/plugins/dns.py:2006
msgid "SOA record refresh time"
msgstr ""
-#: ipalib/plugins/dns.py:1605
+#: ipalib/plugins/dns.py:2014
msgid "SOA retry"
msgstr ""
-#: ipalib/plugins/dns.py:1606
+#: ipalib/plugins/dns.py:2015
msgid "SOA record retry time"
msgstr ""
-#: ipalib/plugins/dns.py:1614
+#: ipalib/plugins/dns.py:2023
msgid "SOA expire"
msgstr ""
-#: ipalib/plugins/dns.py:1615
+#: ipalib/plugins/dns.py:2024
msgid "SOA record expire time"
msgstr ""
-#: ipalib/plugins/dns.py:1623
+#: ipalib/plugins/dns.py:2032
msgid "SOA minimum"
msgstr ""
-#: ipalib/plugins/dns.py:1624
+#: ipalib/plugins/dns.py:2033
msgid "How long should negative responses be cached"
msgstr ""
-#: ipalib/plugins/dns.py:1632
-msgid "SOA time to live"
+#: ipalib/plugins/dns.py:2041 ipalib/plugins/dns.py:2446
+#: ipalib/plugins/dns.py:2447
+msgid "Time to live"
msgstr ""
-#: ipalib/plugins/dns.py:1633
-msgid "SOA record time to live"
+#: ipalib/plugins/dns.py:2042
+msgid "Time to live for records at zone apex"
msgstr ""
-#: ipalib/plugins/dns.py:1639
+#: ipalib/plugins/dns.py:2048
msgid "SOA class"
msgstr ""
-#: ipalib/plugins/dns.py:1640
+#: ipalib/plugins/dns.py:2049
msgid "SOA record class"
msgstr ""
-#: ipalib/plugins/dns.py:1645 ipalib/plugins/dns.py:1646
+#: ipalib/plugins/dns.py:2054 ipalib/plugins/dns.py:2055
msgid "BIND update policy"
msgstr ""
-#: ipalib/plugins/dns.py:1652
-msgid "Active zone"
-msgstr ""
-
-#: ipalib/plugins/dns.py:1653
-msgid "Is zone active?"
-msgstr ""
-
-#: ipalib/plugins/dns.py:1659
+#: ipalib/plugins/dns.py:2061
msgid "Dynamic update"
msgstr ""
-#: ipalib/plugins/dns.py:1660
+#: ipalib/plugins/dns.py:2062
msgid "Allow dynamic updates."
msgstr ""
-#: ipalib/plugins/dns.py:1669
+#: ipalib/plugins/dns.py:2071
msgid "Allow query"
msgstr ""
-#: ipalib/plugins/dns.py:1670
+#: ipalib/plugins/dns.py:2072
msgid ""
"Semicolon separated list of IP addresses or networks which are allowed to "
"issue queries"
msgstr ""
-#: ipalib/plugins/dns.py:1678
+#: ipalib/plugins/dns.py:2080
msgid "Allow transfer"
msgstr ""
-#: ipalib/plugins/dns.py:1679
+#: ipalib/plugins/dns.py:2081
msgid ""
"Semicolon separated list of IP addresses or networks which are allowed to "
"transfer the zone"
msgstr ""
-#: ipalib/plugins/dns.py:1686
-msgid "Zone forwarders"
-msgstr ""
-
-#: ipalib/plugins/dns.py:1687
-msgid ""
-"Per-zone forwarders. A custom port can be specified for each forwarder using "
-"a standard format \"IP_ADDRESS port PORT\""
-msgstr ""
-
-#: ipalib/plugins/dns.py:1693 ipalib/plugins/dns.py:2999
-msgid "Forward policy"
+#: ipalib/plugins/dns.py:2087 ipalib/plugins/dns.py:3640
+msgid "Allow PTR sync"
msgstr ""
-#: ipalib/plugins/dns.py:1694
+#: ipalib/plugins/dns.py:2088
msgid ""
-"Per-zone conditional forwarding policy. Set to \"none\" to disable "
-"forwarding to global forwarder for this zone. In that case, conditional zone "
-"forwarders are disregarded."
+"Allow synchronization of forward (A, AAAA) and reverse (PTR) records in the "
+"zone"
msgstr ""
-#: ipalib/plugins/dns.py:1701 ipalib/plugins/dns.py:3006
-msgid "Allow PTR sync"
+#: ipalib/plugins/dns.py:2093
+msgid "Allow in-line DNSSEC signing"
msgstr ""
-#: ipalib/plugins/dns.py:1702
-msgid ""
-"Allow synchronization of forward (A, AAAA) and reverse (PTR) records in the "
-"zone"
+#: ipalib/plugins/dns.py:2094
+msgid "Allow inline DNSSEC signing of records in the zone"
msgstr ""
-#: ipalib/plugins/dns.py:1764
+#: ipalib/plugins/dns.py:2182
msgid "Create new DNS zone (SOA record)."
msgstr ""
-#: ipalib/plugins/dns.py:1769 ipalib/plugins/dns.py:1904
-#: ipalib/plugins/dns.py:2365 ipalib/plugins/host.py:398
-#: ipalib/plugins/permission.py:298 ipalib/plugins/realmdomains.py:97
-#: ipalib/plugins/service.py:369
+#: ipalib/plugins/dns.py:2186 ipalib/plugins/dns.py:2329
+#: ipalib/plugins/dns.py:2953 ipalib/plugins/host.py:517
+#: ipalib/plugins/permission.py:991 ipalib/plugins/realmdomains.py:116
+#: ipalib/plugins/service.py:419
msgid "Force"
msgstr ""
-#: ipalib/plugins/dns.py:1770
+#: ipalib/plugins/dns.py:2187
msgid "Force DNS zone creation even if nameserver is not resolvable."
msgstr ""
-#: ipalib/plugins/dns.py:1773
+#: ipalib/plugins/dns.py:2190
msgid "Add forward record for nameserver located in the created zone"
msgstr ""
-#: ipalib/plugins/dns.py:1774 ipalib/plugins/dns.py:1795
+#: ipalib/plugins/dns.py:2191 ipalib/plugins/dns.py:2220
msgid "Nameserver IP address"
msgstr ""
-#: ipalib/plugins/dns.py:1801
-msgid "DNS is not configured"
-msgstr ""
-
-#: ipalib/plugins/dns.py:1811
+#: ipalib/plugins/dns.py:2235
msgid "Nameserver address is not a domain name"
msgstr ""
-#: ipalib/plugins/dns.py:1824
+#: ipalib/plugins/dns.py:2247
msgid "Nameserver for reverse zone cannot be a relative DNS name"
msgstr ""
-#: ipalib/plugins/dns.py:1828
+#: ipalib/plugins/dns.py:2251
msgid "Nameserver DNS record is created for for forward zones only"
msgstr ""
-#: ipalib/plugins/dns.py:1832
+#: ipalib/plugins/dns.py:2256
msgid "Nameserver DNS record is created only for nameservers in current zone"
msgstr ""
-#: ipalib/plugins/dns.py:1873
+#: ipalib/plugins/dns.py:2299
msgid "Delete DNS zone (SOA record)."
msgstr ""
-#: ipalib/plugins/dns.py:1875
+#: ipalib/plugins/dns.py:2301
#, python-format
msgid "Deleted DNS zone \"%(value)s\""
msgstr ""
-#: ipalib/plugins/dns.py:1900
+#: ipalib/plugins/dns.py:2325
msgid "Modify DNS zone (SOA record)."
msgstr ""
-#: ipalib/plugins/dns.py:1905
+#: ipalib/plugins/dns.py:2330
msgid "Force nameserver change even if nameserver not in DNS"
msgstr ""
-#: ipalib/plugins/dns.py:1922
-msgid "Search for DNS zones (SOA records)."
-msgstr ""
-
-#: ipalib/plugins/dns.py:1946
+#: ipalib/plugins/dns.py:2355
msgid "Forward zones only"
msgstr ""
-#: ipalib/plugins/dns.py:1948
+#: ipalib/plugins/dns.py:2357
msgid "Search for forward zones only"
msgstr ""
-#: ipalib/plugins/dns.py:1968
+#: ipalib/plugins/dns.py:2389
msgid "Display information about a DNS zone (SOA record)."
msgstr ""
-#: ipalib/plugins/dns.py:1976
+#: ipalib/plugins/dns.py:2400
msgid "Disable DNS Zone."
msgstr ""
-#: ipalib/plugins/dns.py:1979
+#: ipalib/plugins/dns.py:2401
#, python-format
msgid "Disabled DNS zone \"%(value)s\""
msgstr ""
-#: ipalib/plugins/dns.py:1997
+#: ipalib/plugins/dns.py:2406
msgid "Enable DNS Zone."
msgstr ""
-#: ipalib/plugins/dns.py:2000
+#: ipalib/plugins/dns.py:2407
#, python-format
msgid "Enabled DNS zone \"%(value)s\""
msgstr ""
-#: ipalib/plugins/dns.py:2017
+#: ipalib/plugins/dns.py:2412
msgid "Add a permission for per-zone access delegation."
msgstr ""
-#: ipalib/plugins/dns.py:2020
-#, python-format
-msgid "Added system permission \"%(value)s\""
-msgstr ""
-
-#: ipalib/plugins/dns.py:2053
+#: ipalib/plugins/dns.py:2417
msgid "Remove a permission for per-zone access delegation."
msgstr ""
-#: ipalib/plugins/dns.py:2056
-#, python-format
-msgid "Removed system permission \"%(value)s\""
-msgstr ""
-
-#: ipalib/plugins/dns.py:2087
+#: ipalib/plugins/dns.py:2427
msgid "DNS resource record"
msgstr ""
-#: ipalib/plugins/dns.py:2088
+#: ipalib/plugins/dns.py:2428
msgid "DNS resource records"
msgstr ""
-#: ipalib/plugins/dns.py:2093
+#: ipalib/plugins/dns.py:2434
msgid "DNS Resource Records"
msgstr ""
-#: ipalib/plugins/dns.py:2094
+#: ipalib/plugins/dns.py:2435
msgid "DNS Resource Record"
msgstr ""
-#: ipalib/plugins/dns.py:2100 ipalib/plugins/dns.py:2101
+#: ipalib/plugins/dns.py:2440 ipalib/plugins/dns.py:2441
msgid "Record name"
msgstr ""
-#: ipalib/plugins/dns.py:2106 ipalib/plugins/dns.py:2107
-msgid "Time to live"
-msgstr ""
-
-#: ipalib/plugins/dns.py:2111 ipalib/plugins/host.py:330
+#: ipalib/plugins/dns.py:2451 ipalib/plugins/host.py:448
+#: ipalib/plugins/user.py:585
msgid "Class"
msgstr ""
-#: ipalib/plugins/dns.py:2112
+#: ipalib/plugins/dns.py:2452
msgid "DNS class"
msgstr ""
-#: ipalib/plugins/dns.py:2118
+#: ipalib/plugins/dns.py:2458
msgid "Structured"
msgstr ""
-#: ipalib/plugins/dns.py:2119
+#: ipalib/plugins/dns.py:2459
msgid "Parse all raw DNS records and return them in a structured way"
msgstr ""
-#: ipalib/plugins/dns.py:2150
+#: ipalib/plugins/dns.py:2475
+msgid "must be in zone record"
+msgstr ""
+
+#: ipalib/plugins/dns.py:2484
+msgid ""
+"out-of-zone data: record name must be a subdomain of the zone or a relative "
+"name"
+msgstr ""
+
+#: ipalib/plugins/dns.py:2511
#, python-format
msgid ""
"Reverse zone for PTR record should be a sub-zone of one the following fully "
"qualified domains: %s"
msgstr ""
-#: ipalib/plugins/dns.py:2156
+#: ipalib/plugins/dns.py:2526
#, python-format
msgid ""
"Reverse zone %(name)s requires exactly %(count)d IP address components, "
"%(user_count)d given"
msgstr ""
-#: ipalib/plugins/dns.py:2328
+#: ipalib/plugins/dns.py:2567
+msgid "only master zones can contain records"
+msgstr ""
+
+#: ipalib/plugins/dns.py:2736
msgid "only one CNAME record is allowed per name (RFC 2136, section 1.1.5)"
msgstr ""
-#: ipalib/plugins/dns.py:2334
+#: ipalib/plugins/dns.py:2742
msgid ""
"CNAME record is not allowed to coexist with any other record (RFC 1034, "
"section 3.6.2)"
msgstr ""
-#: ipalib/plugins/dns.py:2346
+#: ipalib/plugins/dns.py:2754
msgid "only one DNAME record is allowed per name (RFC 6672, section 2.4)"
msgstr ""
-#: ipalib/plugins/dns.py:2351
+#: ipalib/plugins/dns.py:2759
msgid ""
"DNAME record is not allowed to coexist with an NS record except when located "
"in a zone root record (RFC 6672, section 2.3)"
msgstr ""
-#: ipalib/plugins/dns.py:2359
+#: ipalib/plugins/dns.py:2768
+msgid "Only one NSEC3PARAM record is allowed per zone"
+msgstr ""
+
+#: ipalib/plugins/dns.py:2947
msgid "Add new DNS resource record."
msgstr ""
-#: ipalib/plugins/dns.py:2367
+#: ipalib/plugins/dns.py:2955
msgid "force NS record creation even if its hostname is not in DNS"
msgstr ""
-#: ipalib/plugins/dns.py:2404
+#: ipalib/plugins/dns.py:3002
msgid "Please choose a type of DNS resource record to be added"
msgstr ""
-#: ipalib/plugins/dns.py:2405
+#: ipalib/plugins/dns.py:3003
#, python-format
msgid "The most common types for this type of zone are: %s\n"
msgstr ""
-#: ipalib/plugins/dns.py:2410
+#: ipalib/plugins/dns.py:3008
msgid "DNS resource record type"
msgstr ""
-#: ipalib/plugins/dns.py:2426
+#: ipalib/plugins/dns.py:3024
#, python-format
msgid "Invalid or unsupported type. Allowed values are: %s"
msgstr ""
-#: ipalib/plugins/dns.py:2454
+#: ipalib/plugins/dns.py:3052
#, python-format
msgid "Raw value of a DNS record was already set by \"%(name)s\" option"
msgstr ""
-#: ipalib/plugins/dns.py:2549
+#: ipalib/plugins/dns.py:3154
msgid "Modify a DNS resource record."
msgstr ""
-#: ipalib/plugins/dns.py:2566
+#: ipalib/plugins/dns.py:3171
msgid "DNS zone root record cannot be renamed"
msgstr ""
-#: ipalib/plugins/dns.py:2584
+#: ipalib/plugins/dns.py:3189
msgid "DNS records can be only updated one at a time"
msgstr ""
-#: ipalib/plugins/dns.py:2664
+#: ipalib/plugins/dns.py:3280
msgid "No option to modify specific record provided."
msgstr ""
-#: ipalib/plugins/dns.py:2667 ipalib/plugins/dns.py:2839
+#: ipalib/plugins/dns.py:3283 ipalib/plugins/dns.py:3469
msgid "Current DNS record contents:\n"
msgstr ""
-#: ipalib/plugins/dns.py:2689
+#: ipalib/plugins/dns.py:3305
#, python-format
msgid "Modify %(name)s '%(value)s'?"
msgstr ""
-#: ipalib/plugins/dns.py:2697
+#: ipalib/plugins/dns.py:3313
#, python-format
msgid ""
"%(count)d %(type)s record skipped. Only one value per DNS record type can be "
@@ -3569,110 +3858,181 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/dns.py:2709
+#: ipalib/plugins/dns.py:3325
#, python-format
msgid "Deleted record \"%(value)s\""
msgstr ""
-#: ipalib/plugins/dns.py:2716
+#: ipalib/plugins/dns.py:3332
msgid "Delete DNS resource record."
msgstr ""
-#: ipalib/plugins/dns.py:2720
+#: ipalib/plugins/dns.py:3336
msgid ""
"Neither --del-all nor options to delete a specific record provided.\n"
"Command help may be consulted for all supported record types."
msgstr ""
-#: ipalib/plugins/dns.py:2726
+#: ipalib/plugins/dns.py:3342
msgid "Delete all associated records"
msgstr ""
-#: ipalib/plugins/dns.py:2792
+#: ipalib/plugins/dns.py:3411
#, python-format
msgid "Zone record '%s' cannot be deleted"
msgstr ""
-#: ipalib/plugins/dns.py:2831
+#: ipalib/plugins/dns.py:3461
msgid "No option to delete specific record provided."
msgstr ""
-#: ipalib/plugins/dns.py:2832
+#: ipalib/plugins/dns.py:3462
msgid "Delete all?"
msgstr ""
-#: ipalib/plugins/dns.py:2860
+#: ipalib/plugins/dns.py:3490
#, python-format
msgid "Delete %(name)s '%(value)s'?"
msgstr ""
-#: ipalib/plugins/dns.py:2871
+#: ipalib/plugins/dns.py:3501
msgid "Display DNS resource."
msgstr ""
-#: ipalib/plugins/dns.py:2888
+#: ipalib/plugins/dns.py:3518
msgid "Search for DNS resources."
msgstr ""
-#: ipalib/plugins/dns.py:2923
+#: ipalib/plugins/dns.py:3557
msgid "Resolve a host name in DNS."
msgstr ""
-#: ipalib/plugins/dns.py:2926
+#: ipalib/plugins/dns.py:3560
#, python-format
msgid "Found '%(value)s'"
msgstr ""
-#: ipalib/plugins/dns.py:2943
+#: ipalib/plugins/dns.py:3577
#, python-format
msgid "Host '%(host)s' not found"
msgstr ""
-#: ipalib/plugins/dns.py:2980
+#: ipalib/plugins/dns.py:3614
msgid "DNS configuration options"
msgstr ""
-#: ipalib/plugins/dns.py:2985 ipalib/plugins/dns.py:2986
+#: ipalib/plugins/dns.py:3619 ipalib/plugins/dns.py:3620
msgid "DNS Global Configuration"
msgstr ""
-#: ipalib/plugins/dns.py:2992
+#: ipalib/plugins/dns.py:3626
msgid "Global forwarders"
msgstr ""
-#: ipalib/plugins/dns.py:2993
+#: ipalib/plugins/dns.py:3627
msgid ""
"Global forwarders. A custom port can be specified for each forwarder using a "
"standard format \"IP_ADDRESS port PORT\""
msgstr ""
-#: ipalib/plugins/dns.py:3000
+#: ipalib/plugins/dns.py:3634
msgid ""
"Global forwarding policy. Set to \"none\" to disable any configured global "
"forwarders."
msgstr ""
-#: ipalib/plugins/dns.py:3007
+#: ipalib/plugins/dns.py:3641
msgid "Allow synchronization of forward (A, AAAA) and reverse (PTR) records"
msgstr ""
-#: ipalib/plugins/dns.py:3011
+#: ipalib/plugins/dns.py:3645
msgid "Zone refresh interval"
msgstr ""
-#: ipalib/plugins/dns.py:3025
+#: ipalib/plugins/dns.py:3689
msgid "Global DNS configuration is empty"
msgstr ""
-#: ipalib/plugins/dns.py:3031
+#: ipalib/plugins/dns.py:3695
msgid "Modify global DNS configuration."
msgstr ""
-#: ipalib/plugins/dns.py:3042
+#: ipalib/plugins/dns.py:3706
msgid "Show the current global DNS configuration."
msgstr ""
-#: ipalib/plugins/group.py:33
+#: ipalib/plugins/dns.py:3719
+msgid "DNS forward zone"
+msgstr ""
+
+#: ipalib/plugins/dns.py:3720
+msgid "DNS forward zones"
+msgstr ""
+
+#: ipalib/plugins/dns.py:3722
+msgid "DNS Forward Zones"
+msgstr ""
+
+#: ipalib/plugins/dns.py:3723
+msgid "DNS Forward Zone"
+msgstr ""
+
+#: ipalib/plugins/dns.py:3732
+msgid "Create new DNS forward zone."
+msgstr ""
+
+#: ipalib/plugins/dns.py:3746 ipalib/plugins/dns.py:3786
+msgid "Please specify forwarders."
+msgstr ""
+
+#: ipalib/plugins/dns.py:3753
+msgid "Delete DNS forward zone."
+msgstr ""
+
+#: ipalib/plugins/dns.py:3755
+#, python-format
+msgid "Deleted DNS forward zone \"%(value)s\""
+msgstr ""
+
+#: ipalib/plugins/dns.py:3760
+msgid "Modify DNS forward zone."
+msgstr ""
+
+#: ipalib/plugins/dns.py:3793
+msgid "Search for DNS forward zones."
+msgstr ""
+
+#: ipalib/plugins/dns.py:3798
+msgid "Display information about a DNS forward zone."
+msgstr ""
+
+#: ipalib/plugins/dns.py:3805
+msgid "Disable DNS Forward Zone."
+msgstr ""
+
+#: ipalib/plugins/dns.py:3806
+#, python-format
+msgid "Disabled DNS forward zone \"%(value)s\""
+msgstr ""
+
+#: ipalib/plugins/dns.py:3811
+msgid "Enable DNS Forward Zone."
+msgstr ""
+
+#: ipalib/plugins/dns.py:3812
+#, python-format
+msgid "Enabled DNS forward zone \"%(value)s\""
+msgstr ""
+
+#: ipalib/plugins/dns.py:3817
+msgid "Add a permission for per-forward zone access delegation."
+msgstr ""
+
+#: ipalib/plugins/dns.py:3822
+msgid "Remove a permission for per-forward zone access delegation."
+msgstr ""
+
+#: ipalib/plugins/group.py:34
msgid ""
"\n"
"Groups of users\n"
@@ -3764,173 +4124,173 @@ msgid ""
" ipa group-show ad_admins_external\n"
msgstr ""
-#: ipalib/plugins/group.py:120 ipalib/plugins/group.py:229
-#: ipalib/plugins/group.py:449 ipalib/plugins/user.py:189
+#: ipalib/plugins/group.py:125 ipalib/plugins/group.py:295
+#: ipalib/plugins/group.py:532 ipalib/plugins/user.py:204
msgid "group"
msgstr ""
-#: ipalib/plugins/group.py:121
+#: ipalib/plugins/group.py:126
msgid "groups"
msgstr ""
-#: ipalib/plugins/group.py:140 ipalib/plugins/hbacrule.py:190
-#: ipalib/plugins/internal.py:495 ipalib/plugins/selinuxusermap.py:195
-#: ipalib/plugins/sudorule.py:159
+#: ipalib/plugins/group.py:207 ipalib/plugins/hbacrule.py:244
+#: ipalib/plugins/internal.py:511 ipalib/plugins/selinuxusermap.py:238
+#: ipalib/plugins/sudorule.py:271
msgid "User Groups"
msgstr ""
-#: ipalib/plugins/group.py:141
+#: ipalib/plugins/group.py:208
msgid "User Group"
msgstr ""
-#: ipalib/plugins/group.py:149
+#: ipalib/plugins/group.py:216
msgid "Group name"
msgstr ""
-#: ipalib/plugins/group.py:156 ipalib/plugins/sudocmdgroup.py:79
+#: ipalib/plugins/group.py:223 ipalib/plugins/sudocmdgroup.py:123
msgid "Group description"
msgstr ""
-#: ipalib/plugins/group.py:160 ipalib/plugins/user.py:311
+#: ipalib/plugins/group.py:227 ipalib/plugins/user.py:519
msgid "GID"
msgstr ""
-#: ipalib/plugins/group.py:161
+#: ipalib/plugins/group.py:228
msgid "GID (use this option to set it manually)"
msgstr ""
-#: ipalib/plugins/group.py:170
+#: ipalib/plugins/group.py:236
msgid "External member"
msgstr ""
-#: ipalib/plugins/group.py:171
+#: ipalib/plugins/group.py:237
msgid "Members of a trusted domain in DOM\\name or name@domain form"
msgstr ""
-#: ipalib/plugins/group.py:177
+#: ipalib/plugins/group.py:245
msgid "Create a new group."
msgstr ""
-#: ipalib/plugins/group.py:179
+#: ipalib/plugins/group.py:247
#, python-format
msgid "Added group \"%(value)s\""
msgstr ""
-#: ipalib/plugins/group.py:184
+#: ipalib/plugins/group.py:252
msgid "Create as a non-POSIX group"
msgstr ""
-#: ipalib/plugins/group.py:189
+#: ipalib/plugins/group.py:257
msgid "Allow adding external non-IPA members from trusted domains"
msgstr ""
-#: ipalib/plugins/group.py:214
+#: ipalib/plugins/group.py:280
msgid "Delete group."
msgstr ""
-#: ipalib/plugins/group.py:216
+#: ipalib/plugins/group.py:282
#, python-format
msgid "Deleted group \"%(value)s\""
msgstr ""
-#: ipalib/plugins/group.py:230
+#: ipalib/plugins/group.py:296
msgid "privileged group"
msgstr ""
-#: ipalib/plugins/group.py:248
+#: ipalib/plugins/group.py:313
msgid "Modify a group."
msgstr ""
-#: ipalib/plugins/group.py:250
+#: ipalib/plugins/group.py:315
#, python-format
msgid "Modified group \"%(value)s\""
msgstr ""
-#: ipalib/plugins/group.py:255
+#: ipalib/plugins/group.py:320
msgid "change to a POSIX group"
msgstr ""
-#: ipalib/plugins/group.py:259
+#: ipalib/plugins/group.py:324
msgid "change to support external non-IPA members from trusted domains"
msgstr ""
-#: ipalib/plugins/group.py:318
+#: ipalib/plugins/group.py:384
msgid "Search for groups."
msgstr ""
-#: ipalib/plugins/group.py:323
+#: ipalib/plugins/group.py:389
#, python-format
msgid "%(count)d group matched"
msgid_plural "%(count)d groups matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/group.py:329
+#: ipalib/plugins/group.py:395
msgid "search for private groups"
msgstr ""
-#: ipalib/plugins/group.py:333
+#: ipalib/plugins/group.py:399
msgid "search for POSIX groups"
msgstr ""
-#: ipalib/plugins/group.py:337
+#: ipalib/plugins/group.py:403
msgid ""
"search for groups with support of external non-IPA members from trusted "
"domains"
msgstr ""
-#: ipalib/plugins/group.py:341
+#: ipalib/plugins/group.py:407
msgid "search for non-POSIX groups"
msgstr ""
-#: ipalib/plugins/group.py:388
+#: ipalib/plugins/group.py:453
msgid "Display information about a named group."
msgstr ""
-#: ipalib/plugins/group.py:394
+#: ipalib/plugins/group.py:474
msgid "Add members to a group."
msgstr ""
-#: ipalib/plugins/group.py:403 ipalib/plugins/group.py:457
-#: ipalib/plugins/hbactest.py:382
+#: ipalib/plugins/group.py:483 ipalib/plugins/group.py:540
+#: ipalib/plugins/hbactest.py:386
msgid ""
"Cannot perform external member validation without Samba 4 support installed. "
"Make sure you have installed server-trust-ad sub-package of IPA on the server"
msgstr ""
-#: ipalib/plugins/group.py:408 ipalib/plugins/group.py:462
-#: ipalib/plugins/trust.py:416 ipalib/plugins/trust.py:1244
+#: ipalib/plugins/group.py:488 ipalib/plugins/group.py:545
+#: ipalib/plugins/trust.py:561 ipalib/plugins/trust.py:1334
msgid ""
"Cannot perform join operation without own domain configured. Make sure you "
"have run ipa-adtrust-install on the IPA server first"
msgstr ""
-#: ipalib/plugins/group.py:436
+#: ipalib/plugins/group.py:519
msgid "Remove members from a group."
msgstr ""
-#: ipalib/plugins/group.py:490
+#: ipalib/plugins/group.py:576
msgid "Detach a managed group from a user."
msgstr ""
-#: ipalib/plugins/group.py:493
+#: ipalib/plugins/group.py:579
#, python-format
msgid "Detached group \"%(value)s\" from user \"%(value)s\""
msgstr ""
-#: ipalib/plugins/group.py:514
+#: ipalib/plugins/group.py:600
msgid "not allowed to modify user entries"
msgstr ""
-#: ipalib/plugins/group.py:520
+#: ipalib/plugins/group.py:606
msgid "not allowed to modify group entries"
msgstr ""
-#: ipalib/plugins/group.py:539
+#: ipalib/plugins/group.py:625
msgid "Not a managed group"
msgstr ""
-#: ipalib/plugins/hbacrule.py:25
+#: ipalib/plugins/hbacrule.py:26
msgid ""
"\n"
"Host-based access control\n"
@@ -3981,221 +4341,207 @@ msgid ""
" ipa hbacrule-del allow_server\n"
msgstr ""
-#: ipalib/plugins/hbacrule.py:89
+#: ipalib/plugins/hbacrule.py:91
msgid "Host-based access control commands"
msgstr ""
-#: ipalib/plugins/hbacrule.py:93
+#: ipalib/plugins/hbacrule.py:95
msgid "The deny type has been deprecated."
msgstr ""
-#: ipalib/plugins/hbacrule.py:115
+#: ipalib/plugins/hbacrule.py:118
msgid "HBAC rule"
msgstr ""
-#: ipalib/plugins/hbacrule.py:116
+#: ipalib/plugins/hbacrule.py:119
msgid "HBAC rules"
msgstr ""
-#: ipalib/plugins/hbacrule.py:134
+#: ipalib/plugins/hbacrule.py:188
msgid "HBAC Rules"
msgstr ""
-#: ipalib/plugins/hbacrule.py:135 ipalib/plugins/selinuxusermap.py:167
+#: ipalib/plugins/hbacrule.py:189 ipalib/plugins/selinuxusermap.py:210
msgid "HBAC Rule"
msgstr ""
-#: ipalib/plugins/hbacrule.py:140 ipalib/plugins/selinuxusermap.py:158
-#: ipalib/plugins/sudorule.py:106
+#: ipalib/plugins/hbacrule.py:194 ipalib/plugins/selinuxusermap.py:201
+#: ipalib/plugins/sudorule.py:218
msgid "Rule name"
msgstr ""
-#: ipalib/plugins/hbacrule.py:145
+#: ipalib/plugins/hbacrule.py:199
msgid "Rule type (allow)"
msgstr ""
-#: ipalib/plugins/hbacrule.py:146
+#: ipalib/plugins/hbacrule.py:200
msgid "Rule type"
msgstr ""
-#: ipalib/plugins/hbacrule.py:156 ipalib/plugins/netgroup.py:139
-#: ipalib/plugins/selinuxusermap.py:172 ipalib/plugins/sudorule.py:119
+#: ipalib/plugins/hbacrule.py:210 ipalib/plugins/netgroup.py:196
+#: ipalib/plugins/selinuxusermap.py:215 ipalib/plugins/sudorule.py:231
msgid "User category"
msgstr ""
-#: ipalib/plugins/hbacrule.py:157 ipalib/plugins/netgroup.py:140
-#: ipalib/plugins/selinuxusermap.py:173 ipalib/plugins/sudorule.py:120
+#: ipalib/plugins/hbacrule.py:211 ipalib/plugins/netgroup.py:197
+#: ipalib/plugins/selinuxusermap.py:216 ipalib/plugins/sudorule.py:232
msgid "User category the rule applies to"
msgstr ""
-#: ipalib/plugins/hbacrule.py:162 ipalib/plugins/netgroup.py:145
-#: ipalib/plugins/selinuxusermap.py:178 ipalib/plugins/sudorule.py:125
+#: ipalib/plugins/hbacrule.py:216 ipalib/plugins/netgroup.py:202
+#: ipalib/plugins/selinuxusermap.py:221 ipalib/plugins/sudorule.py:237
msgid "Host category"
msgstr ""
-#: ipalib/plugins/hbacrule.py:163 ipalib/plugins/netgroup.py:146
-#: ipalib/plugins/selinuxusermap.py:179 ipalib/plugins/sudorule.py:126
+#: ipalib/plugins/hbacrule.py:217 ipalib/plugins/netgroup.py:203
+#: ipalib/plugins/selinuxusermap.py:222 ipalib/plugins/sudorule.py:238
msgid "Host category the rule applies to"
msgstr ""
-#: ipalib/plugins/hbacrule.py:169
+#: ipalib/plugins/hbacrule.py:223
msgid "Service category"
msgstr ""
-#: ipalib/plugins/hbacrule.py:170
+#: ipalib/plugins/hbacrule.py:224
msgid "Service category the rule applies to"
msgstr ""
-#: ipalib/plugins/hbacrule.py:182 ipalib/plugins/internal.py:658
-#: ipalib/plugins/selinuxusermap.py:187 ipalib/plugins/sudorule.py:114
+#: ipalib/plugins/hbacrule.py:236 ipalib/plugins/internal.py:686
+#: ipalib/plugins/selinuxusermap.py:230 ipalib/plugins/sudorule.py:226
msgid "Enabled"
msgstr ""
-#: ipalib/plugins/hbacrule.py:186 ipalib/plugins/internal.py:496
-#: ipalib/plugins/selinuxusermap.py:191 ipalib/plugins/sudorule.py:155
-#: ipalib/plugins/user.py:225
-msgid "Users"
-msgstr ""
-
-#: ipalib/plugins/hbacrule.py:194 ipalib/plugins/host.py:255
-#: ipalib/plugins/internal.py:490 ipalib/plugins/selinuxusermap.py:199
-#: ipalib/plugins/sudorule.py:163
-msgid "Hosts"
-msgstr ""
-
-#: ipalib/plugins/hbacrule.py:198 ipalib/plugins/hostgroup.py:75
-#: ipalib/plugins/internal.py:489 ipalib/plugins/selinuxusermap.py:203
-#: ipalib/plugins/sudorule.py:167
+#: ipalib/plugins/hbacrule.py:252 ipalib/plugins/hostgroup.py:129
+#: ipalib/plugins/internal.py:505 ipalib/plugins/selinuxusermap.py:246
+#: ipalib/plugins/sudorule.py:284
msgid "Host Groups"
msgstr ""
-#: ipalib/plugins/hbacrule.py:204 ipalib/plugins/internal.py:437
-#: ipalib/plugins/service.py:315
+#: ipalib/plugins/hbacrule.py:258 ipalib/plugins/internal.py:453
+#: ipalib/plugins/service.py:365
msgid "Services"
msgstr ""
-#: ipalib/plugins/hbacrule.py:208
+#: ipalib/plugins/hbacrule.py:262
msgid "Service Groups"
msgstr ""
-#: ipalib/plugins/hbacrule.py:218
+#: ipalib/plugins/hbacrule.py:272
msgid "Create a new HBAC rule."
msgstr ""
-#: ipalib/plugins/hbacrule.py:220
+#: ipalib/plugins/hbacrule.py:274
#, python-format
msgid "Added HBAC rule \"%(value)s\""
msgstr ""
-#: ipalib/plugins/hbacrule.py:232
+#: ipalib/plugins/hbacrule.py:286
msgid "Delete an HBAC rule."
msgstr ""
-#: ipalib/plugins/hbacrule.py:234
+#: ipalib/plugins/hbacrule.py:288
#, python-format
msgid "Deleted HBAC rule \"%(value)s\""
msgstr ""
-#: ipalib/plugins/hbacrule.py:249
+#: ipalib/plugins/hbacrule.py:303
msgid "Modify an HBAC rule."
msgstr ""
-#: ipalib/plugins/hbacrule.py:251
+#: ipalib/plugins/hbacrule.py:305
#, python-format
msgid "Modified HBAC rule \"%(value)s\""
msgstr ""
-#: ipalib/plugins/hbacrule.py:261 ipalib/plugins/netgroup.py:213
-#: ipalib/plugins/sudorule.py:289
+#: ipalib/plugins/hbacrule.py:316 ipalib/plugins/netgroup.py:269
msgid "user category cannot be set to 'all' while there are allowed users"
msgstr ""
-#: ipalib/plugins/hbacrule.py:263 ipalib/plugins/netgroup.py:215
-#: ipalib/plugins/sudorule.py:291
+#: ipalib/plugins/hbacrule.py:318 ipalib/plugins/netgroup.py:271
msgid "host category cannot be set to 'all' while there are allowed hosts"
msgstr ""
-#: ipalib/plugins/hbacrule.py:265
+#: ipalib/plugins/hbacrule.py:320
msgid ""
"service category cannot be set to 'all' while there are allowed services"
msgstr ""
-#: ipalib/plugins/hbacrule.py:272
+#: ipalib/plugins/hbacrule.py:327
msgid "Search for HBAC rules."
msgstr ""
-#: ipalib/plugins/hbacrule.py:275
+#: ipalib/plugins/hbacrule.py:330
#, python-format
msgid "%(count)d HBAC rule matched"
msgid_plural "%(count)d HBAC rules matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/hbacrule.py:282
+#: ipalib/plugins/hbacrule.py:337
msgid "Display the properties of an HBAC rule."
msgstr ""
-#: ipalib/plugins/hbacrule.py:288
+#: ipalib/plugins/hbacrule.py:343
msgid "Enable an HBAC rule."
msgstr ""
-#: ipalib/plugins/hbacrule.py:290
+#: ipalib/plugins/hbacrule.py:345
#, python-format
msgid "Enabled HBAC rule \"%(value)s\""
msgstr ""
-#: ipalib/plugins/hbacrule.py:315
+#: ipalib/plugins/hbacrule.py:373
msgid "Disable an HBAC rule."
msgstr ""
-#: ipalib/plugins/hbacrule.py:317
+#: ipalib/plugins/hbacrule.py:375
#, python-format
msgid "Disabled HBAC rule \"%(value)s\""
msgstr ""
-#: ipalib/plugins/hbacrule.py:349 ipalib/plugins/hbacrule.py:389
+#: ipalib/plugins/hbacrule.py:409 ipalib/plugins/hbacrule.py:449
msgid "Access time"
msgstr ""
-#: ipalib/plugins/hbacrule.py:423
+#: ipalib/plugins/hbacrule.py:484
msgid "Add users and groups to an HBAC rule."
msgstr ""
-#: ipalib/plugins/hbacrule.py:437 ipalib/plugins/selinuxusermap.py:460
-#: ipalib/plugins/sudorule.py:439
+#: ipalib/plugins/hbacrule.py:499 ipalib/plugins/selinuxusermap.py:509
+#: ipalib/plugins/sudorule.py:590
msgid "users cannot be added when user category='all'"
msgstr ""
-#: ipalib/plugins/hbacrule.py:444
+#: ipalib/plugins/hbacrule.py:506
msgid "Remove users and groups from an HBAC rule."
msgstr ""
-#: ipalib/plugins/hbacrule.py:453
+#: ipalib/plugins/hbacrule.py:515
msgid "Add target hosts and hostgroups to an HBAC rule."
msgstr ""
-#: ipalib/plugins/hbacrule.py:467 ipalib/plugins/selinuxusermap.py:492
-#: ipalib/plugins/sudorule.py:475
+#: ipalib/plugins/hbacrule.py:530 ipalib/plugins/selinuxusermap.py:542
+#: ipalib/plugins/sudorule.py:644
msgid "hosts cannot be added when host category='all'"
msgstr ""
-#: ipalib/plugins/hbacrule.py:474
+#: ipalib/plugins/hbacrule.py:537
msgid "Remove target hosts and hostgroups from an HBAC rule."
msgstr ""
-#: ipalib/plugins/hbacrule.py:507
+#: ipalib/plugins/hbacrule.py:570
msgid "Add services to an HBAC rule."
msgstr ""
-#: ipalib/plugins/hbacrule.py:521
+#: ipalib/plugins/hbacrule.py:585
msgid "services cannot be added when service category='all'"
msgstr ""
-#: ipalib/plugins/hbacrule.py:528
+#: ipalib/plugins/hbacrule.py:592
msgid "Remove service and service groups from an HBAC rule."
msgstr ""
-#: ipalib/plugins/hbacsvc.py:27
+#: ipalib/plugins/hbacsvc.py:28
msgid ""
"\n"
"HBAC Services\n"
@@ -4220,77 +4566,77 @@ msgid ""
"\n"
msgstr ""
-#: ipalib/plugins/hbacsvc.py:50 ipalib/plugins/hbacsvcgroup.py:45
+#: ipalib/plugins/hbacsvc.py:53 ipalib/plugins/hbacsvcgroup.py:48
msgid "Host based access control commands"
msgstr ""
-#: ipalib/plugins/hbacsvc.py:57 ipalib/plugins/hbacsvc.py:73
+#: ipalib/plugins/hbacsvc.py:61 ipalib/plugins/hbacsvc.py:102
msgid "HBAC service"
msgstr ""
-#: ipalib/plugins/hbacsvc.py:58
+#: ipalib/plugins/hbacsvc.py:62
msgid "HBAC services"
msgstr ""
-#: ipalib/plugins/hbacsvc.py:66
+#: ipalib/plugins/hbacsvc.py:95
msgid "HBAC Services"
msgstr ""
-#: ipalib/plugins/hbacsvc.py:67
+#: ipalib/plugins/hbacsvc.py:96
msgid "HBAC Service"
msgstr ""
-#: ipalib/plugins/hbacsvc.py:72
+#: ipalib/plugins/hbacsvc.py:101
msgid "Service name"
msgstr ""
-#: ipalib/plugins/hbacsvc.py:80
+#: ipalib/plugins/hbacsvc.py:109
msgid "HBAC service description"
msgstr ""
-#: ipalib/plugins/hbacsvc.py:88
+#: ipalib/plugins/hbacsvc.py:117
msgid "Add a new HBAC service."
msgstr ""
-#: ipalib/plugins/hbacsvc.py:90
+#: ipalib/plugins/hbacsvc.py:119
#, python-format
msgid "Added HBAC service \"%(value)s\""
msgstr ""
-#: ipalib/plugins/hbacsvc.py:96
+#: ipalib/plugins/hbacsvc.py:125
msgid "Delete an existing HBAC service."
msgstr ""
-#: ipalib/plugins/hbacsvc.py:98
+#: ipalib/plugins/hbacsvc.py:127
#, python-format
msgid "Deleted HBAC service \"%(value)s\""
msgstr ""
-#: ipalib/plugins/hbacsvc.py:104
+#: ipalib/plugins/hbacsvc.py:133
msgid "Modify an HBAC service."
msgstr ""
-#: ipalib/plugins/hbacsvc.py:106
+#: ipalib/plugins/hbacsvc.py:135
#, python-format
msgid "Modified HBAC service \"%(value)s\""
msgstr ""
-#: ipalib/plugins/hbacsvc.py:112
+#: ipalib/plugins/hbacsvc.py:141
msgid "Search for HBAC services."
msgstr ""
-#: ipalib/plugins/hbacsvc.py:115
+#: ipalib/plugins/hbacsvc.py:144
#, python-format
msgid "%(count)d HBAC service matched"
msgid_plural "%(count)d HBAC services matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/hbacsvc.py:122
+#: ipalib/plugins/hbacsvc.py:151
msgid "Display information about an HBAC service."
msgstr ""
-#: ipalib/plugins/hbacsvcgroup.py:24
+#: ipalib/plugins/hbacsvcgroup.py:25
msgid ""
"\n"
"HBAC Service Groups\n"
@@ -4313,81 +4659,81 @@ msgid ""
" ipa hbacsvcgroup-del login\n"
msgstr ""
-#: ipalib/plugins/hbacsvcgroup.py:52
+#: ipalib/plugins/hbacsvcgroup.py:56
msgid "HBAC service group"
msgstr ""
-#: ipalib/plugins/hbacsvcgroup.py:53
+#: ipalib/plugins/hbacsvcgroup.py:57
msgid "HBAC service groups"
msgstr ""
-#: ipalib/plugins/hbacsvcgroup.py:61
+#: ipalib/plugins/hbacsvcgroup.py:100
msgid "HBAC Service Groups"
msgstr ""
-#: ipalib/plugins/hbacsvcgroup.py:62
+#: ipalib/plugins/hbacsvcgroup.py:101
msgid "HBAC Service Group"
msgstr ""
-#: ipalib/plugins/hbacsvcgroup.py:67
+#: ipalib/plugins/hbacsvcgroup.py:106
msgid "Service group name"
msgstr ""
-#: ipalib/plugins/hbacsvcgroup.py:74
+#: ipalib/plugins/hbacsvcgroup.py:113
msgid "HBAC service group description"
msgstr ""
-#: ipalib/plugins/hbacsvcgroup.py:82
+#: ipalib/plugins/hbacsvcgroup.py:121
msgid "Add a new HBAC service group."
msgstr ""
-#: ipalib/plugins/hbacsvcgroup.py:84
+#: ipalib/plugins/hbacsvcgroup.py:123
#, python-format
msgid "Added HBAC service group \"%(value)s\""
msgstr ""
-#: ipalib/plugins/hbacsvcgroup.py:90
+#: ipalib/plugins/hbacsvcgroup.py:129
msgid "Delete an HBAC service group."
msgstr ""
-#: ipalib/plugins/hbacsvcgroup.py:92
+#: ipalib/plugins/hbacsvcgroup.py:131
#, python-format
msgid "Deleted HBAC service group \"%(value)s\""
msgstr ""
-#: ipalib/plugins/hbacsvcgroup.py:98
+#: ipalib/plugins/hbacsvcgroup.py:137
msgid "Modify an HBAC service group."
msgstr ""
-#: ipalib/plugins/hbacsvcgroup.py:100
+#: ipalib/plugins/hbacsvcgroup.py:139
#, python-format
msgid "Modified HBAC service group \"%(value)s\""
msgstr ""
-#: ipalib/plugins/hbacsvcgroup.py:106
+#: ipalib/plugins/hbacsvcgroup.py:145
msgid "Search for an HBAC service group."
msgstr ""
-#: ipalib/plugins/hbacsvcgroup.py:109
+#: ipalib/plugins/hbacsvcgroup.py:148
#, python-format
msgid "%(count)d HBAC service group matched"
msgid_plural "%(count)d HBAC service groups matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/hbacsvcgroup.py:116
+#: ipalib/plugins/hbacsvcgroup.py:155
msgid "Display information about an HBAC service group."
msgstr ""
-#: ipalib/plugins/hbacsvcgroup.py:122
+#: ipalib/plugins/hbacsvcgroup.py:161
msgid "Add members to an HBAC service group."
msgstr ""
-#: ipalib/plugins/hbacsvcgroup.py:128
+#: ipalib/plugins/hbacsvcgroup.py:167
msgid "Remove members from an HBAC service group."
msgstr ""
-#: ipalib/plugins/hbactest.py:35
+#: ipalib/plugins/hbactest.py:36
msgid ""
"\n"
"Simulate use of Host-based access controls\n"
@@ -4585,75 +4931,75 @@ msgid ""
" Not matched rules: can_login\n"
msgstr ""
-#: ipalib/plugins/hbactest.py:241
+#: ipalib/plugins/hbactest.py:245
msgid "Simulate use of Host-based access controls"
msgstr ""
-#: ipalib/plugins/hbactest.py:245
+#: ipalib/plugins/hbactest.py:249
msgid "Warning"
msgstr ""
-#: ipalib/plugins/hbactest.py:246
+#: ipalib/plugins/hbactest.py:250
msgid "Matched rules"
msgstr ""
-#: ipalib/plugins/hbactest.py:247
+#: ipalib/plugins/hbactest.py:251
msgid "Not matched rules"
msgstr ""
-#: ipalib/plugins/hbactest.py:248
+#: ipalib/plugins/hbactest.py:252
msgid "Non-existent or invalid rules"
msgstr ""
-#: ipalib/plugins/hbactest.py:249
+#: ipalib/plugins/hbactest.py:253
msgid "Result of simulation"
msgstr ""
-#: ipalib/plugins/hbactest.py:255 ipalib/plugins/krbtpolicy.py:85
-#: ipalib/plugins/passwd.py:70
+#: ipalib/plugins/hbactest.py:259 ipalib/plugins/krbtpolicy.py:124
+#: ipalib/plugins/passwd.py:74
msgid "User name"
msgstr ""
-#: ipalib/plugins/hbactest.py:261
+#: ipalib/plugins/hbactest.py:265
msgid "Target host"
msgstr ""
-#: ipalib/plugins/hbactest.py:269
+#: ipalib/plugins/hbactest.py:273
msgid "Rules to test. If not specified, --enabled is assumed"
msgstr ""
-#: ipalib/plugins/hbactest.py:274
+#: ipalib/plugins/hbactest.py:278
msgid "Hide details which rules are matched, not matched, or invalid"
msgstr ""
-#: ipalib/plugins/hbactest.py:278
+#: ipalib/plugins/hbactest.py:282
msgid "Include all enabled IPA rules into test [default]"
msgstr ""
-#: ipalib/plugins/hbactest.py:282
+#: ipalib/plugins/hbactest.py:286
msgid "Include all disabled IPA rules into test"
msgstr ""
-#: ipalib/plugins/hbactest.py:286
+#: ipalib/plugins/hbactest.py:290
msgid "Maximum number of rules to process when no --rules is specified"
msgstr ""
-#: ipalib/plugins/hbactest.py:364
+#: ipalib/plugins/hbactest.py:368
msgid "Unresolved rules in --rules"
msgstr ""
-#: ipalib/plugins/hbactest.py:388 ipalib/plugins/trust.py:555
+#: ipalib/plugins/hbactest.py:392 ipalib/plugins/trust.py:230
msgid ""
"Cannot search in trusted domains without own domain configured. Make sure "
"you have run ipa-adtrust-install on the IPA server first"
msgstr ""
-#: ipalib/plugins/hbactest.py:472
+#: ipalib/plugins/hbactest.py:478
#, python-format
msgid "Access granted: %s"
msgstr ""
-#: ipalib/plugins/host.py:48
+#: ipalib/plugins/host.py:49
msgid ""
"\n"
"Hosts/Machines\n"
@@ -4665,7 +5011,7 @@ msgid ""
"- every enrolled client generates a host entry\n"
msgstr ""
-#: ipalib/plugins/host.py:56
+#: ipalib/plugins/host.py:57
msgid ""
"\n"
"ENROLLMENT:\n"
@@ -4681,7 +5027,7 @@ msgid ""
"3. The host has been created with a one-time password.\n"
msgstr ""
-#: ipalib/plugins/host.py:68
+#: ipalib/plugins/host.py:69
msgid ""
"\n"
"RE-ENROLLMENT:\n"
@@ -4696,13 +5042,7 @@ msgid ""
"the OS that it runs, etc.\n"
msgstr ""
-#: ipalib/plugins/host.py:78
-msgid ""
-"\n"
-"EXAMPLES:\n"
-msgstr ""
-
-#: ipalib/plugins/host.py:80
+#: ipalib/plugins/host.py:81
msgid ""
"\n"
" Add a new host:\n"
@@ -4710,274 +5050,279 @@ msgid ""
"com\n"
msgstr ""
-#: ipalib/plugins/host.py:83
+#: ipalib/plugins/host.py:84
msgid ""
"\n"
" Delete a host:\n"
" ipa host-del test.example.com\n"
msgstr ""
-#: ipalib/plugins/host.py:86
+#: ipalib/plugins/host.py:87
msgid ""
"\n"
" Add a new host with a one-time password:\n"
" ipa host-add --os='Fedora 12' --password=Secret123 test.example.com\n"
msgstr ""
-#: ipalib/plugins/host.py:89
+#: ipalib/plugins/host.py:90
msgid ""
"\n"
" Add a new host with a random one-time password:\n"
" ipa host-add --os='Fedora 12' --random test.example.com\n"
msgstr ""
-#: ipalib/plugins/host.py:92
+#: ipalib/plugins/host.py:93
msgid ""
"\n"
" Modify information about a host:\n"
" ipa host-mod --os='Fedora 12' test.example.com\n"
msgstr ""
-#: ipalib/plugins/host.py:95
+#: ipalib/plugins/host.py:96
msgid ""
"\n"
" Remove SSH public keys of a host and update DNS to reflect this change:\n"
" ipa host-mod --sshpubkey= --updatedns test.example.com\n"
msgstr ""
-#: ipalib/plugins/host.py:98
+#: ipalib/plugins/host.py:99
msgid ""
"\n"
" Disable the host Kerberos key, SSL certificate and all of its services:\n"
" ipa host-disable test.example.com\n"
msgstr ""
-#: ipalib/plugins/host.py:101
+#: ipalib/plugins/host.py:102
msgid ""
"\n"
" Add a host that can manage this host's keytab and certificate:\n"
" ipa host-add-managedby --hosts=test2 test\n"
msgstr ""
-#: ipalib/plugins/host.py:157 ipalib/plugins/service.py:96
+#: ipalib/plugins/host.py:160 ipalib/plugins/service.py:99
msgid "Keytab"
msgstr ""
-#: ipalib/plugins/host.py:169 ipalib/plugins/internal.py:363
-#: ipalib/plugins/service.py:105
+#: ipalib/plugins/host.py:172 ipalib/plugins/internal.py:376
+#: ipalib/plugins/service.py:108
msgid "Serial Number"
msgstr ""
-#: ipalib/plugins/host.py:172 ipalib/plugins/internal.py:364
-#: ipalib/plugins/service.py:108
+#: ipalib/plugins/host.py:175 ipalib/plugins/internal.py:377
+#: ipalib/plugins/service.py:111
msgid "Serial Number (hex)"
msgstr ""
-#: ipalib/plugins/host.py:193
+#: ipalib/plugins/host.py:196
msgid "Failed managedby"
msgstr ""
-#: ipalib/plugins/host.py:196 ipalib/plugins/user.py:92
+#: ipalib/plugins/host.py:199 ipalib/plugins/user.py:95
msgid "SSH public key fingerprint"
msgstr ""
-#: ipalib/plugins/host.py:222
+#: ipalib/plugins/host.py:224
+#, python-format
+msgid "invalid domain-name: %s"
+msgstr ""
+
+#: ipalib/plugins/host.py:235 ipalib/plugins/sudorule.py:424
msgid "host"
msgstr ""
-#: ipalib/plugins/host.py:223
+#: ipalib/plugins/host.py:236 ipalib/plugins/sudorule.py:424
msgid "hosts"
msgstr ""
-#: ipalib/plugins/host.py:256 ipalib/plugins/internal.py:488
-#: ipalib/plugins/internal.py:539
+#: ipalib/plugins/host.py:374 ipalib/plugins/internal.py:504
+#: ipalib/plugins/internal.py:562
msgid "Host"
msgstr ""
-#: ipalib/plugins/host.py:261
+#: ipalib/plugins/host.py:379
msgid "Host name"
msgstr ""
-#: ipalib/plugins/host.py:268
+#: ipalib/plugins/host.py:386
msgid "A description of this host"
msgstr ""
-#: ipalib/plugins/host.py:272
+#: ipalib/plugins/host.py:390
msgid "Locality"
msgstr ""
-#: ipalib/plugins/host.py:273
+#: ipalib/plugins/host.py:391
msgid "Host locality (e.g. \"Baltimore, MD\")"
msgstr ""
-#: ipalib/plugins/host.py:278
+#: ipalib/plugins/host.py:396
msgid "Host location (e.g. \"Lab 2\")"
msgstr ""
-#: ipalib/plugins/host.py:282
+#: ipalib/plugins/host.py:400
msgid "Platform"
msgstr ""
-#: ipalib/plugins/host.py:283
+#: ipalib/plugins/host.py:401
msgid "Host hardware platform (e.g. \"Lenovo T61\")"
msgstr ""
-#: ipalib/plugins/host.py:287
+#: ipalib/plugins/host.py:405
msgid "Operating system"
msgstr ""
-#: ipalib/plugins/host.py:288
+#: ipalib/plugins/host.py:406
msgid "Host operating system and version (e.g. \"Fedora 9\")"
msgstr ""
-#: ipalib/plugins/host.py:292
+#: ipalib/plugins/host.py:410
msgid "User password"
msgstr ""
-#: ipalib/plugins/host.py:293
+#: ipalib/plugins/host.py:411
msgid "Password used in bulk enrollment"
msgstr ""
-#: ipalib/plugins/host.py:296
+#: ipalib/plugins/host.py:414
msgid "Generate a random password to be used in bulk enrollment"
msgstr ""
-#: ipalib/plugins/host.py:301 ipalib/plugins/user.py:301
+#: ipalib/plugins/host.py:419 ipalib/plugins/user.py:509
msgid "Random password"
msgstr ""
-#: ipalib/plugins/host.py:307 ipalib/plugins/service.py:329
+#: ipalib/plugins/host.py:425 ipalib/plugins/service.py:379
msgid "Base-64 encoded server certificate"
msgstr ""
-#: ipalib/plugins/host.py:310 ipalib/plugins/host.py:628
+#: ipalib/plugins/host.py:428 ipalib/plugins/host.py:751
msgid "Principal name"
msgstr ""
-#: ipalib/plugins/host.py:318
+#: ipalib/plugins/host.py:436
msgid "MAC address"
msgstr ""
-#: ipalib/plugins/host.py:319
+#: ipalib/plugins/host.py:437
msgid "Hardware MAC address(es) on this host"
msgstr ""
-#: ipalib/plugins/host.py:323 ipalib/plugins/user.py:363
+#: ipalib/plugins/host.py:441 ipalib/plugins/user.py:571
msgid "SSH public key"
msgstr ""
-#: ipalib/plugins/host.py:331
+#: ipalib/plugins/host.py:449
msgid ""
"Host category (semantics placed on this attribute are for local "
"interpretation)"
msgstr ""
-#: ipalib/plugins/host.py:391
+#: ipalib/plugins/host.py:510
msgid "Add a new host."
msgstr ""
-#: ipalib/plugins/host.py:394
+#: ipalib/plugins/host.py:513
#, python-format
msgid "Added host \"%(value)s\""
msgstr ""
-#: ipalib/plugins/host.py:399
+#: ipalib/plugins/host.py:518
msgid "force host name even if not in DNS"
msgstr ""
-#: ipalib/plugins/host.py:402
+#: ipalib/plugins/host.py:521
msgid "skip reverse DNS detection"
msgstr ""
-#: ipalib/plugins/host.py:405
+#: ipalib/plugins/host.py:524
msgid "Add the host to DNS with this IP address"
msgstr ""
-#: ipalib/plugins/host.py:486
+#: ipalib/plugins/host.py:609
#, python-format
msgid "The host was added but the DNS update failed with: %(exc)s"
msgstr ""
-#: ipalib/plugins/host.py:507
+#: ipalib/plugins/host.py:630
msgid "Delete a host."
msgstr ""
-#: ipalib/plugins/host.py:509
+#: ipalib/plugins/host.py:632
#, python-format
msgid "Deleted host \"%(value)s\""
msgstr ""
-#: ipalib/plugins/host.py:514
+#: ipalib/plugins/host.py:637
msgid "Remove entries from DNS"
msgstr ""
-#: ipalib/plugins/host.py:619
+#: ipalib/plugins/host.py:742
msgid "Modify information about a host."
msgstr ""
-#: ipalib/plugins/host.py:622
+#: ipalib/plugins/host.py:745
#, python-format
msgid "Modified host \"%(value)s\""
msgstr ""
-#: ipalib/plugins/host.py:629
+#: ipalib/plugins/host.py:752
msgid "Kerberos principal name for this host"
msgstr ""
-#: ipalib/plugins/host.py:633
+#: ipalib/plugins/host.py:756
msgid "Update DNS entries"
msgstr ""
-#: ipalib/plugins/host.py:646
+#: ipalib/plugins/host.py:769
msgid "Password cannot be set on enrolled host."
msgstr ""
-#: ipalib/plugins/host.py:650
+#: ipalib/plugins/host.py:773
msgid "cn is immutable"
msgstr ""
-#: ipalib/plugins/host.py:769
+#: ipalib/plugins/host.py:890
msgid "Search for hosts."
msgstr ""
-#: ipalib/plugins/host.py:773
+#: ipalib/plugins/host.py:894
#, python-format
msgid "%(count)d host matched"
msgid_plural "%(count)d hosts matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/host.py:855
+#: ipalib/plugins/host.py:975
msgid "Display information about a host."
msgstr ""
-#: ipalib/plugins/host.py:860 ipalib/plugins/service.py:560
+#: ipalib/plugins/host.py:980 ipalib/plugins/service.py:608
msgid "file to store certificate in"
msgstr ""
-#: ipalib/plugins/host.py:892 ipalib/plugins/service.py:580
+#: ipalib/plugins/host.py:1012 ipalib/plugins/service.py:628
#, python-format
msgid "Certificate stored in file '%(file)s'"
msgstr ""
-#: ipalib/plugins/host.py:903
+#: ipalib/plugins/host.py:1023
msgid "Disable the Kerberos key, SSL certificate and all services of a host."
msgstr ""
-#: ipalib/plugins/host.py:906
+#: ipalib/plugins/host.py:1026
#, python-format
msgid "Disabled host \"%(value)s\""
msgstr ""
-#: ipalib/plugins/host.py:999
+#: ipalib/plugins/host.py:1120
msgid "Add hosts that can manage this host."
msgstr ""
-#: ipalib/plugins/host.py:1014
+#: ipalib/plugins/host.py:1135 ipalib/plugins/otptoken.py:390
msgid "Remove hosts that can manage this host."
msgstr ""
-#: ipalib/plugins/hostgroup.py:26
+#: ipalib/plugins/hostgroup.py:27
msgid ""
"\n"
"Groups of hosts.\n"
@@ -5009,88 +5354,88 @@ msgid ""
" ipa hostgroup-del baltimore\n"
msgstr ""
-#: ipalib/plugins/hostgroup.py:61
+#: ipalib/plugins/hostgroup.py:65
msgid "host group"
msgstr ""
-#: ipalib/plugins/hostgroup.py:62
+#: ipalib/plugins/hostgroup.py:66
msgid "host groups"
msgstr ""
-#: ipalib/plugins/hostgroup.py:76
+#: ipalib/plugins/hostgroup.py:130
msgid "Host Group"
msgstr ""
-#: ipalib/plugins/hostgroup.py:83
+#: ipalib/plugins/hostgroup.py:137
msgid "Host-group"
msgstr ""
-#: ipalib/plugins/hostgroup.py:84
+#: ipalib/plugins/hostgroup.py:138
msgid "Name of host-group"
msgstr ""
-#: ipalib/plugins/hostgroup.py:91
+#: ipalib/plugins/hostgroup.py:145
msgid "A description of this host-group"
msgstr ""
-#: ipalib/plugins/hostgroup.py:118
+#: ipalib/plugins/hostgroup.py:172
msgid "Add a new hostgroup."
msgstr ""
-#: ipalib/plugins/hostgroup.py:120
+#: ipalib/plugins/hostgroup.py:174
#, python-format
msgid "Added hostgroup \"%(value)s\""
msgstr ""
-#: ipalib/plugins/hostgroup.py:136
+#: ipalib/plugins/hostgroup.py:190
#, python-format
msgid ""
"netgroup with name \"%s\" already exists. Hostgroups and netgroups share a "
"common namespace"
msgstr ""
-#: ipalib/plugins/hostgroup.py:159
+#: ipalib/plugins/hostgroup.py:213
msgid "Delete a hostgroup."
msgstr ""
-#: ipalib/plugins/hostgroup.py:161
+#: ipalib/plugins/hostgroup.py:215
#, python-format
msgid "Deleted hostgroup \"%(value)s\""
msgstr ""
-#: ipalib/plugins/hostgroup.py:167
+#: ipalib/plugins/hostgroup.py:221
msgid "Modify a hostgroup."
msgstr ""
-#: ipalib/plugins/hostgroup.py:169
+#: ipalib/plugins/hostgroup.py:223
#, python-format
msgid "Modified hostgroup \"%(value)s\""
msgstr ""
-#: ipalib/plugins/hostgroup.py:180
+#: ipalib/plugins/hostgroup.py:234
msgid "Search for hostgroups."
msgstr ""
-#: ipalib/plugins/hostgroup.py:184
+#: ipalib/plugins/hostgroup.py:238
#, python-format
msgid "%(count)d hostgroup matched"
msgid_plural "%(count)d hostgroups matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/hostgroup.py:199
+#: ipalib/plugins/hostgroup.py:252
msgid "Display information about a hostgroup."
msgstr ""
-#: ipalib/plugins/hostgroup.py:210
+#: ipalib/plugins/hostgroup.py:263
msgid "Add members to a hostgroup."
msgstr ""
-#: ipalib/plugins/hostgroup.py:221
+#: ipalib/plugins/hostgroup.py:274
msgid "Remove members from a hostgroup."
msgstr ""
-#: ipalib/plugins/idrange.py:33
+#: ipalib/plugins/idrange.py:34
msgid ""
"\n"
"ID ranges\n"
@@ -5238,94 +5583,95 @@ msgid ""
"modified to match the new range.\n"
msgstr ""
-#: ipalib/plugins/idrange.py:169
+#: ipalib/plugins/idrange.py:185
msgid "ID Ranges"
msgstr ""
-#: ipalib/plugins/idrange.py:170
+#: ipalib/plugins/idrange.py:186
msgid "ID Range"
msgstr ""
-#: ipalib/plugins/idrange.py:173
+#: ipalib/plugins/idrange.py:189
msgid "local domain range"
msgstr ""
-#: ipalib/plugins/idrange.py:174
+#: ipalib/plugins/idrange.py:190
msgid "Active Directory winsync range"
msgstr ""
-#: ipalib/plugins/idrange.py:175 ipalib/plugins/trust.py:289
+#: ipalib/plugins/idrange.py:191 ipalib/plugins/trust.py:425
msgid "Active Directory domain range"
msgstr ""
-#: ipalib/plugins/idrange.py:176 ipalib/plugins/trust.py:290
+#: ipalib/plugins/idrange.py:192 ipalib/plugins/trust.py:426
msgid "Active Directory trust range with POSIX attributes"
msgstr ""
-#: ipalib/plugins/idrange.py:178
+#: ipalib/plugins/idrange.py:194
msgid "IPA trust range"
msgstr ""
-#: ipalib/plugins/idrange.py:184
+#: ipalib/plugins/idrange.py:200
msgid "Range name"
msgstr ""
-#: ipalib/plugins/idrange.py:189
+#: ipalib/plugins/idrange.py:205
msgid "First Posix ID of the range"
msgstr ""
-#: ipalib/plugins/idrange.py:193
+#: ipalib/plugins/idrange.py:209
msgid "Number of IDs in the range"
msgstr ""
-#: ipalib/plugins/idrange.py:197
+#: ipalib/plugins/idrange.py:213
msgid "First RID of the corresponding RID range"
msgstr ""
-#: ipalib/plugins/idrange.py:201
+#: ipalib/plugins/idrange.py:217
msgid "First RID of the secondary RID range"
msgstr ""
-#: ipalib/plugins/idrange.py:206
+#: ipalib/plugins/idrange.py:222
msgid "Domain SID of the trusted domain"
msgstr ""
-#: ipalib/plugins/idrange.py:211
+#: ipalib/plugins/idrange.py:227
msgid "Name of the trusted domain"
msgstr ""
-#: ipalib/plugins/idrange.py:214 ipalib/plugins/internal.py:517
-#: ipalib/plugins/trust.py:323
+#: ipalib/plugins/idrange.py:230 ipalib/plugins/internal.py:537
+#: ipalib/plugins/trust.py:459
msgid "Range type"
msgstr ""
-#: ipalib/plugins/idrange.py:216
+#: ipalib/plugins/idrange.py:232
+#, python-brace-format
msgid "ID range type, one of {vals}"
msgstr ""
-#: ipalib/plugins/idrange.py:284
+#: ipalib/plugins/idrange.py:300
msgid ""
"range modification leaving objects with ID out of the defined range is not "
"allowed"
msgstr ""
-#: ipalib/plugins/idrange.py:289
+#: ipalib/plugins/idrange.py:305
msgid ""
"Cannot perform SID validation without Samba 4 support installed. Make sure "
"you have installed server-trust-ad sub-package of IPA on the server"
msgstr ""
-#: ipalib/plugins/idrange.py:296
+#: ipalib/plugins/idrange.py:312
msgid ""
"Cross-realm trusts are not configured. Make sure you have run ipa-adtrust-"
"install on the IPA server first"
msgstr ""
-#: ipalib/plugins/idrange.py:308
+#: ipalib/plugins/idrange.py:324
msgid "SID is not recognized as a valid SID for a trusted domain"
msgstr ""
-#: ipalib/plugins/idrange.py:344
+#: ipalib/plugins/idrange.py:361
msgid ""
"\n"
" Add new ID range.\n"
@@ -5365,754 +5711,814 @@ msgid ""
" "
msgstr ""
-#: ipalib/plugins/idrange.py:376
+#: ipalib/plugins/idrange.py:393
#, python-format
msgid "Added ID range \"%(value)s\""
msgstr ""
-#: ipalib/plugins/idrange.py:449 ipalib/plugins/idrange.py:647
+#: ipalib/plugins/idrange.py:466 ipalib/plugins/idrange.py:680
msgid "Options dom-sid and dom-name cannot be used together"
msgstr ""
-#: ipalib/plugins/idrange.py:459 ipalib/plugins/idrange.py:659
+#: ipalib/plugins/idrange.py:476 ipalib/plugins/idrange.py:692
msgid ""
"SID for the specified trusted domain name could not be found. Please specify "
"the SID directly using dom-sid option."
msgstr ""
-#: ipalib/plugins/idrange.py:474
+#: ipalib/plugins/idrange.py:491
msgid ""
"IPA Range type must be one of ipa-ad-trust or ipa-ad-trust-posix when SID of "
"the trusted domain is specified."
msgstr ""
-#: ipalib/plugins/idrange.py:480
+#: ipalib/plugins/idrange.py:497
msgid "Options dom-sid/dom-name and secondary-rid-base cannot be used together"
msgstr ""
-#: ipalib/plugins/idrange.py:485
+#: ipalib/plugins/idrange.py:502
msgid "Options dom-sid/dom-name and rid-base must be used together"
msgstr ""
-#: ipalib/plugins/idrange.py:504
+#: ipalib/plugins/idrange.py:521
msgid ""
"IPA Range type must not be one of ipa-ad-trust or ipa-ad-trust-posix when "
"SID of the trusted domain is not specified."
msgstr ""
-#: ipalib/plugins/idrange.py:511 ipalib/plugins/idrange.py:689
+#: ipalib/plugins/idrange.py:528 ipalib/plugins/idrange.py:722
msgid "Options secondary-rid-base and rid-base must be used together"
msgstr ""
-#: ipalib/plugins/idrange.py:521 ipalib/plugins/idrange.py:712
+#: ipalib/plugins/idrange.py:538 ipalib/plugins/idrange.py:745
msgid "Primary RID range and secondary RID range cannot overlap"
msgstr ""
-#: ipalib/plugins/idrange.py:533
+#: ipalib/plugins/idrange.py:550
msgid ""
"You must specify both rid-base and secondary-rid-base options, because ipa-"
"adtrust-install has already been run."
msgstr ""
-#: ipalib/plugins/idrange.py:548
+#: ipalib/plugins/idrange.py:566
msgid "Delete an ID range."
msgstr ""
-#: ipalib/plugins/idrange.py:550
+#: ipalib/plugins/idrange.py:568
#, python-format
msgid "Deleted ID range \"%(value)s\""
msgstr ""
-#: ipalib/plugins/idrange.py:583
+#: ipalib/plugins/idrange.py:614
msgid "Search for ranges."
msgstr ""
-#: ipalib/plugins/idrange.py:586
+#: ipalib/plugins/idrange.py:617
#, python-format
msgid "%(count)d range matched"
msgid_plural "%(count)d ranges matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/idrange.py:604
+#: ipalib/plugins/idrange.py:636
msgid "Display information about a range."
msgstr ""
-#: ipalib/plugins/idrange.py:618
+#: ipalib/plugins/idrange.py:651
msgid "Modify ID range."
msgstr ""
-#: ipalib/plugins/idrange.py:620
+#: ipalib/plugins/idrange.py:653
#, python-format
msgid "Modified ID range \"%(value)s\""
msgstr ""
-#: ipalib/plugins/idrange.py:666
+#: ipalib/plugins/idrange.py:699
msgid "Options dom-sid and secondary-rid-base cannot be used together"
msgstr ""
-#: ipalib/plugins/idrange.py:671
+#: ipalib/plugins/idrange.py:704
msgid "Options dom-sid and rid-base must be used together"
msgstr ""
-#: ipalib/plugins/internal.py:44 ipalib/plugins/internal.py:53
+#: ipalib/plugins/internal.py:48 ipalib/plugins/internal.py:57
msgid "Name of object to export"
msgstr ""
-#: ipalib/plugins/internal.py:47 ipalib/plugins/internal.py:56
+#: ipalib/plugins/internal.py:51 ipalib/plugins/internal.py:60
msgid "Name of method to export"
msgstr ""
-#: ipalib/plugins/internal.py:59
+#: ipalib/plugins/internal.py:63
msgid "Name of command to export"
msgstr ""
-#: ipalib/plugins/internal.py:64
+#: ipalib/plugins/internal.py:68
msgid "Dict of JSON encoded IPA Objects"
msgstr ""
-#: ipalib/plugins/internal.py:65
+#: ipalib/plugins/internal.py:69
msgid "Dict of JSON encoded IPA Methods"
msgstr ""
-#: ipalib/plugins/internal.py:66
+#: ipalib/plugins/internal.py:70
msgid "Dict of JSON encoded IPA Commands"
msgstr ""
-#: ipalib/plugins/internal.py:147
+#: ipalib/plugins/internal.py:151
msgid "Your session has expired. Please re-login."
msgstr ""
-#: ipalib/plugins/internal.py:151
+#: ipalib/plugins/internal.py:155
msgid "Apply"
msgstr ""
-#: ipalib/plugins/internal.py:152
-msgid "Are you sure you want to proceed with the action."
+#: ipalib/plugins/internal.py:156
+msgid "Rebuild auto membership"
msgstr ""
-#: ipalib/plugins/internal.py:153
-msgid "Are you sure you want to delete ${object}"
+#: ipalib/plugins/internal.py:157
+msgid "Are you sure you want to rebuild auto membership?"
msgstr ""
-#: ipalib/plugins/internal.py:154
-msgid "Are you sure you want to disable ${object}"
+#: ipalib/plugins/internal.py:159
+msgid "Are you sure you want to proceed with the action?"
msgstr ""
-#: ipalib/plugins/internal.py:155
-msgid "Are you sure you want to enable ${object}"
+#: ipalib/plugins/internal.py:160
+#, python-brace-format
+msgid "Are you sure you want to delete ${object}?"
msgstr ""
-#: ipalib/plugins/internal.py:156
+#: ipalib/plugins/internal.py:161
+#, python-brace-format
+msgid "Are you sure you want to disable ${object}?"
+msgstr ""
+
+#: ipalib/plugins/internal.py:162
+#, python-brace-format
+msgid "Are you sure you want to enable ${object}?"
+msgstr ""
+
+#: ipalib/plugins/internal.py:163
msgid "Actions"
msgstr ""
-#: ipalib/plugins/internal.py:160
+#: ipalib/plugins/internal.py:167
+#, python-brace-format
msgid "Add RunAs ${other_entity} into ${entity} ${primary_key}"
msgstr ""
-#: ipalib/plugins/internal.py:161
+#: ipalib/plugins/internal.py:168
+#, python-brace-format
msgid "Add RunAs Groups into ${entity} ${primary_key}"
msgstr ""
-#: ipalib/plugins/internal.py:162
+#: ipalib/plugins/internal.py:169
+#, python-brace-format
msgid "Add ${other_entity} Managing ${entity} ${primary_key}"
msgstr ""
-#: ipalib/plugins/internal.py:163
+#: ipalib/plugins/internal.py:170
+#, python-brace-format
msgid "Add ${other_entity} into ${entity} ${primary_key}"
msgstr ""
-#: ipalib/plugins/internal.py:164
+#: ipalib/plugins/internal.py:171
+#, python-brace-format
msgid "Add Allow ${other_entity} into ${entity} ${primary_key}"
msgstr ""
-#: ipalib/plugins/internal.py:165
+#: ipalib/plugins/internal.py:172
+#, python-brace-format
msgid "Add Deny ${other_entity} into ${entity} ${primary_key}"
msgstr ""
-#: ipalib/plugins/internal.py:166
+#: ipalib/plugins/internal.py:173
+#, python-brace-format
msgid "Add ${entity} ${primary_key} into ${other_entity}"
msgstr ""
-#: ipalib/plugins/internal.py:168
+#: ipalib/plugins/internal.py:175
+#, python-brace-format
msgid "${count} item(s) added"
msgstr ""
-#: ipalib/plugins/internal.py:169
+#: ipalib/plugins/internal.py:176
msgid "Direct Membership"
msgstr ""
-#: ipalib/plugins/internal.py:170
+#: ipalib/plugins/internal.py:177
+#, python-brace-format
+msgid "Filter available ${other_entity}"
+msgstr ""
+
+#: ipalib/plugins/internal.py:178
msgid "Indirect Membership"
msgstr ""
-#: ipalib/plugins/internal.py:171
+#: ipalib/plugins/internal.py:179
msgid "No entries."
msgstr ""
-#: ipalib/plugins/internal.py:172
+#: ipalib/plugins/internal.py:180
+#, python-brace-format
msgid "Showing ${start} to ${end} of ${total} entries."
msgstr ""
-#: ipalib/plugins/internal.py:174
+#: ipalib/plugins/internal.py:182
+#, python-brace-format
msgid "Remove RunAs ${other_entity} from ${entity} ${primary_key}"
msgstr ""
-#: ipalib/plugins/internal.py:175
+#: ipalib/plugins/internal.py:183
+#, python-brace-format
msgid "Remove RunAs Groups from ${entity} ${primary_key}"
msgstr ""
-#: ipalib/plugins/internal.py:176
+#: ipalib/plugins/internal.py:184
+#, python-brace-format
msgid "Remove ${other_entity} Managing ${entity} ${primary_key}"
msgstr ""
-#: ipalib/plugins/internal.py:177
+#: ipalib/plugins/internal.py:185
+#, python-brace-format
msgid "Remove ${other_entity} from ${entity} ${primary_key}"
msgstr ""
-#: ipalib/plugins/internal.py:178
+#: ipalib/plugins/internal.py:186
+#, python-brace-format
msgid "Remove Allow ${other_entity} from ${entity} ${primary_key}"
msgstr ""
-#: ipalib/plugins/internal.py:179
+#: ipalib/plugins/internal.py:187
+#, python-brace-format
msgid "Remove Deny ${other_entity} from ${entity} ${primary_key}"
msgstr ""
-#: ipalib/plugins/internal.py:180
+#: ipalib/plugins/internal.py:188
+#, python-brace-format
msgid "Remove ${entity} ${primary_key} from ${other_entity}"
msgstr ""
-#: ipalib/plugins/internal.py:182
+#: ipalib/plugins/internal.py:190
+#, python-brace-format
msgid "${count} item(s) removed"
msgstr ""
-#: ipalib/plugins/internal.py:183
+#: ipalib/plugins/internal.py:191
msgid "Show Results"
msgstr ""
-#: ipalib/plugins/internal.py:186
+#: ipalib/plugins/internal.py:194 ipalib/plugins/internal.py:242
+msgid "About"
+msgstr ""
+
+#: ipalib/plugins/internal.py:195
msgid "Add"
msgstr ""
-#: ipalib/plugins/internal.py:187
+#: ipalib/plugins/internal.py:196
msgid "Add and Add Another"
msgstr ""
-#: ipalib/plugins/internal.py:188
+#: ipalib/plugins/internal.py:197
msgid "Add and Close"
msgstr ""
-#: ipalib/plugins/internal.py:189
+#: ipalib/plugins/internal.py:198
msgid "Add and Edit"
msgstr ""
-#: ipalib/plugins/internal.py:190
+#: ipalib/plugins/internal.py:199
msgid "Add Many"
msgstr ""
-#: ipalib/plugins/internal.py:191
+#: ipalib/plugins/internal.py:200
msgid "Back"
msgstr ""
-#: ipalib/plugins/internal.py:192
+#: ipalib/plugins/internal.py:201
msgid "Cancel"
msgstr ""
-#: ipalib/plugins/internal.py:193
+#: ipalib/plugins/internal.py:202
msgid "Close"
msgstr ""
-#: ipalib/plugins/internal.py:194 ipalib/plugins/internal.py:655
+#: ipalib/plugins/internal.py:203 ipalib/plugins/internal.py:683
msgid "Disable"
msgstr ""
-#: ipalib/plugins/internal.py:195
+#: ipalib/plugins/internal.py:204
msgid "Edit"
msgstr ""
-#: ipalib/plugins/internal.py:196 ipalib/plugins/internal.py:657
+#: ipalib/plugins/internal.py:205 ipalib/plugins/internal.py:685
msgid "Enable"
msgstr ""
-#: ipalib/plugins/internal.py:197
+#: ipalib/plugins/internal.py:207
msgid "Find"
msgstr ""
-#: ipalib/plugins/internal.py:198
+#: ipalib/plugins/internal.py:208
msgid "Get"
msgstr ""
-#: ipalib/plugins/internal.py:199
+#: ipalib/plugins/internal.py:209
msgid "Issue"
msgstr ""
-#: ipalib/plugins/internal.py:200
+#: ipalib/plugins/internal.py:210
msgid "OK"
msgstr ""
-#: ipalib/plugins/internal.py:201
+#: ipalib/plugins/internal.py:211
msgid "Refresh"
msgstr ""
-#: ipalib/plugins/internal.py:202
+#: ipalib/plugins/internal.py:212
msgid "Delete"
msgstr ""
-#: ipalib/plugins/internal.py:203
+#: ipalib/plugins/internal.py:213
msgid "Reset"
msgstr ""
-#: ipalib/plugins/internal.py:204
+#: ipalib/plugins/internal.py:214
msgid "Reset Password and Login"
msgstr ""
-#: ipalib/plugins/internal.py:205
+#: ipalib/plugins/internal.py:215
msgid "Restore"
msgstr ""
-#: ipalib/plugins/internal.py:206
+#: ipalib/plugins/internal.py:216
msgid "Retry"
msgstr ""
-#: ipalib/plugins/internal.py:207
+#: ipalib/plugins/internal.py:217
msgid "Revoke"
msgstr ""
-#: ipalib/plugins/internal.py:208
+#: ipalib/plugins/internal.py:218
msgid "Set"
msgstr ""
-#: ipalib/plugins/internal.py:209
+#: ipalib/plugins/internal.py:219
msgid "Update"
msgstr ""
-#: ipalib/plugins/internal.py:210
+#: ipalib/plugins/internal.py:220
msgid "View"
msgstr ""
-#: ipalib/plugins/internal.py:213
+#: ipalib/plugins/internal.py:223
msgid "Collapse All"
msgstr ""
-#: ipalib/plugins/internal.py:214
+#: ipalib/plugins/internal.py:224
msgid "Expand All"
msgstr ""
-#: ipalib/plugins/internal.py:215
+#: ipalib/plugins/internal.py:225
msgid "General"
msgstr ""
-#: ipalib/plugins/internal.py:216
+#: ipalib/plugins/internal.py:226
msgid "Identity Settings"
msgstr ""
-#: ipalib/plugins/internal.py:217
+#: ipalib/plugins/internal.py:227
+#, python-brace-format
msgid "${entity} ${primary_key} Settings"
msgstr ""
-#: ipalib/plugins/internal.py:218
+#: ipalib/plugins/internal.py:228
msgid "Back to Top"
msgstr ""
-#: ipalib/plugins/internal.py:219
+#: ipalib/plugins/internal.py:229
+#, python-brace-format
msgid "${entity} ${primary_key} updated"
msgstr ""
-#: ipalib/plugins/internal.py:222
+#: ipalib/plugins/internal.py:232
+#, python-brace-format
msgid "${entity} successfully added"
msgstr ""
-#: ipalib/plugins/internal.py:223
+#: ipalib/plugins/internal.py:233
+#, python-brace-format
msgid "Add ${entity}"
msgstr ""
-#: ipalib/plugins/internal.py:224
+#: ipalib/plugins/internal.py:234
msgid "Available"
msgstr ""
-#: ipalib/plugins/internal.py:225
+#: ipalib/plugins/internal.py:235
msgid "Some operations failed."
msgstr ""
-#: ipalib/plugins/internal.py:226
+#: ipalib/plugins/internal.py:236
msgid "Operations Error"
msgstr ""
-#: ipalib/plugins/internal.py:227
+#: ipalib/plugins/internal.py:237
msgid "Confirmation"
msgstr ""
-#: ipalib/plugins/internal.py:228
+#: ipalib/plugins/internal.py:238
msgid "This page has unsaved changes. Please save or revert."
msgstr ""
-#: ipalib/plugins/internal.py:229
+#: ipalib/plugins/internal.py:239
msgid "Unsaved Changes"
msgstr ""
-#: ipalib/plugins/internal.py:230
+#: ipalib/plugins/internal.py:240
+#, python-brace-format
msgid "Edit ${entity}"
msgstr ""
-#: ipalib/plugins/internal.py:231
+#: ipalib/plugins/internal.py:241
msgid "Hide details"
msgstr ""
-#: ipalib/plugins/internal.py:232
+#: ipalib/plugins/internal.py:243
+#, python-brace-format
+msgid "${product}, version: ${version}"
+msgstr ""
+
+#: ipalib/plugins/internal.py:244
msgid "Prospective"
msgstr ""
-#: ipalib/plugins/internal.py:233
+#: ipalib/plugins/internal.py:245
msgid "Redirection"
msgstr ""
-#: ipalib/plugins/internal.py:234
+#: ipalib/plugins/internal.py:246
msgid "Select entries to be removed."
msgstr ""
-#: ipalib/plugins/internal.py:235
+#: ipalib/plugins/internal.py:247
+#, python-brace-format
msgid "Remove ${entity}"
msgstr ""
-#: ipalib/plugins/internal.py:236
+#: ipalib/plugins/internal.py:248
msgid "Show details"
msgstr ""
-#: ipalib/plugins/internal.py:237
+#: ipalib/plugins/internal.py:249
msgid "Validation error"
msgstr ""
-#: ipalib/plugins/internal.py:238
+#: ipalib/plugins/internal.py:250
msgid "Input form contains invalid or missing values."
msgstr ""
-#: ipalib/plugins/internal.py:241
+#: ipalib/plugins/internal.py:253
msgid "Please try the following options:"
msgstr ""
-#: ipalib/plugins/internal.py:242
+#: ipalib/plugins/internal.py:254
msgid "If the problem persists please contact the system administrator."
msgstr ""
-#: ipalib/plugins/internal.py:243
+#: ipalib/plugins/internal.py:255
msgid "Refresh the page."
msgstr ""
-#: ipalib/plugins/internal.py:244
+#: ipalib/plugins/internal.py:256
msgid "Reload the browser."
msgstr ""
-#: ipalib/plugins/internal.py:245
+#: ipalib/plugins/internal.py:257
msgid "Return to the main page and retry the operation"
msgstr ""
-#: ipalib/plugins/internal.py:246
+#: ipalib/plugins/internal.py:258
+#, python-brace-format
msgid "An error has occurred (${error})"
msgstr ""
-#: ipalib/plugins/internal.py:250
+#: ipalib/plugins/internal.py:262
msgid "HTTP Error"
msgstr ""
-#: ipalib/plugins/internal.py:251
+#: ipalib/plugins/internal.py:263
msgid "Internal Error"
msgstr ""
-#: ipalib/plugins/internal.py:252
+#: ipalib/plugins/internal.py:264
msgid "IPA Error"
msgstr ""
-#: ipalib/plugins/internal.py:253
+#: ipalib/plugins/internal.py:265
msgid "No response"
msgstr ""
-#: ipalib/plugins/internal.py:254
+#: ipalib/plugins/internal.py:266
msgid "Unknown Error"
msgstr ""
-#: ipalib/plugins/internal.py:255
+#: ipalib/plugins/internal.py:267
msgid "URL"
msgstr ""
-#: ipalib/plugins/internal.py:258
+#: ipalib/plugins/internal.py:270
+#, python-brace-format
msgid "${primary_key} is managed by:"
msgstr ""
-#: ipalib/plugins/internal.py:259
+#: ipalib/plugins/internal.py:271
+#, python-brace-format
msgid "${primary_key} members:"
msgstr ""
-#: ipalib/plugins/internal.py:260
+#: ipalib/plugins/internal.py:272
+#, python-brace-format
msgid "${primary_key} is a member of:"
msgstr ""
-#: ipalib/plugins/internal.py:263
+#: ipalib/plugins/internal.py:275
msgid "Settings"
msgstr ""
-#: ipalib/plugins/internal.py:264
+#: ipalib/plugins/internal.py:276 ipalib/plugins/internal.py:676
msgid "Search"
msgstr ""
-#: ipalib/plugins/internal.py:266
+#: ipalib/plugins/internal.py:278
msgid "False"
msgstr ""
-#: ipalib/plugins/internal.py:268
+#: ipalib/plugins/internal.py:280
msgid "Inherited from server configuration"
msgstr ""
-#: ipalib/plugins/internal.py:269
+#: ipalib/plugins/internal.py:281
msgid "MS-PAC"
msgstr ""
-#: ipalib/plugins/internal.py:270
+#: ipalib/plugins/internal.py:282
msgid "Override inherited settings"
msgstr ""
-#: ipalib/plugins/internal.py:271
+#: ipalib/plugins/internal.py:283
msgid "PAD"
msgstr ""
-#: ipalib/plugins/internal.py:274
+#: ipalib/plugins/internal.py:286
msgid ""
"To login with username and password, enter them in the fields below then "
"click Login."
msgstr ""
-#: ipalib/plugins/internal.py:275
+#: ipalib/plugins/internal.py:287
msgid "Logged In As"
msgstr ""
-#: ipalib/plugins/internal.py:276
+#: ipalib/plugins/internal.py:288
+#, python-brace-format
msgid ""
"To login with Kerberos, please make sure you have valid tickets (obtainable "
"via kinit) and <a href='http://${host}/ipa/config/unauthorized."
"html'>configured</a> the browser correctly, then click Login."
msgstr ""
-#: ipalib/plugins/internal.py:277
+#: ipalib/plugins/internal.py:289
msgid "Login"
msgstr ""
-#: ipalib/plugins/internal.py:278
+#: ipalib/plugins/internal.py:290
msgid "Logout"
msgstr ""
-#: ipalib/plugins/internal.py:279
+#: ipalib/plugins/internal.py:291
msgid "Logout error"
msgstr ""
-#: ipalib/plugins/internal.py:281
+#: ipalib/plugins/internal.py:293
msgid "Username"
msgstr ""
-#: ipalib/plugins/internal.py:284
+#: ipalib/plugins/internal.py:296
msgid "number of passwords"
msgstr ""
-#: ipalib/plugins/internal.py:285
+#: ipalib/plugins/internal.py:297
msgid "seconds"
msgstr ""
-#: ipalib/plugins/internal.py:289 ipalib/plugins/internal.py:294
+#: ipalib/plugins/internal.py:301 ipalib/plugins/internal.py:306
msgid "Attribute"
msgstr ""
-#: ipalib/plugins/internal.py:292
+#: ipalib/plugins/internal.py:304
+#, python-brace-format
msgid "Add Condition into ${pkey}"
msgstr ""
-#: ipalib/plugins/internal.py:293
+#: ipalib/plugins/internal.py:305
msgid "Add Rule"
msgstr ""
-#: ipalib/plugins/internal.py:295
+#: ipalib/plugins/internal.py:307
msgid "Default host group"
msgstr ""
-#: ipalib/plugins/internal.py:296
+#: ipalib/plugins/internal.py:308
msgid "Default user group"
msgstr ""
-#: ipalib/plugins/internal.py:297
+#: ipalib/plugins/internal.py:309
msgid "Exclusive"
msgstr ""
-#: ipalib/plugins/internal.py:298
+#: ipalib/plugins/internal.py:310
msgid "Expression"
msgstr ""
-#: ipalib/plugins/internal.py:299
+#: ipalib/plugins/internal.py:311
msgid "Host group rule"
msgstr ""
-#: ipalib/plugins/internal.py:300
+#: ipalib/plugins/internal.py:312
msgid "Host group rules"
msgstr ""
-#: ipalib/plugins/internal.py:301
+#: ipalib/plugins/internal.py:313
msgid "Inclusive"
msgstr ""
-#: ipalib/plugins/internal.py:302
+#: ipalib/plugins/internal.py:314
msgid "User group rule"
msgstr ""
-#: ipalib/plugins/internal.py:303
+#: ipalib/plugins/internal.py:315
msgid "User group rules"
msgstr ""
-#: ipalib/plugins/internal.py:308
+#: ipalib/plugins/internal.py:320
msgid "Automount Location Settings"
msgstr ""
-#: ipalib/plugins/internal.py:311
+#: ipalib/plugins/internal.py:323
msgid "Map Type"
msgstr ""
-#: ipalib/plugins/internal.py:312
+#: ipalib/plugins/internal.py:324
msgid "Direct"
msgstr ""
-#: ipalib/plugins/internal.py:313
+#: ipalib/plugins/internal.py:325
msgid "Indirect"
msgstr ""
-#: ipalib/plugins/internal.py:316
+#: ipalib/plugins/internal.py:328
msgid "AA Compromise"
msgstr ""
-#: ipalib/plugins/internal.py:317
+#: ipalib/plugins/internal.py:329
msgid "Affiliation Changed"
msgstr ""
-#: ipalib/plugins/internal.py:318
+#: ipalib/plugins/internal.py:330
msgid "CA Compromise"
msgstr ""
-#: ipalib/plugins/internal.py:320 ipalib/plugins/internal.py:665
+#: ipalib/plugins/internal.py:332 ipalib/plugins/internal.py:694
msgid "Certificates"
msgstr ""
-#: ipalib/plugins/internal.py:321
+#: ipalib/plugins/internal.py:333
msgid "Certificate Hold"
msgstr ""
-#: ipalib/plugins/internal.py:322
+#: ipalib/plugins/internal.py:334
msgid "Cessation of Operation"
msgstr ""
-#: ipalib/plugins/internal.py:323
+#: ipalib/plugins/internal.py:335
msgid "Common Name"
msgstr ""
-#: ipalib/plugins/internal.py:324
+#: ipalib/plugins/internal.py:336
msgid "Expires On"
msgstr ""
-#: ipalib/plugins/internal.py:325
+#: ipalib/plugins/internal.py:337
msgid "Issued on from"
msgstr ""
-#: ipalib/plugins/internal.py:326
+#: ipalib/plugins/internal.py:338
msgid "Issued on to"
msgstr ""
-#: ipalib/plugins/internal.py:327
+#: ipalib/plugins/internal.py:339
msgid "Maximum serial number"
msgstr ""
-#: ipalib/plugins/internal.py:328
+#: ipalib/plugins/internal.py:340
msgid "Minimum serial number"
msgstr ""
-#: ipalib/plugins/internal.py:330
+#: ipalib/plugins/internal.py:342
msgid "Revoked on from"
msgstr ""
-#: ipalib/plugins/internal.py:331
+#: ipalib/plugins/internal.py:343
msgid "Revoked on to"
msgstr ""
-#: ipalib/plugins/internal.py:333
+#: ipalib/plugins/internal.py:345
msgid "Valid not after from"
msgstr ""
-#: ipalib/plugins/internal.py:334
+#: ipalib/plugins/internal.py:346
msgid "Valid not after to"
msgstr ""
-#: ipalib/plugins/internal.py:335
+#: ipalib/plugins/internal.py:347
msgid "Valid not before from"
msgstr ""
-#: ipalib/plugins/internal.py:336
+#: ipalib/plugins/internal.py:348
msgid "Valid not before to"
msgstr ""
-#: ipalib/plugins/internal.py:337
+#: ipalib/plugins/internal.py:349
msgid "Fingerprints"
msgstr ""
-#: ipalib/plugins/internal.py:338
+#: ipalib/plugins/internal.py:350
+msgid "Get Certificate"
+msgstr ""
+
+#: ipalib/plugins/internal.py:351
+#, python-brace-format
msgid "Issue New Certificate for ${entity} ${primary_key}"
msgstr ""
-#: ipalib/plugins/internal.py:339
+#: ipalib/plugins/internal.py:352
msgid "Issued By"
msgstr ""
-#: ipalib/plugins/internal.py:340
+#: ipalib/plugins/internal.py:353
msgid "Issued On"
msgstr ""
-#: ipalib/plugins/internal.py:341
+#: ipalib/plugins/internal.py:354
msgid "Issued To"
msgstr ""
-#: ipalib/plugins/internal.py:342
+#: ipalib/plugins/internal.py:355
msgid "Key Compromise"
msgstr ""
-#: ipalib/plugins/internal.py:343
+#: ipalib/plugins/internal.py:356
msgid "MD5 Fingerprint"
msgstr ""
-#: ipalib/plugins/internal.py:344
+#: ipalib/plugins/internal.py:357
msgid "No Valid Certificate"
msgstr ""
-#: ipalib/plugins/internal.py:345
+#: ipalib/plugins/internal.py:358
msgid "New Certificate"
msgstr ""
-#: ipalib/plugins/internal.py:346
+#: ipalib/plugins/internal.py:359
msgid "Note"
msgstr ""
-#: ipalib/plugins/internal.py:347
+#: ipalib/plugins/internal.py:360
msgid "Organization"
msgstr ""
-#: ipalib/plugins/internal.py:348
+#: ipalib/plugins/internal.py:361
msgid "Organizational Unit"
msgstr ""
-#: ipalib/plugins/internal.py:349
+#: ipalib/plugins/internal.py:362
msgid "Privilege Withdrawn"
msgstr ""
-#: ipalib/plugins/internal.py:350
+#: ipalib/plugins/internal.py:363
msgid "Reason for Revocation"
msgstr ""
-#: ipalib/plugins/internal.py:351
+#: ipalib/plugins/internal.py:364
msgid "Remove from CRL"
msgstr ""
-#: ipalib/plugins/internal.py:352
+#: ipalib/plugins/internal.py:365
+#, python-brace-format
msgid ""
"<ol> <li>Create a certificate database or use an existing one. To create a "
"new database:<br/> <code># certutil -N -d &lt;database path&gt;</code> </li> "
@@ -6123,919 +6529,990 @@ msgid ""
"NEW CERTIFICATE REQUEST-----</em>) into the text area below: </li> </ol>"
msgstr ""
-#: ipalib/plugins/internal.py:353
+#: ipalib/plugins/internal.py:366
msgid "Certificate requested"
msgstr ""
-#: ipalib/plugins/internal.py:354
+#: ipalib/plugins/internal.py:367
+#, python-brace-format
msgid "Restore Certificate for ${entity} ${primary_key}"
msgstr ""
-#: ipalib/plugins/internal.py:355
+#: ipalib/plugins/internal.py:368
msgid "Restore Certificate"
msgstr ""
-#: ipalib/plugins/internal.py:356
+#: ipalib/plugins/internal.py:369
msgid ""
"To confirm your intention to restore this certificate, click the \"Restore\" "
"button."
msgstr ""
-#: ipalib/plugins/internal.py:357
+#: ipalib/plugins/internal.py:370
msgid "Certificate restored"
msgstr ""
-#: ipalib/plugins/internal.py:359
+#: ipalib/plugins/internal.py:372
+#, python-brace-format
msgid "Revoke Certificate for ${entity} ${primary_key}"
msgstr ""
-#: ipalib/plugins/internal.py:360
+#: ipalib/plugins/internal.py:373
msgid "Revoke Certificate"
msgstr ""
-#: ipalib/plugins/internal.py:361
+#: ipalib/plugins/internal.py:374
msgid ""
"To confirm your intention to revoke this certificate, select a reason from "
"the pull-down list, and click the \"Revoke\" button."
msgstr ""
-#: ipalib/plugins/internal.py:362
+#: ipalib/plugins/internal.py:375
msgid "Certificate Revoked"
msgstr ""
-#: ipalib/plugins/internal.py:365
+#: ipalib/plugins/internal.py:378
msgid "SHA1 Fingerprint"
msgstr ""
-#: ipalib/plugins/internal.py:367
+#: ipalib/plugins/internal.py:380
msgid "Superseded"
msgstr ""
-#: ipalib/plugins/internal.py:368
+#: ipalib/plugins/internal.py:381
msgid "Unspecified"
msgstr ""
-#: ipalib/plugins/internal.py:369
+#: ipalib/plugins/internal.py:382
msgid "Valid Certificate Present"
msgstr ""
-#: ipalib/plugins/internal.py:370
+#: ipalib/plugins/internal.py:383
msgid "Validity"
msgstr ""
-#: ipalib/plugins/internal.py:371
+#: ipalib/plugins/internal.py:384
+#, python-brace-format
msgid "Certificate for ${entity} ${primary_key}"
msgstr ""
-#: ipalib/plugins/internal.py:374
+#: ipalib/plugins/internal.py:385
+msgid "View Certificate"
+msgstr ""
+
+#: ipalib/plugins/internal.py:388
msgid "Group Options"
msgstr ""
-#: ipalib/plugins/internal.py:375
+#: ipalib/plugins/internal.py:389
msgid "Search Options"
msgstr ""
-#: ipalib/plugins/internal.py:376
+#: ipalib/plugins/internal.py:390
msgid "SELinux Options"
msgstr ""
-#: ipalib/plugins/internal.py:377
+#: ipalib/plugins/internal.py:391
msgid "Service Options"
msgstr ""
-#: ipalib/plugins/internal.py:378
+#: ipalib/plugins/internal.py:392
msgid "User Options"
msgstr ""
-#: ipalib/plugins/internal.py:383
+#: ipalib/plugins/internal.py:397
msgid "Forward first"
msgstr ""
-#: ipalib/plugins/internal.py:384
+#: ipalib/plugins/internal.py:398
msgid "Forwarding disabled"
msgstr ""
-#: ipalib/plugins/internal.py:385
+#: ipalib/plugins/internal.py:399
msgid "Forward only"
msgstr ""
-#: ipalib/plugins/internal.py:386 ipalib/plugins/internal.py:588
-#: ipalib/plugins/internal.py:611
+#: ipalib/plugins/internal.py:400 ipalib/plugins/internal.py:611
+#: ipalib/plugins/internal.py:635
msgid "Options"
msgstr ""
-#: ipalib/plugins/internal.py:389
+#: ipalib/plugins/internal.py:403
msgid "Data"
msgstr ""
-#: ipalib/plugins/internal.py:390
+#: ipalib/plugins/internal.py:404
msgid "DNS record was deleted because it contained no data."
msgstr ""
-#: ipalib/plugins/internal.py:391
+#: ipalib/plugins/internal.py:405
msgid "Other Record Types"
msgstr ""
-#: ipalib/plugins/internal.py:392
+#: ipalib/plugins/internal.py:406
msgid "Address not valid, can't redirect"
msgstr ""
-#: ipalib/plugins/internal.py:393
+#: ipalib/plugins/internal.py:407
msgid "Create dns record"
msgstr ""
-#: ipalib/plugins/internal.py:394
+#: ipalib/plugins/internal.py:408
msgid "Creating record."
msgstr ""
-#: ipalib/plugins/internal.py:395
+#: ipalib/plugins/internal.py:409
msgid "Record creation failed."
msgstr ""
-#: ipalib/plugins/internal.py:396
+#: ipalib/plugins/internal.py:410
msgid "Checking if record exists."
msgstr ""
-#: ipalib/plugins/internal.py:397
+#: ipalib/plugins/internal.py:411
msgid "Record not found."
msgstr ""
-#: ipalib/plugins/internal.py:398
+#: ipalib/plugins/internal.py:412
msgid "Redirection to PTR record"
msgstr ""
-#: ipalib/plugins/internal.py:399
+#: ipalib/plugins/internal.py:413
+#, python-brace-format
msgid "Zone found: ${zone}"
msgstr ""
-#: ipalib/plugins/internal.py:400
+#: ipalib/plugins/internal.py:414
msgid "Target reverse zone not found."
msgstr ""
-#: ipalib/plugins/internal.py:401
+#: ipalib/plugins/internal.py:415
msgid "Fetching DNS zones."
msgstr ""
-#: ipalib/plugins/internal.py:402
+#: ipalib/plugins/internal.py:416
msgid "An error occurred while fetching dns zones."
msgstr ""
-#: ipalib/plugins/internal.py:403
+#: ipalib/plugins/internal.py:417
msgid "You will be redirected to DNS Zone."
msgstr ""
-#: ipalib/plugins/internal.py:404
+#: ipalib/plugins/internal.py:418
msgid "Standard Record Types"
msgstr ""
-#: ipalib/plugins/internal.py:405
+#: ipalib/plugins/internal.py:419
msgid "Records for DNS Zone"
msgstr ""
-#: ipalib/plugins/internal.py:406
+#: ipalib/plugins/internal.py:420
msgid "Record Type"
msgstr ""
-#: ipalib/plugins/internal.py:409
+#: ipalib/plugins/internal.py:423
msgid "DNS Zone Settings"
msgstr ""
-#: ipalib/plugins/internal.py:410
+#: ipalib/plugins/internal.py:424
msgid "Add Permission"
msgstr ""
-#: ipalib/plugins/internal.py:411
+#: ipalib/plugins/internal.py:425
+#, python-brace-format
+msgid "Are you sure you want to add permission for DNS Zone ${object}?"
+msgstr ""
+
+#: ipalib/plugins/internal.py:426
msgid "Remove Permission"
msgstr ""
-#: ipalib/plugins/internal.py:414
+#: ipalib/plugins/internal.py:427
+#, python-brace-format
+msgid "Are you sure you want to remove permission for DNS Zone ${object}?"
+msgstr ""
+
+#: ipalib/plugins/internal.py:430
msgid "Group Settings"
msgstr ""
-#: ipalib/plugins/internal.py:415 ipalib/plugins/internal.py:487
-#: ipalib/plugins/internal.py:583
+#: ipalib/plugins/internal.py:431 ipalib/plugins/internal.py:503
+#: ipalib/plugins/internal.py:606
msgid "External"
msgstr ""
-#: ipalib/plugins/internal.py:416
+#: ipalib/plugins/internal.py:432
msgid "Change to external group"
msgstr ""
-#: ipalib/plugins/internal.py:417
+#: ipalib/plugins/internal.py:433
msgid "Change to POSIX group"
msgstr ""
-#: ipalib/plugins/internal.py:418
+#: ipalib/plugins/internal.py:434
msgid "Normal"
msgstr ""
-#: ipalib/plugins/internal.py:419
+#: ipalib/plugins/internal.py:435
msgid "POSIX"
msgstr ""
-#: ipalib/plugins/internal.py:420
+#: ipalib/plugins/internal.py:436
msgid "Group Type"
msgstr ""
-#: ipalib/plugins/internal.py:423 ipalib/plugins/internal.py:485
-#: ipalib/plugins/internal.py:537 ipalib/plugins/internal.py:579
+#: ipalib/plugins/internal.py:439 ipalib/plugins/internal.py:501
+#: ipalib/plugins/internal.py:560 ipalib/plugins/internal.py:602
msgid "Any Host"
msgstr ""
-#: ipalib/plugins/internal.py:424
+#: ipalib/plugins/internal.py:440
msgid "Any Service"
msgstr ""
-#: ipalib/plugins/internal.py:425 ipalib/plugins/internal.py:486
-#: ipalib/plugins/internal.py:538 ipalib/plugins/internal.py:580
+#: ipalib/plugins/internal.py:441 ipalib/plugins/internal.py:502
+#: ipalib/plugins/internal.py:561 ipalib/plugins/internal.py:603
msgid "Anyone"
msgstr ""
-#: ipalib/plugins/internal.py:426
+#: ipalib/plugins/internal.py:442
msgid "Accessing"
msgstr ""
-#: ipalib/plugins/internal.py:427 ipalib/plugins/internal.py:585
+#: ipalib/plugins/internal.py:443 ipalib/plugins/internal.py:608
msgid "Rule status"
msgstr ""
-#: ipalib/plugins/internal.py:428
+#: ipalib/plugins/internal.py:444
msgid "Via Service"
msgstr ""
-#: ipalib/plugins/internal.py:429 ipalib/plugins/internal.py:492
-#: ipalib/plugins/internal.py:540 ipalib/plugins/internal.py:592
+#: ipalib/plugins/internal.py:445 ipalib/plugins/internal.py:508
+#: ipalib/plugins/internal.py:563 ipalib/plugins/internal.py:615
msgid "Specified Hosts and Groups"
msgstr ""
-#: ipalib/plugins/internal.py:430
+#: ipalib/plugins/internal.py:446
msgid "Specified Services and Groups"
msgstr ""
-#: ipalib/plugins/internal.py:431 ipalib/plugins/internal.py:493
-#: ipalib/plugins/internal.py:541 ipalib/plugins/internal.py:593
+#: ipalib/plugins/internal.py:447 ipalib/plugins/internal.py:509
+#: ipalib/plugins/internal.py:564 ipalib/plugins/internal.py:616
msgid "Specified Users and Groups"
msgstr ""
-#: ipalib/plugins/internal.py:432 ipalib/plugins/internal.py:594
+#: ipalib/plugins/internal.py:448 ipalib/plugins/internal.py:617
msgid "Who"
msgstr ""
-#: ipalib/plugins/internal.py:440
+#: ipalib/plugins/internal.py:456
msgid "Access Denied"
msgstr ""
-#: ipalib/plugins/internal.py:441
+#: ipalib/plugins/internal.py:457
msgid "Access Granted"
msgstr ""
-#: ipalib/plugins/internal.py:442
+#: ipalib/plugins/internal.py:458
msgid "Include Disabled"
msgstr ""
-#: ipalib/plugins/internal.py:443
+#: ipalib/plugins/internal.py:459
msgid "Include Enabled"
msgstr ""
-#: ipalib/plugins/internal.py:444
+#: ipalib/plugins/internal.py:460
msgid "HBAC Test"
msgstr ""
-#: ipalib/plugins/internal.py:445
+#: ipalib/plugins/internal.py:461
msgid "Matched"
msgstr ""
-#: ipalib/plugins/internal.py:446
+#: ipalib/plugins/internal.py:462
msgid "Missing values: "
msgstr ""
-#: ipalib/plugins/internal.py:447
+#: ipalib/plugins/internal.py:463
msgid "New Test"
msgstr ""
-#: ipalib/plugins/internal.py:448
+#: ipalib/plugins/internal.py:464
msgid "Rules"
msgstr ""
-#: ipalib/plugins/internal.py:449
+#: ipalib/plugins/internal.py:465
msgid "Run Test"
msgstr ""
-#: ipalib/plugins/internal.py:450
+#: ipalib/plugins/internal.py:466
+#, python-brace-format
msgid "Specify external ${entity}"
msgstr ""
-#: ipalib/plugins/internal.py:451
+#: ipalib/plugins/internal.py:467
msgid "Unmatched"
msgstr ""
-#: ipalib/plugins/internal.py:454
+#: ipalib/plugins/internal.py:470
msgid "Host Certificate"
msgstr ""
-#: ipalib/plugins/internal.py:455 ipalib/plugins/internal.py:548
+#: ipalib/plugins/internal.py:471 ipalib/plugins/internal.py:571
msgid "Host Name"
msgstr ""
-#: ipalib/plugins/internal.py:456 ipalib/plugins/internal.py:546
+#: ipalib/plugins/internal.py:472 ipalib/plugins/internal.py:569
msgid "Delete Key, Unprovision"
msgstr ""
-#: ipalib/plugins/internal.py:457
+#: ipalib/plugins/internal.py:473
msgid "Host Settings"
msgstr ""
-#: ipalib/plugins/internal.py:458
+#: ipalib/plugins/internal.py:474
msgid "Enrolled"
msgstr ""
-#: ipalib/plugins/internal.py:459
+#: ipalib/plugins/internal.py:475
msgid "Enrollment"
msgstr ""
-#: ipalib/plugins/internal.py:460
+#: ipalib/plugins/internal.py:476
msgid "Fully Qualified Host Name"
msgstr ""
-#: ipalib/plugins/internal.py:461
+#: ipalib/plugins/internal.py:477
msgid "Kerberos Key"
msgstr ""
-#: ipalib/plugins/internal.py:462 ipalib/plugins/internal.py:549
+#: ipalib/plugins/internal.py:478 ipalib/plugins/internal.py:572
msgid "Kerberos Key Not Present"
msgstr ""
-#: ipalib/plugins/internal.py:463
+#: ipalib/plugins/internal.py:479
msgid "Kerberos Key Present, Host Provisioned"
msgstr ""
-#: ipalib/plugins/internal.py:464
+#: ipalib/plugins/internal.py:480 ipalib/plugins/internal.py:658
msgid "One-Time-Password"
msgstr ""
-#: ipalib/plugins/internal.py:465
+#: ipalib/plugins/internal.py:481
msgid "One-Time-Password Not Present"
msgstr ""
-#: ipalib/plugins/internal.py:466
+#: ipalib/plugins/internal.py:482
msgid "One-Time-Password Present"
msgstr ""
-#: ipalib/plugins/internal.py:467
+#: ipalib/plugins/internal.py:483
msgid "Reset OTP"
msgstr ""
-#: ipalib/plugins/internal.py:468
+#: ipalib/plugins/internal.py:484
msgid "Reset One-Time-Password"
msgstr ""
-#: ipalib/plugins/internal.py:469
+#: ipalib/plugins/internal.py:485
msgid "Set OTP"
msgstr ""
-#: ipalib/plugins/internal.py:470
+#: ipalib/plugins/internal.py:486
msgid "OTP set"
msgstr ""
-#: ipalib/plugins/internal.py:471
+#: ipalib/plugins/internal.py:487
msgid "Set One-Time-Password"
msgstr ""
-#: ipalib/plugins/internal.py:473 ipalib/plugins/internal.py:553
+#: ipalib/plugins/internal.py:489 ipalib/plugins/internal.py:576
msgid "Unprovision"
msgstr ""
-#: ipalib/plugins/internal.py:474
+#: ipalib/plugins/internal.py:490
msgid "Are you sure you want to unprovision this host?"
msgstr ""
-#: ipalib/plugins/internal.py:475 ipalib/plugins/internal.py:555
+#: ipalib/plugins/internal.py:491 ipalib/plugins/internal.py:578
+#, python-brace-format
msgid "Unprovisioning ${entity}"
msgstr ""
-#: ipalib/plugins/internal.py:476
+#: ipalib/plugins/internal.py:492
msgid "Host unprovisioned"
msgstr ""
-#: ipalib/plugins/internal.py:479
+#: ipalib/plugins/internal.py:495
msgid "Host Group Settings"
msgstr ""
-#: ipalib/plugins/internal.py:482 ipalib/plugins/krbtpolicy.py:79
-#: ipalib/plugins/krbtpolicy.py:80
+#: ipalib/plugins/internal.py:498 ipalib/plugins/krbtpolicy.py:118
+#: ipalib/plugins/krbtpolicy.py:119
msgid "Kerberos Ticket Policy"
msgstr ""
-#: ipalib/plugins/internal.py:491
+#: ipalib/plugins/internal.py:507
msgid "Netgroup Settings"
msgstr ""
-#: ipalib/plugins/internal.py:494 ipalib/plugins/internal.py:542
-#: ipalib/plugins/pwpolicy.py:444 ipalib/plugins/user.py:226
+#: ipalib/plugins/internal.py:510 ipalib/plugins/internal.py:565
+#: ipalib/plugins/pwpolicy.py:519 ipalib/plugins/user.py:430
msgid "User"
msgstr ""
-#: ipalib/plugins/internal.py:499 ipalib/plugins/internal.py:668
-msgid "Identity"
+#: ipalib/plugins/internal.py:520
+msgid "Permission settings"
msgstr ""
-#: ipalib/plugins/internal.py:500
-msgid "Permission with invalid target specification"
+#: ipalib/plugins/internal.py:521
+msgid "Attribute breakdown"
msgstr ""
-#: ipalib/plugins/internal.py:505
+#: ipalib/plugins/internal.py:525
msgid "Privilege Settings"
msgstr ""
-#: ipalib/plugins/internal.py:508 ipalib/plugins/pwpolicy.py:224
+#: ipalib/plugins/internal.py:528 ipalib/plugins/pwpolicy.py:303
msgid "Password Policy"
msgstr ""
-#: ipalib/plugins/internal.py:511
+#: ipalib/plugins/internal.py:531
msgid "Range Settings"
msgstr ""
-#: ipalib/plugins/internal.py:512
+#: ipalib/plugins/internal.py:532
msgid "Base ID"
msgstr ""
-#: ipalib/plugins/internal.py:513
+#: ipalib/plugins/internal.py:533
msgid "Primary RID base"
msgstr ""
-#: ipalib/plugins/internal.py:514
+#: ipalib/plugins/internal.py:534
msgid "Range size"
msgstr ""
-#: ipalib/plugins/internal.py:515
+#: ipalib/plugins/internal.py:535
msgid "Domain SID"
msgstr ""
-#: ipalib/plugins/internal.py:516
+#: ipalib/plugins/internal.py:536
msgid "Secondary RID base"
msgstr ""
-#: ipalib/plugins/internal.py:518 ipalib/plugins/trust.py:142
+#: ipalib/plugins/internal.py:538 ipalib/plugins/trust.py:145
msgid "Active Directory domain"
msgstr ""
-#: ipalib/plugins/internal.py:519
+#: ipalib/plugins/internal.py:539
msgid "Active Directory domain with POSIX attributes"
msgstr ""
-#: ipalib/plugins/internal.py:520
+#: ipalib/plugins/internal.py:540
msgid "Detect"
msgstr ""
-#: ipalib/plugins/internal.py:521
+#: ipalib/plugins/internal.py:541
msgid "Local domain"
msgstr ""
-#: ipalib/plugins/internal.py:522
+#: ipalib/plugins/internal.py:542
msgid "IPA trust"
msgstr ""
-#: ipalib/plugins/internal.py:523
+#: ipalib/plugins/internal.py:543
msgid "Active Directory winsync"
msgstr ""
-#: ipalib/plugins/internal.py:526 ipalib/plugins/realmdomains.py:65
-#: ipalib/plugins/realmdomains.py:66
+#: ipalib/plugins/internal.py:546
+msgid "RADIUS Proxy Server Settings"
+msgstr ""
+
+#: ipalib/plugins/internal.py:549 ipalib/plugins/realmdomains.py:84
+#: ipalib/plugins/realmdomains.py:85
msgid "Realm Domains"
msgstr ""
-#: ipalib/plugins/internal.py:527
+#: ipalib/plugins/internal.py:550
msgid "Check DNS"
msgstr ""
-#: ipalib/plugins/internal.py:528
+#: ipalib/plugins/internal.py:551
msgid "Do you also want to perform DNS check?"
msgstr ""
-#: ipalib/plugins/internal.py:529
+#: ipalib/plugins/internal.py:552
msgid "Force Update"
msgstr ""
-#: ipalib/plugins/internal.py:532
+#: ipalib/plugins/internal.py:555
msgid "Role Settings"
msgstr ""
-#: ipalib/plugins/internal.py:545
+#: ipalib/plugins/internal.py:568
msgid "Service Certificate"
msgstr ""
-#: ipalib/plugins/internal.py:547
+#: ipalib/plugins/internal.py:570
msgid "Service Settings"
msgstr ""
-#: ipalib/plugins/internal.py:550
+#: ipalib/plugins/internal.py:573
msgid "Provisioning"
msgstr ""
-#: ipalib/plugins/internal.py:554
+#: ipalib/plugins/internal.py:577
msgid "Are you sure you want to unprovision this service?"
msgstr ""
-#: ipalib/plugins/internal.py:556
+#: ipalib/plugins/internal.py:579
msgid "Service unprovisioned"
msgstr ""
-#: ipalib/plugins/internal.py:557
+#: ipalib/plugins/internal.py:580
msgid "Kerberos Key Present, Service Provisioned"
msgstr ""
-#: ipalib/plugins/internal.py:560
+#: ipalib/plugins/internal.py:583
msgid "SSH public keys"
msgstr ""
-#: ipalib/plugins/internal.py:561
+#: ipalib/plugins/internal.py:584
msgid "SSH public key:"
msgstr ""
-#: ipalib/plugins/internal.py:562
+#: ipalib/plugins/internal.py:585
msgid "Set SSH key"
msgstr ""
-#: ipalib/plugins/internal.py:563
+#: ipalib/plugins/internal.py:586
msgid "Show/Set key"
msgstr ""
-#: ipalib/plugins/internal.py:564
+#: ipalib/plugins/internal.py:587
msgid "Modified: key not set"
msgstr ""
-#: ipalib/plugins/internal.py:565
+#: ipalib/plugins/internal.py:588
msgid "Modified"
msgstr ""
-#: ipalib/plugins/internal.py:566
+#: ipalib/plugins/internal.py:589
msgid "New: key not set"
msgstr ""
-#: ipalib/plugins/internal.py:567
+#: ipalib/plugins/internal.py:590
msgid "New: key set"
msgstr ""
-#: ipalib/plugins/internal.py:570
+#: ipalib/plugins/internal.py:593
msgid "Groups"
msgstr ""
-#: ipalib/plugins/internal.py:573 ipalib/plugins/sudocmdgroup.py:82
+#: ipalib/plugins/internal.py:596 ipalib/plugins/sudocmdgroup.py:126
msgid "Commands"
msgstr ""
-#: ipalib/plugins/internal.py:576
+#: ipalib/plugins/internal.py:599
msgid "Allow"
msgstr ""
-#: ipalib/plugins/internal.py:577
+#: ipalib/plugins/internal.py:600
msgid "Any Command"
msgstr ""
-#: ipalib/plugins/internal.py:578
+#: ipalib/plugins/internal.py:601
msgid "Any Group"
msgstr ""
-#: ipalib/plugins/internal.py:581
+#: ipalib/plugins/internal.py:604
msgid "Run Commands"
msgstr ""
-#: ipalib/plugins/internal.py:582
+#: ipalib/plugins/internal.py:605
msgid "Deny"
msgstr ""
-#: ipalib/plugins/internal.py:584
+#: ipalib/plugins/internal.py:607
msgid "Access this host"
msgstr ""
-#: ipalib/plugins/internal.py:586
+#: ipalib/plugins/internal.py:609
msgid "Option added"
msgstr ""
-#: ipalib/plugins/internal.py:587
+#: ipalib/plugins/internal.py:610
+#, python-brace-format
msgid "${count} option(s) removed"
msgstr ""
-#: ipalib/plugins/internal.py:589
+#: ipalib/plugins/internal.py:612
msgid "As Whom"
msgstr ""
-#: ipalib/plugins/internal.py:590
+#: ipalib/plugins/internal.py:613
msgid "Specified Commands and Groups"
msgstr ""
-#: ipalib/plugins/internal.py:591
+#: ipalib/plugins/internal.py:614
msgid "Specified Groups"
msgstr ""
-#: ipalib/plugins/internal.py:597
+#: ipalib/plugins/internal.py:620
msgid "Account"
msgstr ""
-#: ipalib/plugins/internal.py:598
+#: ipalib/plugins/internal.py:621
msgid "Administrative account"
msgstr ""
-#: ipalib/plugins/internal.py:599
+#: ipalib/plugins/internal.py:622
msgid "SID blacklists"
msgstr ""
-#: ipalib/plugins/internal.py:600
+#: ipalib/plugins/internal.py:623
msgid "Trust Settings"
msgstr ""
-#: ipalib/plugins/internal.py:601 ipalib/plugins/realmdomains.py:73
-#: ipalib/plugins/trust.py:803
+#: ipalib/plugins/internal.py:624 ipalib/plugins/realmdomains.py:92
+#: ipalib/plugins/trust.py:850
msgid "Domain"
msgstr ""
-#: ipalib/plugins/internal.py:602
+#: ipalib/plugins/internal.py:625
msgid "Establish using"
msgstr ""
-#: ipalib/plugins/internal.py:603 ipalib/plugins/trust.py:219
-#: ipalib/plugins/trust.py:1119
+#: ipalib/plugins/internal.py:626
+msgid "Fetch domains"
+msgstr ""
+
+#: ipalib/plugins/internal.py:627 ipalib/plugins/trust.py:357
+#: ipalib/plugins/trust.py:1167
msgid "Domain NetBIOS name"
msgstr ""
-#: ipalib/plugins/internal.py:604 ipalib/plugins/trust.py:223
-#: ipalib/plugins/trust.py:1123
+#: ipalib/plugins/internal.py:628 ipalib/plugins/trust.py:361
+#: ipalib/plugins/trust.py:1171
msgid "Domain Security Identifier"
msgstr ""
-#: ipalib/plugins/internal.py:605
+#: ipalib/plugins/internal.py:629
msgid "Pre-shared password"
msgstr ""
-#: ipalib/plugins/internal.py:606 ipalib/plugins/trust.py:134
+#: ipalib/plugins/internal.py:630 ipalib/plugins/trust.py:137
msgid "Trust direction"
msgstr ""
-#: ipalib/plugins/internal.py:607 ipalib/plugins/trust.py:138
+#: ipalib/plugins/internal.py:631 ipalib/plugins/trust.py:141
msgid "Trust status"
msgstr ""
-#: ipalib/plugins/internal.py:608 ipalib/plugins/trust.py:136
+#: ipalib/plugins/internal.py:632 ipalib/plugins/trust.py:139
msgid "Trust type"
msgstr ""
-#: ipalib/plugins/internal.py:614
+#: ipalib/plugins/internal.py:638
msgid "Account Settings"
msgstr ""
-#: ipalib/plugins/internal.py:615
+#: ipalib/plugins/internal.py:639
msgid "Account Status"
msgstr ""
-#: ipalib/plugins/internal.py:616
+#: ipalib/plugins/internal.py:640
msgid "Contact Settings"
msgstr ""
-#: ipalib/plugins/internal.py:617
+#: ipalib/plugins/internal.py:641
msgid "Employee Information"
msgstr ""
-#: ipalib/plugins/internal.py:618
+#: ipalib/plugins/internal.py:642
msgid "Error changing account status"
msgstr ""
-#: ipalib/plugins/internal.py:619
+#: ipalib/plugins/internal.py:643
msgid "Password expiration"
msgstr ""
-#: ipalib/plugins/internal.py:620
+#: ipalib/plugins/internal.py:644
msgid "Mailing Address"
msgstr ""
-#: ipalib/plugins/internal.py:621
+#: ipalib/plugins/internal.py:645
msgid "Misc. Information"
msgstr ""
-#: ipalib/plugins/internal.py:622
+#: ipalib/plugins/internal.py:646
+#, python-brace-format
msgid ""
"Are you sure you want to ${action} the user?<br/>The change will take effect "
"immediately."
msgstr ""
-#: ipalib/plugins/internal.py:623
+#: ipalib/plugins/internal.py:647
+#, python-brace-format
msgid "Click to ${action}"
msgstr ""
-#: ipalib/plugins/internal.py:627 ipalib/plugins/passwd.py:80
+#: ipalib/plugins/internal.py:651 ipalib/plugins/passwd.py:84
msgid "Current Password"
msgstr ""
-#: ipalib/plugins/internal.py:628
+#: ipalib/plugins/internal.py:652
msgid "Current password is required"
msgstr ""
-#: ipalib/plugins/internal.py:629
+#: ipalib/plugins/internal.py:653
+#, python-brace-format
msgid "Your password expires in ${days} days."
msgstr ""
-#: ipalib/plugins/internal.py:630
+#: ipalib/plugins/internal.py:654
msgid "The password or username you entered is incorrect."
msgstr ""
-#: ipalib/plugins/internal.py:631 ipalib/plugins/passwd.py:77
+#: ipalib/plugins/internal.py:655 ipalib/plugins/passwd.py:81
msgid "New Password"
msgstr ""
-#: ipalib/plugins/internal.py:632
+#: ipalib/plugins/internal.py:656
msgid "New password is required"
msgstr ""
-#: ipalib/plugins/internal.py:634
+#: ipalib/plugins/internal.py:657 ipalib/plugins/passwd.py:94
+msgid "OTP"
+msgstr ""
+
+#: ipalib/plugins/internal.py:660
+msgid "Password or Password+One-Time-Password"
+msgstr ""
+
+#: ipalib/plugins/internal.py:661
msgid "Password change complete"
msgstr ""
-#: ipalib/plugins/internal.py:635
+#: ipalib/plugins/internal.py:662
msgid "Passwords must match"
msgstr ""
-#: ipalib/plugins/internal.py:636
+#: ipalib/plugins/internal.py:663
msgid "Password reset was not successful."
msgstr ""
-#: ipalib/plugins/internal.py:637
+#: ipalib/plugins/internal.py:664
msgid "Reset Password"
msgstr ""
-#: ipalib/plugins/internal.py:638
+#: ipalib/plugins/internal.py:665
msgid "Reset your password."
msgstr ""
-#: ipalib/plugins/internal.py:639
+#: ipalib/plugins/internal.py:666
msgid "Verify Password"
msgstr ""
-#: ipalib/plugins/internal.py:642
+#: ipalib/plugins/internal.py:669
msgid "Are you sure you want to delete selected entries?"
msgstr ""
-#: ipalib/plugins/internal.py:643
+#: ipalib/plugins/internal.py:670
+#, python-brace-format
msgid "${count} item(s) deleted"
msgstr ""
-#: ipalib/plugins/internal.py:644
+#: ipalib/plugins/internal.py:671
msgid "Are you sure you want to disable selected entries?"
msgstr ""
-#: ipalib/plugins/internal.py:645
+#: ipalib/plugins/internal.py:672
+#, python-brace-format
msgid "${count} item(s) disabled"
msgstr ""
-#: ipalib/plugins/internal.py:646
+#: ipalib/plugins/internal.py:673
msgid "Are you sure you want to enable selected entries?"
msgstr ""
-#: ipalib/plugins/internal.py:647
+#: ipalib/plugins/internal.py:674
+#, python-brace-format
msgid "${count} item(s) enabled"
msgstr ""
-#: ipalib/plugins/internal.py:648
+#: ipalib/plugins/internal.py:675
msgid "Some entries were not deleted"
msgstr ""
-#: ipalib/plugins/internal.py:649
+#: ipalib/plugins/internal.py:677
msgid "Quick Links"
msgstr ""
-#: ipalib/plugins/internal.py:650
+#: ipalib/plugins/internal.py:678
msgid "Select All"
msgstr ""
-#: ipalib/plugins/internal.py:651
+#: ipalib/plugins/internal.py:679
+#, python-brace-format
msgid ""
"Query returned more results than the configured size limit. Displaying the "
"first ${counter} results."
msgstr ""
-#: ipalib/plugins/internal.py:652
+#: ipalib/plugins/internal.py:680
msgid "Unselect All"
msgstr ""
-#: ipalib/plugins/internal.py:656
+#: ipalib/plugins/internal.py:684
msgid "Disabled"
msgstr ""
-#: ipalib/plugins/internal.py:662
-msgid "Audit"
+#: ipalib/plugins/internal.py:688
+msgid "Working"
msgstr ""
-#: ipalib/plugins/internal.py:663
-msgid "Automember"
+#: ipalib/plugins/internal.py:691
+msgid "Audit"
msgstr ""
-#: ipalib/plugins/internal.py:664
+#: ipalib/plugins/internal.py:693
msgid "Automount"
msgstr ""
-#: ipalib/plugins/internal.py:666
+#: ipalib/plugins/internal.py:695
msgid "DNS"
msgstr ""
-#: ipalib/plugins/internal.py:667
+#: ipalib/plugins/internal.py:696
msgid "Host Based Access Control"
msgstr ""
-#: ipalib/plugins/internal.py:669
+#: ipalib/plugins/internal.py:697
+msgid "Identity"
+msgstr ""
+
+#: ipalib/plugins/internal.py:698
msgid "IPA Server"
msgstr ""
-#: ipalib/plugins/internal.py:670
+#: ipalib/plugins/internal.py:699
msgid "Policy"
msgstr ""
-#: ipalib/plugins/internal.py:671
+#: ipalib/plugins/internal.py:700
msgid "Role Based Access Control"
msgstr ""
-#: ipalib/plugins/internal.py:672
+#: ipalib/plugins/internal.py:701
msgid "Sudo"
msgstr ""
-#: ipalib/plugins/internal.py:673 ipalib/plugins/trust.py:208
+#: ipalib/plugins/internal.py:702 ipalib/plugins/trust.py:346
msgid "Trusts"
msgstr ""
-#: ipalib/plugins/internal.py:675
+#: ipalib/plugins/internal.py:704
msgid "True"
msgstr ""
-#: ipalib/plugins/internal.py:677
+#: ipalib/plugins/internal.py:706
+msgid "First"
+msgstr ""
+
+#: ipalib/plugins/internal.py:707
+msgid "Last"
+msgstr ""
+
+#: ipalib/plugins/internal.py:708
msgid "Next"
msgstr ""
-#: ipalib/plugins/internal.py:678
+#: ipalib/plugins/internal.py:709
msgid "Page"
msgstr ""
-#: ipalib/plugins/internal.py:679
+#: ipalib/plugins/internal.py:710
msgid "Prev"
msgstr ""
-#: ipalib/plugins/internal.py:680
+#: ipalib/plugins/internal.py:711
msgid "undo"
msgstr ""
-#: ipalib/plugins/internal.py:681
+#: ipalib/plugins/internal.py:712
msgid "undo all"
msgstr ""
-#: ipalib/plugins/internal.py:683
+#: ipalib/plugins/internal.py:714
msgid "Text does not match field pattern"
msgstr ""
-#: ipalib/plugins/internal.py:684
+#: ipalib/plugins/internal.py:715
+msgid "Must be an UTC date/time value (e.g., \"2014-01-20 17:58:01Z\")"
+msgstr ""
+
+#: ipalib/plugins/internal.py:716
msgid "Must be a decimal number"
msgstr ""
-#: ipalib/plugins/internal.py:685
+#: ipalib/plugins/internal.py:717
+msgid "Format error"
+msgstr ""
+
+#: ipalib/plugins/internal.py:718
msgid "Must be an integer"
msgstr ""
-#: ipalib/plugins/internal.py:686
+#: ipalib/plugins/internal.py:719
msgid "Not a valid IP address"
msgstr ""
-#: ipalib/plugins/internal.py:687
+#: ipalib/plugins/internal.py:720
msgid "Not a valid IPv4 address"
msgstr ""
-#: ipalib/plugins/internal.py:688
+#: ipalib/plugins/internal.py:721
msgid "Not a valid IPv6 address"
msgstr ""
-#: ipalib/plugins/internal.py:689
+#: ipalib/plugins/internal.py:722
+#, python-brace-format
msgid "Maximum value is ${value}"
msgstr ""
-#: ipalib/plugins/internal.py:690
+#: ipalib/plugins/internal.py:723
+#, python-brace-format
msgid "Minimum value is ${value}"
msgstr ""
-#: ipalib/plugins/internal.py:691
+#: ipalib/plugins/internal.py:724
msgid "Not a valid network address"
msgstr ""
-#: ipalib/plugins/internal.py:692
+#: ipalib/plugins/internal.py:725
+msgid "Parse error"
+msgstr ""
+
+#: ipalib/plugins/internal.py:726
+#, python-brace-format
msgid "'${port}' is not a valid port"
msgstr ""
-#: ipalib/plugins/internal.py:693
+#: ipalib/plugins/internal.py:727
msgid "Required field"
msgstr ""
-#: ipalib/plugins/internal.py:694
+#: ipalib/plugins/internal.py:728
msgid "Unsupported value"
msgstr ""
-#: ipalib/plugins/internal.py:699
+#: ipalib/plugins/internal.py:733
msgid "Dict of I18N messages"
msgstr ""
-#: ipalib/plugins/krbtpolicy.py:25
+#: ipalib/plugins/krbtpolicy.py:27
msgid ""
"\n"
"Kerberos ticket policy\n"
@@ -7075,43 +7552,52 @@ msgid ""
" ipa krbtpolicy-mod admin --maxlife=3600\n"
msgstr ""
-#: ipalib/plugins/krbtpolicy.py:75
+#: ipalib/plugins/krbtpolicy.py:80
msgid "kerberos ticket policy settings"
msgstr ""
-#: ipalib/plugins/krbtpolicy.py:86
+#: ipalib/plugins/krbtpolicy.py:125
msgid "Manage ticket policy for specific user"
msgstr ""
-#: ipalib/plugins/krbtpolicy.py:91
+#: ipalib/plugins/krbtpolicy.py:130
msgid "Max life"
msgstr ""
-#: ipalib/plugins/krbtpolicy.py:92
+#: ipalib/plugins/krbtpolicy.py:131
msgid "Maximum ticket life (seconds)"
msgstr ""
-#: ipalib/plugins/krbtpolicy.py:97
+#: ipalib/plugins/krbtpolicy.py:136
msgid "Max renew"
msgstr ""
-#: ipalib/plugins/krbtpolicy.py:98
+#: ipalib/plugins/krbtpolicy.py:137
msgid "Maximum renewable age (seconds)"
msgstr ""
-#: ipalib/plugins/krbtpolicy.py:112
+#: ipalib/plugins/krbtpolicy.py:150
msgid "Modify Kerberos ticket policy."
msgstr ""
-#: ipalib/plugins/krbtpolicy.py:126
+#: ipalib/plugins/krbtpolicy.py:163
msgid "Display the current Kerberos ticket policy."
msgstr ""
-#: ipalib/plugins/krbtpolicy.py:151
+#: ipalib/plugins/krbtpolicy.py:186
+#, python-format
+msgid "Ticket policy for %s could not be read"
+msgstr ""
+
+#: ipalib/plugins/krbtpolicy.py:199
+msgid "Default ticket policy could not be read"
+msgstr ""
+
+#: ipalib/plugins/krbtpolicy.py:205
msgid "Reset Kerberos ticket policy to the default values."
msgstr ""
-#: ipalib/plugins/migration.py:35
+#: ipalib/plugins/migration.py:38
msgid ""
"\n"
"Migration to IPA\n"
@@ -7209,210 +7695,218 @@ msgid ""
"updated.\n"
msgstr ""
-#: ipalib/plugins/migration.py:130
+#: ipalib/plugins/migration.py:135
#, python-format
msgid ""
"Kerberos principal %s already exists. Use 'ipa user-mod' to set it manually."
msgstr ""
-#: ipalib/plugins/migration.py:131
+#: ipalib/plugins/migration.py:136
#, python-format
msgid ""
"Unable to determine if Kerberos principal %s already exists. Use 'ipa user-"
"mod' to set it manually."
msgstr ""
-#: ipalib/plugins/migration.py:132
+#: ipalib/plugins/migration.py:137
msgid ""
"Failed to add user to the default group. Use 'ipa group-add-member' to add "
"manually."
msgstr ""
-#: ipalib/plugins/migration.py:133
+#: ipalib/plugins/migration.py:138
msgid "Migration of LDAP search reference is not supported."
msgstr ""
-#: ipalib/plugins/migration.py:134
+#: ipalib/plugins/migration.py:139
msgid "Malformed DN"
msgstr ""
-#: ipalib/plugins/migration.py:151
+#: ipalib/plugins/migration.py:156
#, python-format
msgid "%(user)s is not a POSIX user"
msgstr ""
-#: ipalib/plugins/migration.py:419
+#: ipalib/plugins/migration.py:429
msgid ""
". Check GID of the existing group. Use --group-overwrite-gid option to "
"overwrite the GID"
msgstr ""
-#: ipalib/plugins/migration.py:434
+#: ipalib/plugins/migration.py:444
msgid "Invalid LDAP URI."
msgstr ""
-#: ipalib/plugins/migration.py:439
+#: ipalib/plugins/migration.py:450
msgid "Migrate users and groups from DS to IPA."
msgstr ""
-#: ipalib/plugins/migration.py:486
+#: ipalib/plugins/migration.py:497
msgid "LDAP URI"
msgstr ""
-#: ipalib/plugins/migration.py:487
+#: ipalib/plugins/migration.py:498
msgid "LDAP URI of DS server to migrate from"
msgstr ""
-#: ipalib/plugins/migration.py:493
+#: ipalib/plugins/migration.py:504
msgid "bind password"
msgstr ""
-#: ipalib/plugins/migration.py:500
+#: ipalib/plugins/migration.py:511
msgid "Bind DN"
msgstr ""
-#: ipalib/plugins/migration.py:506
+#: ipalib/plugins/migration.py:517
msgid "User container"
msgstr ""
-#: ipalib/plugins/migration.py:507
+#: ipalib/plugins/migration.py:518
msgid "DN of container for users in DS relative to base DN"
msgstr ""
-#: ipalib/plugins/migration.py:513
+#: ipalib/plugins/migration.py:524
msgid "Group container"
msgstr ""
-#: ipalib/plugins/migration.py:514
+#: ipalib/plugins/migration.py:525
msgid "DN of container for groups in DS relative to base DN"
msgstr ""
-#: ipalib/plugins/migration.py:520
+#: ipalib/plugins/migration.py:531
msgid "User object class"
msgstr ""
-#: ipalib/plugins/migration.py:521
+#: ipalib/plugins/migration.py:532
msgid "Objectclasses used to search for user entries in DS"
msgstr ""
-#: ipalib/plugins/migration.py:528
+#: ipalib/plugins/migration.py:539
msgid "Group object class"
msgstr ""
-#: ipalib/plugins/migration.py:529
+#: ipalib/plugins/migration.py:540
msgid "Objectclasses used to search for group entries in DS"
msgstr ""
-#: ipalib/plugins/migration.py:536
+#: ipalib/plugins/migration.py:547
msgid "Ignore user object class"
msgstr ""
-#: ipalib/plugins/migration.py:537
+#: ipalib/plugins/migration.py:548
msgid "Objectclasses to be ignored for user entries in DS"
msgstr ""
-#: ipalib/plugins/migration.py:544
+#: ipalib/plugins/migration.py:555
msgid "Ignore user attribute"
msgstr ""
-#: ipalib/plugins/migration.py:545
+#: ipalib/plugins/migration.py:556
msgid "Attributes to be ignored for user entries in DS"
msgstr ""
-#: ipalib/plugins/migration.py:552
+#: ipalib/plugins/migration.py:563
msgid "Ignore group object class"
msgstr ""
-#: ipalib/plugins/migration.py:553
+#: ipalib/plugins/migration.py:564
msgid "Objectclasses to be ignored for group entries in DS"
msgstr ""
-#: ipalib/plugins/migration.py:560
+#: ipalib/plugins/migration.py:571
msgid "Ignore group attribute"
msgstr ""
-#: ipalib/plugins/migration.py:561
+#: ipalib/plugins/migration.py:572
msgid "Attributes to be ignored for group entries in DS"
msgstr ""
-#: ipalib/plugins/migration.py:568
+#: ipalib/plugins/migration.py:579
msgid "Overwrite GID"
msgstr ""
-#: ipalib/plugins/migration.py:569
+#: ipalib/plugins/migration.py:580
msgid ""
"When migrating a group already existing in IPA domain overwrite the group "
"GID and report as success"
msgstr ""
-#: ipalib/plugins/migration.py:574
+#: ipalib/plugins/migration.py:585
msgid "LDAP schema"
msgstr ""
-#: ipalib/plugins/migration.py:575
+#: ipalib/plugins/migration.py:586
msgid ""
"The schema used on the LDAP server. Supported values are RFC2307 and "
"RFC2307bis. The default is RFC2307bis"
msgstr ""
-#: ipalib/plugins/migration.py:581
+#: ipalib/plugins/migration.py:592
msgid "Continue"
msgstr ""
-#: ipalib/plugins/migration.py:582
+#: ipalib/plugins/migration.py:593
msgid ""
"Continuous operation mode. Errors are reported but the process continues"
msgstr ""
-#: ipalib/plugins/migration.py:587
+#: ipalib/plugins/migration.py:598
msgid "Base DN"
msgstr ""
-#: ipalib/plugins/migration.py:588
+#: ipalib/plugins/migration.py:599
msgid "Base DN on remote LDAP server"
msgstr ""
-#: ipalib/plugins/migration.py:592
+#: ipalib/plugins/migration.py:603
msgid "Ignore compat plugin"
msgstr ""
-#: ipalib/plugins/migration.py:593
+#: ipalib/plugins/migration.py:604
msgid "Allows migration despite the usage of compat plugin"
msgstr ""
-#: ipalib/plugins/migration.py:601
+#: ipalib/plugins/migration.py:609
+msgid "CA certificate"
+msgstr ""
+
+#: ipalib/plugins/migration.py:610
+msgid "Load CA certificate of LDAP server from FILE"
+msgstr ""
+
+#: ipalib/plugins/migration.py:618
msgid "Lists of objects migrated; categorized by type."
msgstr ""
-#: ipalib/plugins/migration.py:605
+#: ipalib/plugins/migration.py:622
msgid "Lists of objects that could not be migrated; categorized by type."
msgstr ""
-#: ipalib/plugins/migration.py:609
+#: ipalib/plugins/migration.py:626
msgid "False if migration mode was disabled."
msgstr ""
-#: ipalib/plugins/migration.py:613
+#: ipalib/plugins/migration.py:630
msgid "False if migration fails because the compatibility plug-in is enabled."
msgstr ""
-#: ipalib/plugins/migration.py:617
+#: ipalib/plugins/migration.py:634
#, python-format
msgid "%s to exclude from migration"
msgstr ""
-#: ipalib/plugins/migration.py:619
+#: ipalib/plugins/migration.py:636
msgid ""
"search results for objects to be migrated\n"
"have been truncated by the server;\n"
"migration process might be incomplete\n"
msgstr ""
-#: ipalib/plugins/migration.py:624
+#: ipalib/plugins/migration.py:641
msgid "Migration mode is disabled. Use 'ipa config-mod' to enable it."
msgstr ""
-#: ipalib/plugins/migration.py:627
+#: ipalib/plugins/migration.py:644
msgid ""
"Passwords have been migrated in pre-hashed format.\n"
"IPA is unable to generate Kerberos keys unless provided\n"
@@ -7421,61 +7915,61 @@ msgid ""
"can use their Kerberos accounts."
msgstr ""
-#: ipalib/plugins/migration.py:713
+#: ipalib/plugins/migration.py:730
#, python-format
msgid ""
"%(container)s LDAP search did not return any result (search base: "
"%(search_base)s, objectclass: %(objectclass)s)"
msgstr ""
-#: ipalib/plugins/migration.py:745 ipalib/plugins/user.py:519
+#: ipalib/plugins/migration.py:762 ipalib/plugins/user.py:759
msgid "Default group for new users not found"
msgstr ""
-#: ipalib/plugins/misc.py:25
+#: ipalib/plugins/misc.py:26
msgid ""
"\n"
"Misc plug-ins\n"
msgstr ""
-#: ipalib/plugins/misc.py:36
+#: ipalib/plugins/misc.py:40
msgid "Show environment variables."
msgstr ""
-#: ipalib/plugins/misc.py:38
+#: ipalib/plugins/misc.py:42
#, python-format
msgid "%(count)d variables"
msgstr ""
-#: ipalib/plugins/misc.py:47 ipalib/plugins/misc.py:115
+#: ipalib/plugins/misc.py:51 ipalib/plugins/misc.py:119
msgid ""
"retrieve and print all attributes from the server. Affects command output."
msgstr ""
-#: ipalib/plugins/misc.py:61
+#: ipalib/plugins/misc.py:65
msgid "Total number of variables env (>= count)"
msgstr ""
-#: ipalib/plugins/misc.py:66
+#: ipalib/plugins/misc.py:70
msgid "Number of variables returned (<= total)"
msgstr ""
-#: ipalib/plugins/misc.py:106
+#: ipalib/plugins/misc.py:110
msgid "Show all loaded plugins."
msgstr ""
-#: ipalib/plugins/misc.py:109
+#: ipalib/plugins/misc.py:113
#, python-format
msgid "%(count)d plugin loaded"
msgid_plural "%(count)d plugins loaded"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/misc.py:126
+#: ipalib/plugins/misc.py:130
msgid "Number of plugins loaded"
msgstr ""
-#: ipalib/plugins/netgroup.py:28
+#: ipalib/plugins/netgroup.py:29
msgid ""
"\n"
"Netgroups\n"
@@ -7501,104 +7995,336 @@ msgid ""
" ipa netgroup-del admins\n"
msgstr ""
-#: ipalib/plugins/netgroup.py:69
+#: ipalib/plugins/netgroup.py:71
msgid "Member Host"
msgstr ""
-#: ipalib/plugins/netgroup.py:81
+#: ipalib/plugins/netgroup.py:85
msgid "netgroup"
msgstr ""
-#: ipalib/plugins/netgroup.py:82
+#: ipalib/plugins/netgroup.py:86
msgid "netgroups"
msgstr ""
-#: ipalib/plugins/netgroup.py:108
+#: ipalib/plugins/netgroup.py:165
msgid "Netgroups"
msgstr ""
-#: ipalib/plugins/netgroup.py:109
+#: ipalib/plugins/netgroup.py:166
msgid "Netgroup"
msgstr ""
-#: ipalib/plugins/netgroup.py:116
+#: ipalib/plugins/netgroup.py:173
msgid "Netgroup name"
msgstr ""
-#: ipalib/plugins/netgroup.py:123
+#: ipalib/plugins/netgroup.py:180
msgid "Netgroup description"
msgstr ""
-#: ipalib/plugins/netgroup.py:129
+#: ipalib/plugins/netgroup.py:186
msgid "NIS domain name"
msgstr ""
-#: ipalib/plugins/netgroup.py:134
+#: ipalib/plugins/netgroup.py:191
msgid "IPA unique ID"
msgstr ""
-#: ipalib/plugins/netgroup.py:156
+#: ipalib/plugins/netgroup.py:212
msgid "Add a new netgroup."
msgstr ""
-#: ipalib/plugins/netgroup.py:159
+#: ipalib/plugins/netgroup.py:215
#, python-format
msgid "Added netgroup \"%(value)s\""
msgstr ""
-#: ipalib/plugins/netgroup.py:161
+#: ipalib/plugins/netgroup.py:217
#, python-format
msgid ""
"hostgroup with name \"%s\" already exists. Hostgroups and netgroups share a "
"common namespace"
msgstr ""
-#: ipalib/plugins/netgroup.py:193
+#: ipalib/plugins/netgroup.py:248
msgid "Delete a netgroup."
msgstr ""
-#: ipalib/plugins/netgroup.py:195
+#: ipalib/plugins/netgroup.py:250
#, python-format
msgid "Deleted netgroup \"%(value)s\""
msgstr ""
-#: ipalib/plugins/netgroup.py:201
+#: ipalib/plugins/netgroup.py:256
msgid "Modify a netgroup."
msgstr ""
-#: ipalib/plugins/netgroup.py:204
+#: ipalib/plugins/netgroup.py:259
#, python-format
msgid "Modified netgroup \"%(value)s\""
msgstr ""
-#: ipalib/plugins/netgroup.py:222
+#: ipalib/plugins/netgroup.py:277
msgid "Search for a netgroup."
msgstr ""
-#: ipalib/plugins/netgroup.py:227
+#: ipalib/plugins/netgroup.py:282
#, python-format
msgid "%(count)d netgroup matched"
msgid_plural "%(count)d netgroups matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/netgroup.py:237
+#: ipalib/plugins/netgroup.py:292
msgid "search for managed groups"
msgstr ""
-#: ipalib/plugins/netgroup.py:260
+#: ipalib/plugins/netgroup.py:314
msgid "Display information about a netgroup."
msgstr ""
-#: ipalib/plugins/netgroup.py:268
+#: ipalib/plugins/netgroup.py:321
msgid "Add members to a netgroup."
msgstr ""
-#: ipalib/plugins/netgroup.py:284
+#: ipalib/plugins/netgroup.py:343
msgid "Remove members from a netgroup."
msgstr ""
-#: ipalib/plugins/passwd.py:29
+#: ipalib/plugins/otptoken.py:39
+msgid ""
+"\n"
+"OTP Tokens\n"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:41
+msgid ""
+"\n"
+"Manage OTP tokens.\n"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:43
+msgid ""
+"\n"
+"IPA supports the use of OTP tokens for multi-factor authentication. This\n"
+"code enables the management of OTP tokens.\n"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:48
+msgid ""
+"\n"
+" Add a new token:\n"
+" ipa otptoken-add --type=totp --owner=jdoe --desc=\"My soft token\"\n"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:51
+msgid ""
+"\n"
+" Examine the token:\n"
+" ipa otptoken-show a93db710-a31a-4639-8647-f15b2c70b78a\n"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:54
+msgid ""
+"\n"
+" Change the vendor:\n"
+" ipa otptoken-mod a93db710-a31a-4639-8647-f15b2c70b78a --vendor=\"Red Hat"
+"\"\n"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:57
+msgid ""
+"\n"
+" Delete a token:\n"
+" ipa otptoken-del a93db710-a31a-4639-8647-f15b2c70b78a\n"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:113
+msgid "OTP token"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:114
+msgid "OTP tokens"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:130
+msgid "OTP Tokens"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:131
+msgid "OTP Token"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:136 ipalib/plugins/otptoken_yubikey.py:53
+msgid "Unique ID"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:153
+msgid "Owner"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:156 ipalib/plugins/user.py:560
+msgid "Manager"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:161
+msgid "Disabled state"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:165
+msgid "Validity start"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:169
+msgid "Validity end"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:173
+msgid "Vendor"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:179
+msgid "Model"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:185
+msgid "Serial"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:206
+msgid "Digits"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:214
+msgid "Clock offset"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:221
+msgid "Clock interval"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:229
+msgid "Counter"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:240
+msgid "Add a new OTP token."
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:241
+#, python-format
+msgid "Added OTP token \"%(value)s\""
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:244
+msgid "Display QR code (requires wide terminal)"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:248
+msgid "URI"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:329
+msgid "Delete an OTP token."
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:330
+#, python-format
+msgid "Deleted OTP token \"%(value)s\""
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:335
+msgid "Modify a OTP token."
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:336
+#, python-format
+msgid "Modified OTP token \"%(value)s\""
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:349
+msgid "Search for OTP token."
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:350
+#, python-format
+msgid "%(count)d OTP token matched"
+msgid_plural "%(count)d OTP tokens matched"
+msgstr[0] ""
+msgstr[1] ""
+
+#: ipalib/plugins/otptoken.py:376
+msgid "Display information about an OTP token."
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:384
+msgid "Add users that can manage this token."
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:436
+msgid "Synchronize an OTP token."
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:441
+msgid "User ID"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:443
+msgid "First Code"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:444
+msgid "Second Code"
+msgstr ""
+
+#: ipalib/plugins/otptoken.py:448
+msgid "Token ID"
+msgstr ""
+
+#: ipalib/plugins/otptoken_yubikey.py:30
+msgid ""
+"\n"
+"YubiKey Tokens\n"
+msgstr ""
+
+#: ipalib/plugins/otptoken_yubikey.py:32
+msgid ""
+"\n"
+"Manage YubiKey tokens.\n"
+msgstr ""
+
+#: ipalib/plugins/otptoken_yubikey.py:34
+msgid ""
+"\n"
+"This code is an extension to the otptoken plugin and provides support for\n"
+"reading/writing YubiKey tokens directly.\n"
+msgstr ""
+
+#: ipalib/plugins/otptoken_yubikey.py:39
+msgid ""
+"\n"
+" Add a new token:\n"
+" ipa otptoken-add-yubikey --owner=jdoe --desc=\"My YubiKey\"\n"
+msgstr ""
+
+#: ipalib/plugins/otptoken_yubikey.py:48
+msgid "Add a new YubiKey OTP token."
+msgstr ""
+
+#: ipalib/plugins/otptoken_yubikey.py:61
+msgid "YubiKey slot"
+msgstr ""
+
+#: ipalib/plugins/otptoken_yubikey.py:85
+msgid "No YubiKey found"
+msgstr ""
+
+#: ipalib/plugins/otptoken_yubikey.py:95
+msgid "No free YubiKey slot!"
+msgstr ""
+
+#: ipalib/plugins/passwd.py:30
msgid ""
"\n"
"Set a user's password\n"
@@ -7619,181 +8345,403 @@ msgid ""
" ipa passwd tuser1\n"
msgstr ""
-#: ipalib/plugins/passwd.py:65
+#: ipalib/plugins/passwd.py:69
msgid "Set a user's password."
msgstr ""
-#: ipalib/plugins/passwd.py:89
+#: ipalib/plugins/passwd.py:95
+msgid "One Time Password"
+msgstr ""
+
+#: ipalib/plugins/passwd.py:101
#, python-format
msgid "Changed password for \"%(value)s\""
msgstr ""
-#: ipalib/plugins/passwd.py:115
+#: ipalib/plugins/passwd.py:127
msgid "Invalid credentials"
msgstr ""
-#: ipalib/plugins/permission.py:27
+#: ipalib/plugins/permission.py:33
msgid ""
"\n"
"Permissions\n"
+msgstr ""
+
+#: ipalib/plugins/permission.py:35
+msgid ""
"\n"
"A permission enables fine-grained delegation of rights. A permission is\n"
-"a human-readable form of a 389-ds Access Control Rule, or instruction "
-"(ACI).\n"
+"a human-readable wrapper around a 389-ds Access Control Rule,\n"
+"or instruction (ACI).\n"
"A permission grants the right to perform a specific task such as adding a\n"
"user, modifying a group, etc.\n"
+msgstr ""
+
+#: ipalib/plugins/permission.py:41
+msgid ""
"\n"
"A permission may not contain other permissions.\n"
+msgstr ""
+
+#: ipalib/plugins/permission.py:43
+msgid ""
"\n"
-"* A permission grants access to read, write, add or delete.\n"
+"* A permission grants access to read, write, add, delete, read, search,\n"
+" or compare.\n"
"* A privilege combines similar permissions (for example all the permissions\n"
" needed to add a user).\n"
"* A role grants a set of privileges to users, groups, hosts or hostgroups.\n"
+msgstr ""
+
+#: ipalib/plugins/permission.py:49
+msgid ""
"\n"
"A permission is made up of a number of different parts:\n"
"\n"
"1. The name of the permission.\n"
"2. The target of the permission.\n"
"3. The rights granted by the permission.\n"
+msgstr ""
+
+#: ipalib/plugins/permission.py:55
+msgid ""
"\n"
"Rights define what operations are allowed, and may be one or more\n"
"of the following:\n"
"1. write - write one or more attributes\n"
"2. read - read one or more attributes\n"
-"3. add - add a new entry to the tree\n"
-"4. delete - delete an existing entry\n"
-"5. all - all permissions are granted\n"
-"\n"
-"Read permission is granted for most attributes by default so the read\n"
-"permission is not expected to be used very often.\n"
+"3. search - search on one or more attributes\n"
+"4. compare - compare one or more attributes\n"
+"5. add - add a new entry to the tree\n"
+"6. delete - delete an existing entry\n"
+"7. all - all permissions are granted\n"
+msgstr ""
+
+#: ipalib/plugins/permission.py:65
+msgid ""
"\n"
"Note the distinction between attributes and entries. The permissions are\n"
"independent, so being able to add a user does not mean that the user will\n"
"be editable.\n"
+msgstr ""
+
+#: ipalib/plugins/permission.py:69
+msgid ""
"\n"
"There are a number of allowed targets:\n"
-"1. type: a type of object (user, group, etc).\n"
-"2. memberof: a member of a group or hostgroup\n"
-"3. filter: an LDAP filter\n"
-"4. subtree: an LDAP filter specifying part of the LDAP DIT. This is a\n"
-" super-set of the \"type\" target.\n"
-"5. targetgroup: grant access to modify a specific group (such as granting\n"
-" the rights to manage group membership)\n"
+"1. subtree: a DN; the permission applies to the subtree under this DN\n"
+"2. target filter: an LDAP filter\n"
+"3. target: DN with possible wildcards, specifies entries permission applies "
+"to\n"
+msgstr ""
+
+#: ipalib/plugins/permission.py:74
+msgid ""
"\n"
-"EXAMPLES:\n"
+"Additionally, there are the following convenience options.\n"
+"Setting one of these options will set the corresponding attribute(s).\n"
+"1. type: a type of object (user, group, etc); sets subtree and target "
+"filter.\n"
+"2. memberof: apply to members of a group; sets target filter\n"
+"3. targetgroup: grant access to modify a specific group (such as granting\n"
+" the rights to manage group membership); sets target.\n"
+msgstr ""
+
+#: ipalib/plugins/permission.py:81
+msgid ""
+"\n"
+"Managed permissions\n"
+msgstr ""
+
+#: ipalib/plugins/permission.py:83
+msgid ""
+"\n"
+"Permissions that come with IPA by default can be so-called \"managed\"\n"
+"permissions. These have a default set of attributes they apply to,\n"
+"but the administrator can add/remove individual attributes to/from the set.\n"
+msgstr ""
+
+#: ipalib/plugins/permission.py:87
+msgid ""
+"\n"
+"Deleting or renaming a managed permission, as well as changing its target,\n"
+"is not allowed.\n"
+msgstr ""
+
+#: ipalib/plugins/permission.py:92
+msgid ""
"\n"
" Add a permission that grants the creation of users:\n"
" ipa permission-add --type=user --permissions=add \"Add Users\"\n"
+msgstr ""
+
+#: ipalib/plugins/permission.py:95
+msgid ""
"\n"
" Add a permission that grants the ability to manage group membership:\n"
" ipa permission-add --attrs=member --permissions=write --type=group "
"\"Manage Group Members\"\n"
msgstr ""
-#: ipalib/plugins/permission.py:85
-msgid "Permission Type"
+#: ipalib/plugins/permission.py:126
+msgid "must be enclosed in parentheses"
msgstr ""
-#: ipalib/plugins/permission.py:107
+#: ipalib/plugins/permission.py:145
+#, python-format
+msgid "\"%s\" is not an object type"
+msgstr ""
+
+#: ipalib/plugins/permission.py:147 ipalib/plugins/permission.py:832
+#, python-format
+msgid "\"%s\" is not a valid permission type"
+msgstr ""
+
+#: ipalib/plugins/permission.py:168
msgid "permission"
msgstr ""
-#: ipalib/plugins/permission.py:108
+#: ipalib/plugins/permission.py:169
msgid "permissions"
msgstr ""
-#: ipalib/plugins/permission.py:128
+#: ipalib/plugins/permission.py:224
msgid "Permission name"
msgstr ""
-#: ipalib/plugins/permission.py:136
-msgid "Permissions to grant (read, write, add, delete, all)"
+#: ipalib/plugins/permission.py:234
+msgid "Granted rights"
+msgstr ""
+
+#: ipalib/plugins/permission.py:235
+msgid "Rights to grant (read, search, compare, write, add, delete, all)"
msgstr ""
-#: ipalib/plugins/permission.py:151
+#: ipalib/plugins/permission.py:241
+msgid "Effective attributes"
+msgstr ""
+
+#: ipalib/plugins/permission.py:242
+msgid "All attributes to which the permission applies"
+msgstr ""
+
+#: ipalib/plugins/permission.py:247
+msgid "Included attributes"
+msgstr ""
+
+#: ipalib/plugins/permission.py:248
+msgid "User-specified attributes to which the permission applies"
+msgstr ""
+
+#: ipalib/plugins/permission.py:253
+msgid "Excluded attributes"
+msgstr ""
+
+#: ipalib/plugins/permission.py:254
msgid ""
-"Type of IPA object (user, group, host, hostgroup, service, netgroup, dns)"
+"User-specified attributes to which the permission explicitly does not apply"
msgstr ""
-#: ipalib/plugins/permission.py:157
-msgid "Member of group"
+#: ipalib/plugins/permission.py:260
+msgid "Default attributes"
+msgstr ""
+
+#: ipalib/plugins/permission.py:261
+msgid "Attributes to which the permission applies by default"
msgstr ""
-#: ipalib/plugins/permission.py:158
-msgid "Target members of a group"
+#: ipalib/plugins/permission.py:267 ipalib/plugins/permission.py:268
+msgid "Bind rule type"
msgstr ""
-#: ipalib/plugins/permission.py:170
+#: ipalib/plugins/permission.py:278
msgid "Subtree to apply permissions to"
msgstr ""
-#: ipalib/plugins/permission.py:176
-msgid "User group to apply permissions to"
+#: ipalib/plugins/permission.py:284 ipalib/plugins/permission.py:285
+msgid "Extra target filter"
msgstr ""
-#: ipalib/plugins/permission.py:201
-msgid "Add a new permission."
+#: ipalib/plugins/permission.py:291
+msgid "Raw target filter"
+msgstr ""
+
+#: ipalib/plugins/permission.py:292
+msgid "All target filters, including those implied by type and memberof"
+msgstr ""
+
+#: ipalib/plugins/permission.py:299
+msgid "ACI target DN"
+msgstr ""
+
+#: ipalib/plugins/permission.py:304
+msgid "Member of group"
+msgstr ""
+
+#: ipalib/plugins/permission.py:305
+msgid "Target members of a group (sets memberOf targetfilter)"
+msgstr ""
+
+#: ipalib/plugins/permission.py:310
+msgid "User group to apply permissions to (sets target)"
+msgstr ""
+
+#: ipalib/plugins/permission.py:316
+msgid "Type of IPA object (sets subtree and objectClass targetfilter)"
+msgstr ""
+
+#: ipalib/plugins/permission.py:322
+#, python-format
+msgid "Deprecated; use %s"
+msgstr ""
+
+#: ipalib/plugins/permission.py:333
+#, python-format
+msgid "Permission with unknown flag %s may not be modified or removed"
+msgstr ""
+
+#: ipalib/plugins/permission.py:337
+msgid "A SYSTEM permission may not be modified or removed"
+msgstr ""
+
+#: ipalib/plugins/permission.py:565
+#, python-format
+msgid "Entry %s not found"
+msgstr ""
+
+#: ipalib/plugins/permission.py:651
+#, python-format
+msgid "The ACI for permission %(name)s was not found in %(dn)s "
+msgstr ""
+
+#: ipalib/plugins/permission.py:755
+msgid ""
+"cannot specify full target filter and extra target filter simultaneously"
+msgstr ""
+
+#: ipalib/plugins/permission.py:778
+#, python-format
+msgid "option was renamed; use %s"
+msgstr ""
+
+#: ipalib/plugins/permission.py:782
+#, python-format
+msgid "Cannot use %(old_name)s with %(new_name)s"
msgstr ""
-#: ipalib/plugins/permission.py:203 ipalib/plugins/permission.py:259
+#: ipalib/plugins/permission.py:796 ipalib/plugins/permission.py:811
+#, python-format
+msgid "%s: group not found"
+msgstr ""
+
+#: ipalib/plugins/permission.py:806
+msgid "target and targetgroup are mutually exclusive"
+msgstr ""
+
+#: ipalib/plugins/permission.py:827
+msgid "subtree and type are mutually exclusive"
+msgstr ""
+
+#: ipalib/plugins/permission.py:863
+msgid "Bad search filter"
+msgstr ""
+
+#: ipalib/plugins/permission.py:873
+#, python-format
+msgid "Entry %s does not exist"
+msgstr ""
+
+#: ipalib/plugins/permission.py:882
+msgid ""
+"there must be at least one target entry specifier (e.g. target, "
+"targetfilter, attrs)"
+msgstr ""
+
+#: ipalib/plugins/permission.py:892
+msgid "Add a system permission without an ACI (internal command)"
+msgstr ""
+
+#: ipalib/plugins/permission.py:894 ipalib/plugins/permission.py:925
#, python-format
msgid "Added permission \"%(value)s\""
msgstr ""
-#: ipalib/plugins/permission.py:257
-msgid "Add a system permission without an ACI"
+#: ipalib/plugins/permission.py:900
+msgid "Permission flags"
msgstr ""
-#: ipalib/plugins/permission.py:265
-msgid "Permission type"
+#: ipalib/plugins/permission.py:923
+msgid "Add a new permission."
msgstr ""
-#: ipalib/plugins/permission.py:292
+#: ipalib/plugins/permission.py:951
+msgid "attrs and included attributes are mutually exclusive"
+msgstr ""
+
+#: ipalib/plugins/permission.py:985
msgid "Delete a permission."
msgstr ""
-#: ipalib/plugins/permission.py:294
+#: ipalib/plugins/permission.py:987
#, python-format
msgid "Deleted permission \"%(value)s\""
msgstr ""
-#: ipalib/plugins/permission.py:300
+#: ipalib/plugins/permission.py:993
msgid "force delete of SYSTEM permissions"
msgstr ""
-#: ipalib/plugins/permission.py:308
-msgid "A SYSTEM permission may not be removed"
+#: ipalib/plugins/permission.py:1007
+msgid "cannot delete managed permissions"
msgstr ""
-#: ipalib/plugins/permission.py:320
+#: ipalib/plugins/permission.py:1013
+#, python-format
+msgid "ACI of permission %s was not found"
+msgstr ""
+
+#: ipalib/plugins/permission.py:1020
msgid "Modify a permission."
msgstr ""
-#: ipalib/plugins/permission.py:322
+#: ipalib/plugins/permission.py:1022
#, python-format
msgid "Modified permission \"%(value)s\""
msgstr ""
-#: ipalib/plugins/permission.py:329
-msgid "A SYSTEM permission may not be modified"
+#: ipalib/plugins/permission.py:1056
+msgid "cannot rename managed permissions"
+msgstr ""
+
+#: ipalib/plugins/permission.py:1063 ipalib/plugins/permission.py:1067
+msgid "not modifiable on managed permissions"
msgstr ""
-#: ipalib/plugins/permission.py:354
-msgid "New name can not be empty"
+#: ipalib/plugins/permission.py:1074
+msgid "only available on managed permissions"
msgstr ""
-#: ipalib/plugins/permission.py:410
+#: ipalib/plugins/permission.py:1081 ipalib/plugins/permission.py:1201
+msgid "attrs and included/excluded attributes are mutually exclusive"
+msgstr ""
+
+#: ipalib/plugins/permission.py:1092
+msgid "cannot set bindtype for a permission that is assigned to a privilege"
+msgstr ""
+
+#: ipalib/plugins/permission.py:1186
msgid "Search for permissions."
msgstr ""
-#: ipalib/plugins/permission.py:413
+#: ipalib/plugins/permission.py:1189
#, python-format
msgid "%(count)d permission matched"
msgid_plural "%(count)d permissions matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/permission.py:492
+#: ipalib/plugins/permission.py:1316
msgid "Display information about a permission."
msgstr ""
@@ -7831,7 +8779,7 @@ msgstr ""
msgid "Ping a remote server."
msgstr ""
-#: ipalib/plugins/pkinit.py:26
+#: ipalib/plugins/pkinit.py:27
msgid ""
"\n"
"Kerberos pkinit options\n"
@@ -7853,24 +8801,24 @@ msgid ""
"http://k5wiki.kerberos.org/wiki/Projects/Anonymous_pkinit\n"
msgstr ""
-#: ipalib/plugins/pkinit.py:50
+#: ipalib/plugins/pkinit.py:54
msgid "pkinit"
msgstr ""
-#: ipalib/plugins/pkinit.py:52
+#: ipalib/plugins/pkinit.py:56
msgid "PKINIT"
msgstr ""
-#: ipalib/plugins/pkinit.py:64
+#: ipalib/plugins/pkinit.py:67
#, python-format
msgid "Unknown command %s"
msgstr ""
-#: ipalib/plugins/pkinit.py:68
+#: ipalib/plugins/pkinit.py:72
msgid "Enable or Disable Anonymous PKINIT."
msgstr ""
-#: ipalib/plugins/privilege.py:23
+#: ipalib/plugins/privilege.py:24
msgid ""
"\n"
"Privileges\n"
@@ -7893,93 +8841,100 @@ msgid ""
"See role and permission for additional information.\n"
msgstr ""
-#: ipalib/plugins/privilege.py:49
+#: ipalib/plugins/privilege.py:54
msgid "privilege"
msgstr ""
-#: ipalib/plugins/privilege.py:50
+#: ipalib/plugins/privilege.py:55
msgid "privileges"
msgstr ""
-#: ipalib/plugins/privilege.py:62
+#: ipalib/plugins/privilege.py:96
msgid "Privileges"
msgstr ""
-#: ipalib/plugins/privilege.py:63
+#: ipalib/plugins/privilege.py:97
msgid "Privilege"
msgstr ""
-#: ipalib/plugins/privilege.py:68
+#: ipalib/plugins/privilege.py:102
msgid "Privilege name"
msgstr ""
-#: ipalib/plugins/privilege.py:74
+#: ipalib/plugins/privilege.py:108
msgid "Privilege description"
msgstr ""
-#: ipalib/plugins/privilege.py:82
+#: ipalib/plugins/privilege.py:115
msgid "Add a new privilege."
msgstr ""
-#: ipalib/plugins/privilege.py:84
+#: ipalib/plugins/privilege.py:117
#, python-format
msgid "Added privilege \"%(value)s\""
msgstr ""
-#: ipalib/plugins/privilege.py:90
+#: ipalib/plugins/privilege.py:122
msgid "Delete a privilege."
msgstr ""
-#: ipalib/plugins/privilege.py:92
+#: ipalib/plugins/privilege.py:124
#, python-format
msgid "Deleted privilege \"%(value)s\""
msgstr ""
-#: ipalib/plugins/privilege.py:98
+#: ipalib/plugins/privilege.py:129
msgid "Modify a privilege."
msgstr ""
-#: ipalib/plugins/privilege.py:100
+#: ipalib/plugins/privilege.py:131
#, python-format
msgid "Modified privilege \"%(value)s\""
msgstr ""
-#: ipalib/plugins/privilege.py:106
+#: ipalib/plugins/privilege.py:136
msgid "Search for privileges."
msgstr ""
-#: ipalib/plugins/privilege.py:109
+#: ipalib/plugins/privilege.py:139
#, python-format
msgid "%(count)d privilege matched"
msgid_plural "%(count)d privileges matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/privilege.py:116
+#: ipalib/plugins/privilege.py:145
msgid "Display information about a privilege."
msgstr ""
-#: ipalib/plugins/privilege.py:122
+#: ipalib/plugins/privilege.py:150
msgid "Add members to a privilege."
msgstr ""
-#: ipalib/plugins/privilege.py:139
+#: ipalib/plugins/privilege.py:165
msgid "Add permissions to a privilege."
msgstr ""
-#: ipalib/plugins/privilege.py:154
+#: ipalib/plugins/privilege.py:180
msgid "Number of permissions added"
msgstr ""
-#: ipalib/plugins/privilege.py:162
+#: ipalib/plugins/privilege.py:205
+#, python-format
+msgid ""
+"cannot add permission \"%(perm)s\" with bindtype \"%(bindtype)s\" to a "
+"privilege"
+msgstr ""
+
+#: ipalib/plugins/privilege.py:218
msgid "Remove permissions from a privilege."
msgstr ""
-#: ipalib/plugins/privilege.py:179
+#: ipalib/plugins/privilege.py:235
msgid "Number of permissions removed"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:30
+#: ipalib/plugins/pwpolicy.py:31
msgid ""
"\n"
"Password policy\n"
@@ -8025,135 +8980,304 @@ msgid ""
" ipa pwpolicy-mod --minclasses=2 localadmins\n"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:90
+#: ipalib/plugins/pwpolicy.py:130
#, python-format
msgid "priority must be a unique value (%(prio)d already used by %(gname)s)"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:180
+#: ipalib/plugins/pwpolicy.py:214
msgid "password policy"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:181
+#: ipalib/plugins/pwpolicy.py:215
msgid "password policies"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:205
+#: ipalib/plugins/pwpolicy.py:284
msgid "Max failures"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:206
+#: ipalib/plugins/pwpolicy.py:285
msgid "Consecutive failures before lockout"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:211
+#: ipalib/plugins/pwpolicy.py:290
msgid "Failure reset interval"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:212
+#: ipalib/plugins/pwpolicy.py:291
msgid "Period after which failure count will be reset (seconds)"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:217
+#: ipalib/plugins/pwpolicy.py:296
msgid "Lockout duration"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:218
+#: ipalib/plugins/pwpolicy.py:297
msgid "Period for which lockout is enforced (seconds)"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:223
+#: ipalib/plugins/pwpolicy.py:302
msgid "Password Policies"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:229
+#: ipalib/plugins/pwpolicy.py:308
msgid "Group"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:230
+#: ipalib/plugins/pwpolicy.py:309
msgid "Manage password policy for specific group"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:235
+#: ipalib/plugins/pwpolicy.py:314
msgid "Max lifetime (days)"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:236
+#: ipalib/plugins/pwpolicy.py:315
msgid "Maximum password lifetime (in days)"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:242
+#: ipalib/plugins/pwpolicy.py:321
msgid "Min lifetime (hours)"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:243
+#: ipalib/plugins/pwpolicy.py:322
msgid "Minimum password lifetime (in hours)"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:248
+#: ipalib/plugins/pwpolicy.py:327
msgid "History size"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:249
+#: ipalib/plugins/pwpolicy.py:328
msgid "Password history size"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:254
+#: ipalib/plugins/pwpolicy.py:333
msgid "Character classes"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:255
+#: ipalib/plugins/pwpolicy.py:334
msgid "Minimum number of character classes"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:261
+#: ipalib/plugins/pwpolicy.py:340
msgid "Min length"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:262
+#: ipalib/plugins/pwpolicy.py:341
msgid "Minimum length of password"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:268
+#: ipalib/plugins/pwpolicy.py:347
msgid "Priority of the policy (higher number means lower priority"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:322
+#: ipalib/plugins/pwpolicy.py:401
msgid "Maximum password life must be greater than minimum."
msgstr ""
-#: ipalib/plugins/pwpolicy.py:341
+#: ipalib/plugins/pwpolicy.py:419
msgid "Add a new group password policy."
msgstr ""
-#: ipalib/plugins/pwpolicy.py:368
+#: ipalib/plugins/pwpolicy.py:445
msgid "Delete a group password policy."
msgstr ""
-#: ipalib/plugins/pwpolicy.py:380
+#: ipalib/plugins/pwpolicy.py:457
msgid "cannot delete global password policy"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:396
+#: ipalib/plugins/pwpolicy.py:472
msgid "Modify a group password policy."
msgstr ""
-#: ipalib/plugins/pwpolicy.py:407
+#: ipalib/plugins/pwpolicy.py:483
msgid "priority cannot be set on global policy"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:440
+#: ipalib/plugins/pwpolicy.py:515
msgid "Display information about password policy."
msgstr ""
-#: ipalib/plugins/pwpolicy.py:445
+#: ipalib/plugins/pwpolicy.py:520
msgid "Display effective policy for a specific user"
msgstr ""
-#: ipalib/plugins/pwpolicy.py:470
+#: ipalib/plugins/pwpolicy.py:544
msgid "Search for group password policies."
msgstr ""
+#: ipalib/plugins/radiusproxy.py:27
+msgid ""
+"\n"
+"RADIUS Proxy Servers\n"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:29
+msgid ""
+"\n"
+"Manage RADIUS Proxy Servers.\n"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:31
+msgid ""
+"\n"
+"IPA supports the use of an external RADIUS proxy server for krb5 OTP\n"
+"authentications. This permits a great deal of flexibility when\n"
+"integrating with third-party authentication services.\n"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:37
+msgid ""
+"\n"
+" Add a new server:\n"
+" ipa radiusproxy-add MyRADIUS --server=radius.example.com:1812\n"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:40
+msgid ""
+"\n"
+" Find all servers whose entries include the string \"example.com\":\n"
+" ipa radiusproxy-find example.com\n"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:43
+msgid ""
+"\n"
+" Examine the configuration:\n"
+" ipa radiusproxy-show MyRADIUS\n"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:46
+msgid ""
+"\n"
+" Change the secret:\n"
+" ipa radiusproxy-mod MyRADIUS --secret\n"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:49
+msgid ""
+"\n"
+" Delete a configuration:\n"
+" ipa radiusproxy-del MyRADIUS\n"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:60
+msgid "invalid attribute name"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:72
+msgid "invalid port number"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:90
+msgid "RADIUS proxy server"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:91
+msgid "RADIUS proxy servers"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:98
+msgid "RADIUS Servers"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:99
+msgid "RADIUS Server"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:104
+msgid "RADIUS proxy server name"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:110
+msgid "A description of this RADIUS proxy server"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:114 ipalib/plugins/user.py:101
+msgid "Server"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:115
+msgid "The hostname or IP (with or without port)"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:119
+msgid "Secret"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:120
+msgid "The secret used to encrypt data"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:126
+msgid "Timeout"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:127
+msgid "The total timeout across all retries (in seconds)"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:132
+msgid "Retries"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:133
+msgid "The number of times to retry authentication"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:139
+msgid "User attribute"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:140
+msgid "The username attribute on the user object"
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:146
+msgid "Add a new RADIUS proxy server."
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:147
+#, python-format
+msgid "Added RADIUS proxy server \"%(value)s\""
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:151
+msgid "Delete a RADIUS proxy server."
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:152
+#, python-format
+msgid "Deleted RADIUS proxy server \"%(value)s\""
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:156
+msgid "Modify a RADIUS proxy server."
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:157
+#, python-format
+msgid "Modified RADIUS proxy server \"%(value)s\""
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:161
+msgid "Search for RADIUS proxy servers."
+msgstr ""
+
+#: ipalib/plugins/radiusproxy.py:163
+#, python-format
+msgid "%(count)d RADIUS proxy server matched"
+msgid_plural "%(count)d RADIUS proxy servers matched"
+msgstr[0] ""
+msgstr[1] ""
+
+#: ipalib/plugins/radiusproxy.py:168
+msgid "Display information about a RADIUS proxy server."
+msgstr ""
+
#: ipalib/plugins/realmdomains.py:30
msgid ""
"\n"
@@ -8177,51 +9301,51 @@ msgid ""
" ipa realmdomains-mod --del-domain=olddomain.com\n"
msgstr ""
-#: ipalib/plugins/realmdomains.py:61
+#: ipalib/plugins/realmdomains.py:70
msgid "Realm domains"
msgstr ""
-#: ipalib/plugins/realmdomains.py:79
+#: ipalib/plugins/realmdomains.py:98
msgid "Add domain"
msgstr ""
-#: ipalib/plugins/realmdomains.py:85
+#: ipalib/plugins/realmdomains.py:104
msgid "Delete domain"
msgstr ""
-#: ipalib/plugins/realmdomains.py:93
+#: ipalib/plugins/realmdomains.py:112
msgid "Modify realm domains."
msgstr ""
-#: ipalib/plugins/realmdomains.py:98
+#: ipalib/plugins/realmdomains.py:117
msgid "Force adding domain even if not in DNS"
msgstr ""
-#: ipalib/plugins/realmdomains.py:111
+#: ipalib/plugins/realmdomains.py:130
msgid ""
"you cannot specify the --domain option together with --add-domain or --del-"
"domain"
msgstr ""
-#: ipalib/plugins/realmdomains.py:113 ipalib/plugins/realmdomains.py:133
+#: ipalib/plugins/realmdomains.py:132 ipalib/plugins/realmdomains.py:152
msgid "cannot delete domain of IPA server"
msgstr ""
-#: ipalib/plugins/realmdomains.py:118
+#: ipalib/plugins/realmdomains.py:137
#, python-format
msgid "no SOA or NS records found for domains: %s"
msgstr ""
-#: ipalib/plugins/realmdomains.py:127
+#: ipalib/plugins/realmdomains.py:146
#, python-format
msgid "no SOA or NS records found for domain %s"
msgstr ""
-#: ipalib/plugins/realmdomains.py:190
+#: ipalib/plugins/realmdomains.py:209
msgid "Display the list of realm domains."
msgstr ""
-#: ipalib/plugins/role.py:26
+#: ipalib/plugins/role.py:27
msgid ""
"\n"
"Roles\n"
@@ -8260,93 +9384,93 @@ msgid ""
" add users, reset passwords or add a user to the default IPA user group.\n"
msgstr ""
-#: ipalib/plugins/role.py:66
+#: ipalib/plugins/role.py:70
msgid "role"
msgstr ""
-#: ipalib/plugins/role.py:67
+#: ipalib/plugins/role.py:71
msgid "roles"
msgstr ""
-#: ipalib/plugins/role.py:82
+#: ipalib/plugins/role.py:129
msgid "Role"
msgstr ""
-#: ipalib/plugins/role.py:87
+#: ipalib/plugins/role.py:134
msgid "Role name"
msgstr ""
-#: ipalib/plugins/role.py:93
+#: ipalib/plugins/role.py:140
msgid "A description of this role-group"
msgstr ""
-#: ipalib/plugins/role.py:101
+#: ipalib/plugins/role.py:148
msgid "Add a new role."
msgstr ""
-#: ipalib/plugins/role.py:103
+#: ipalib/plugins/role.py:150
#, python-format
msgid "Added role \"%(value)s\""
msgstr ""
-#: ipalib/plugins/role.py:109
+#: ipalib/plugins/role.py:156
msgid "Delete a role."
msgstr ""
-#: ipalib/plugins/role.py:111
+#: ipalib/plugins/role.py:158
#, python-format
msgid "Deleted role \"%(value)s\""
msgstr ""
-#: ipalib/plugins/role.py:117
+#: ipalib/plugins/role.py:164
msgid "Modify a role."
msgstr ""
-#: ipalib/plugins/role.py:119
+#: ipalib/plugins/role.py:166
#, python-format
msgid "Modified role \"%(value)s\""
msgstr ""
-#: ipalib/plugins/role.py:125
+#: ipalib/plugins/role.py:172
msgid "Search for roles."
msgstr ""
-#: ipalib/plugins/role.py:128
+#: ipalib/plugins/role.py:175
#, python-format
msgid "%(count)d role matched"
msgid_plural "%(count)d roles matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/role.py:135
+#: ipalib/plugins/role.py:182
msgid "Display information about a role."
msgstr ""
-#: ipalib/plugins/role.py:141
+#: ipalib/plugins/role.py:188
msgid "Add members to a role."
msgstr ""
-#: ipalib/plugins/role.py:147
+#: ipalib/plugins/role.py:194
msgid "Remove members from a role."
msgstr ""
-#: ipalib/plugins/role.py:153
+#: ipalib/plugins/role.py:200
msgid "Add privileges to a role."
msgstr ""
-#: ipalib/plugins/role.py:168
+#: ipalib/plugins/role.py:215
msgid "Number of privileges added"
msgstr ""
-#: ipalib/plugins/role.py:176
+#: ipalib/plugins/role.py:223
msgid "Remove privileges from a role."
msgstr ""
-#: ipalib/plugins/role.py:191
+#: ipalib/plugins/role.py:238
msgid "Number of privileges removed"
msgstr ""
-#: ipalib/plugins/selfservice.py:28
+#: ipalib/plugins/selfservice.py:29
msgid ""
"\n"
"Self-service Permissions\n"
@@ -8379,73 +9503,73 @@ msgid ""
" ipa selfservice-del \"Users manage their own address\"\n"
msgstr ""
-#: ipalib/plugins/selfservice.py:71
+#: ipalib/plugins/selfservice.py:75
msgid "self service permission"
msgstr ""
-#: ipalib/plugins/selfservice.py:72
+#: ipalib/plugins/selfservice.py:76
msgid "self service permissions"
msgstr ""
-#: ipalib/plugins/selfservice.py:73
+#: ipalib/plugins/selfservice.py:77
msgid "Self Service Permissions"
msgstr ""
-#: ipalib/plugins/selfservice.py:74
+#: ipalib/plugins/selfservice.py:78
msgid "Self Service Permission"
msgstr ""
-#: ipalib/plugins/selfservice.py:79 ipalib/plugins/selfservice.py:80
+#: ipalib/plugins/selfservice.py:83 ipalib/plugins/selfservice.py:84
msgid "Self-service name"
msgstr ""
-#: ipalib/plugins/selfservice.py:94
+#: ipalib/plugins/selfservice.py:98
msgid "Attributes to which the permission applies."
msgstr ""
-#: ipalib/plugins/selfservice.py:123
+#: ipalib/plugins/selfservice.py:127
msgid "Add a new self-service permission."
msgstr ""
-#: ipalib/plugins/selfservice.py:125
+#: ipalib/plugins/selfservice.py:129
#, python-format
msgid "Added selfservice \"%(value)s\""
msgstr ""
-#: ipalib/plugins/selfservice.py:145
+#: ipalib/plugins/selfservice.py:149
msgid "Delete a self-service permission."
msgstr ""
-#: ipalib/plugins/selfservice.py:148
+#: ipalib/plugins/selfservice.py:152
#, python-format
msgid "Deleted selfservice \"%(value)s\""
msgstr ""
-#: ipalib/plugins/selfservice.py:163
+#: ipalib/plugins/selfservice.py:167
msgid "Modify a self-service permission."
msgstr ""
-#: ipalib/plugins/selfservice.py:165
+#: ipalib/plugins/selfservice.py:169
#, python-format
msgid "Modified selfservice \"%(value)s\""
msgstr ""
-#: ipalib/plugins/selfservice.py:185
+#: ipalib/plugins/selfservice.py:189
msgid "Search for a self-service permission."
msgstr ""
-#: ipalib/plugins/selfservice.py:188
+#: ipalib/plugins/selfservice.py:192
#, python-format
msgid "%(count)d selfservice matched"
msgid_plural "%(count)d selfservices matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/selfservice.py:212
+#: ipalib/plugins/selfservice.py:216
msgid "Display information about a self-service permission."
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:26
+#: ipalib/plugins/selinuxusermap.py:27
msgid ""
"\n"
"SELinux User Mapping\n"
@@ -8496,138 +9620,138 @@ msgid ""
" and the default SELinux user are available in the config-show command.\n"
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:71
+#: ipalib/plugins/selinuxusermap.py:74
msgid "HBAC rule and local members cannot both be set"
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:98
+#: ipalib/plugins/selinuxusermap.py:101
msgid "Invalid SELinux user name, only a-Z and _ are allowed"
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:100
+#: ipalib/plugins/selinuxusermap.py:103
msgid "Invalid MLS value, must match s[0-15](-s[0-15])"
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:103
+#: ipalib/plugins/selinuxusermap.py:106
msgid ""
"Invalid MCS value, must match c[0-1023].c[0-1023] and/or c[0-1023]-c[0-c0123]"
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:118
+#: ipalib/plugins/selinuxusermap.py:121
msgid "SELinux user map list not found in configuration"
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:123
+#: ipalib/plugins/selinuxusermap.py:126
#, python-format
msgid "SELinux user %(user)s not found in ordering list (in config)"
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:134
+#: ipalib/plugins/selinuxusermap.py:138
msgid "SELinux User Map rule"
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:135
+#: ipalib/plugins/selinuxusermap.py:139
msgid "SELinux User Map rules"
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:152
+#: ipalib/plugins/selinuxusermap.py:195
msgid "SELinux User Maps"
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:153
+#: ipalib/plugins/selinuxusermap.py:196
msgid "SELinux User Map"
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:163
+#: ipalib/plugins/selinuxusermap.py:206
msgid "SELinux User"
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:168
+#: ipalib/plugins/selinuxusermap.py:211
msgid "HBAC Rule that defines the users, groups and hostgroups"
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:228
+#: ipalib/plugins/selinuxusermap.py:271
#, python-format
msgid "HBAC rule %(rule)s not found"
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:247
+#: ipalib/plugins/selinuxusermap.py:290
msgid "Create a new SELinux User Map."
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:249
+#: ipalib/plugins/selinuxusermap.py:292
#, python-format
msgid "Added SELinux User Map \"%(value)s\""
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:284
+#: ipalib/plugins/selinuxusermap.py:327
msgid "Delete a SELinux User Map."
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:286
+#: ipalib/plugins/selinuxusermap.py:329
#, python-format
msgid "Deleted SELinux User Map \"%(value)s\""
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:292
+#: ipalib/plugins/selinuxusermap.py:335
msgid "Modify a SELinux User Map."
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:294
+#: ipalib/plugins/selinuxusermap.py:337
#, python-format
msgid "Modified SELinux User Map \"%(value)s\""
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:348
+#: ipalib/plugins/selinuxusermap.py:391
msgid "Search for SELinux User Maps."
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:351
+#: ipalib/plugins/selinuxusermap.py:394
#, python-format
msgid "%(count)d SELinux User Map matched"
msgid_plural "%(count)d SELinux User Maps matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/selinuxusermap.py:381
+#: ipalib/plugins/selinuxusermap.py:423
msgid "Display the properties of a SELinux User Map rule."
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:392
+#: ipalib/plugins/selinuxusermap.py:434
msgid "Enable an SELinux User Map rule."
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:394
+#: ipalib/plugins/selinuxusermap.py:436
#, python-format
msgid "Enabled SELinux User Map \"%(value)s\""
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:419
+#: ipalib/plugins/selinuxusermap.py:464
msgid "Disable an SELinux User Map rule."
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:421
+#: ipalib/plugins/selinuxusermap.py:466
#, python-format
msgid "Disabled SELinux User Map \"%(value)s\""
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:446
+#: ipalib/plugins/selinuxusermap.py:494
msgid "Add users and groups to an SELinux User Map rule."
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:469
+#: ipalib/plugins/selinuxusermap.py:518
msgid "Remove users and groups from an SELinux User Map rule."
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:478
+#: ipalib/plugins/selinuxusermap.py:527
msgid "Add target hosts and hostgroups to an SELinux User Map rule."
msgstr ""
-#: ipalib/plugins/selinuxusermap.py:501
+#: ipalib/plugins/selinuxusermap.py:551
msgid "Remove target hosts and hostgroups from an SELinux User Map rule."
msgstr ""
-#: ipalib/plugins/service.py:35
+#: ipalib/plugins/service.py:36
msgid ""
"\n"
"Services\n"
@@ -8690,133 +9814,133 @@ msgid ""
"\n"
msgstr ""
-#: ipalib/plugins/service.py:133
+#: ipalib/plugins/service.py:136
msgid "Requires pre-authentication"
msgstr ""
-#: ipalib/plugins/service.py:134
+#: ipalib/plugins/service.py:137
msgid "Pre-authentication is required for the service"
msgstr ""
-#: ipalib/plugins/service.py:139
+#: ipalib/plugins/service.py:142
msgid "Trusted for delegation"
msgstr ""
-#: ipalib/plugins/service.py:140
+#: ipalib/plugins/service.py:143
msgid "Client credentials may be delegated to the service"
msgstr ""
-#: ipalib/plugins/service.py:159
+#: ipalib/plugins/service.py:162
msgid "missing service"
msgstr ""
-#: ipalib/plugins/service.py:163
+#: ipalib/plugins/service.py:166
msgid "blank service"
msgstr ""
-#: ipalib/plugins/service.py:167
+#: ipalib/plugins/service.py:170
msgid "unable to determine realm"
msgstr ""
-#: ipalib/plugins/service.py:240
+#: ipalib/plugins/service.py:243
msgid "This principal is required by the IPA master"
msgstr ""
-#: ipalib/plugins/service.py:295
+#: ipalib/plugins/service.py:299
msgid "service"
msgstr ""
-#: ipalib/plugins/service.py:296
+#: ipalib/plugins/service.py:300
msgid "services"
msgstr ""
-#: ipalib/plugins/service.py:322
+#: ipalib/plugins/service.py:372
msgid "Service principal"
msgstr ""
-#: ipalib/plugins/service.py:334
+#: ipalib/plugins/service.py:384
msgid "PAC type"
msgstr ""
-#: ipalib/plugins/service.py:335
+#: ipalib/plugins/service.py:385
msgid ""
"Override default list of supported PAC types. Use 'NONE' to disable PAC "
"support for this service, e.g. this might be necessary for NFS services."
msgstr ""
-#: ipalib/plugins/service.py:356
+#: ipalib/plugins/service.py:406
msgid "NONE value cannot be combined with other PAC types"
msgstr ""
-#: ipalib/plugins/service.py:362
+#: ipalib/plugins/service.py:412
msgid "Add a new IPA new service."
msgstr ""
-#: ipalib/plugins/service.py:364
+#: ipalib/plugins/service.py:414
#, python-format
msgid "Added service \"%(value)s\""
msgstr ""
-#: ipalib/plugins/service.py:370
+#: ipalib/plugins/service.py:420
msgid "force principal name even if not in DNS"
msgstr ""
-#: ipalib/plugins/service.py:384
+#: ipalib/plugins/service.py:434
#, python-format
msgid "The host '%s' does not exist to add a service to."
msgstr ""
-#: ipalib/plugins/service.py:424
+#: ipalib/plugins/service.py:474
msgid "Delete an IPA service."
msgstr ""
-#: ipalib/plugins/service.py:426
+#: ipalib/plugins/service.py:476
#, python-format
msgid "Deleted service \"%(value)s\""
msgstr ""
-#: ipalib/plugins/service.py:469
+#: ipalib/plugins/service.py:519
msgid "Modify an existing IPA service."
msgstr ""
-#: ipalib/plugins/service.py:471
+#: ipalib/plugins/service.py:521
#, python-format
msgid "Modified service \"%(value)s\""
msgstr ""
-#: ipalib/plugins/service.py:517
+#: ipalib/plugins/service.py:566
msgid "Search for IPA services."
msgstr ""
-#: ipalib/plugins/service.py:520
+#: ipalib/plugins/service.py:569
#, python-format
msgid "%(count)d service matched"
msgid_plural "%(count)d services matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/service.py:555
+#: ipalib/plugins/service.py:603
msgid "Display information about an IPA service."
msgstr ""
-#: ipalib/plugins/service.py:590
+#: ipalib/plugins/service.py:638
msgid "Add hosts that can manage this service."
msgstr ""
-#: ipalib/plugins/service.py:599
+#: ipalib/plugins/service.py:647
msgid "Remove hosts that can manage this service."
msgstr ""
-#: ipalib/plugins/service.py:608
+#: ipalib/plugins/service.py:656
msgid "Disable the Kerberos key and SSL certificate of a service."
msgstr ""
-#: ipalib/plugins/service.py:611
+#: ipalib/plugins/service.py:659
#, python-format
msgid "Disabled service \"%(value)s\""
msgstr ""
-#: ipalib/plugins/sudocmd.py:29
+#: ipalib/plugins/sudocmd.py:30
msgid ""
"\n"
"Sudo Commands\n"
@@ -8833,73 +9957,73 @@ msgid ""
"\n"
msgstr ""
-#: ipalib/plugins/sudocmd.py:44 ipalib/plugins/sudocmdgroup.py:48
+#: ipalib/plugins/sudocmd.py:47 ipalib/plugins/sudocmdgroup.py:51
msgid "commands for controlling sudo configuration"
msgstr ""
-#: ipalib/plugins/sudocmd.py:51
+#: ipalib/plugins/sudocmd.py:55
msgid "sudo command"
msgstr ""
-#: ipalib/plugins/sudocmd.py:52
+#: ipalib/plugins/sudocmd.py:56
msgid "sudo commands"
msgstr ""
-#: ipalib/plugins/sudocmd.py:66
+#: ipalib/plugins/sudocmd.py:108
msgid "Sudo Commands"
msgstr ""
-#: ipalib/plugins/sudocmd.py:67 ipalib/plugins/sudocmd.py:72
+#: ipalib/plugins/sudocmd.py:109 ipalib/plugins/sudocmd.py:114
msgid "Sudo Command"
msgstr ""
-#: ipalib/plugins/sudocmd.py:78
+#: ipalib/plugins/sudocmd.py:120
msgid "A description of this command"
msgstr ""
-#: ipalib/plugins/sudocmd.py:101
+#: ipalib/plugins/sudocmd.py:143
msgid "Create new Sudo Command."
msgstr ""
-#: ipalib/plugins/sudocmd.py:103
+#: ipalib/plugins/sudocmd.py:145
#, python-format
msgid "Added Sudo Command \"%(value)s\""
msgstr ""
-#: ipalib/plugins/sudocmd.py:108
+#: ipalib/plugins/sudocmd.py:150
msgid "Delete Sudo Command."
msgstr ""
-#: ipalib/plugins/sudocmd.py:110
+#: ipalib/plugins/sudocmd.py:152
#, python-format
msgid "Deleted Sudo Command \"%(value)s\""
msgstr ""
-#: ipalib/plugins/sudocmd.py:141
+#: ipalib/plugins/sudocmd.py:183
msgid "Modify Sudo Command."
msgstr ""
-#: ipalib/plugins/sudocmd.py:143
+#: ipalib/plugins/sudocmd.py:185
#, python-format
msgid "Modified Sudo Command \"%(value)s\""
msgstr ""
-#: ipalib/plugins/sudocmd.py:148
+#: ipalib/plugins/sudocmd.py:190
msgid "Search for Sudo Commands."
msgstr ""
-#: ipalib/plugins/sudocmd.py:151
+#: ipalib/plugins/sudocmd.py:193
#, python-format
msgid "%(count)d Sudo Command matched"
msgid_plural "%(count)d Sudo Commands matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/sudocmd.py:157
+#: ipalib/plugins/sudocmd.py:199
msgid "Display Sudo Command."
msgstr ""
-#: ipalib/plugins/sudocmdgroup.py:25
+#: ipalib/plugins/sudocmdgroup.py:26
msgid ""
"\n"
"Groups of Sudo Commands\n"
@@ -8925,77 +10049,85 @@ msgid ""
" ipa group-show localadmins\n"
msgstr ""
-#: ipalib/plugins/sudocmdgroup.py:55
+#: ipalib/plugins/sudocmdgroup.py:59
msgid "sudo command group"
msgstr ""
-#: ipalib/plugins/sudocmdgroup.py:56
+#: ipalib/plugins/sudocmdgroup.py:60
msgid "sudo command groups"
msgstr ""
-#: ipalib/plugins/sudocmdgroup.py:67 ipalib/plugins/sudocmdgroup.py:72
+#: ipalib/plugins/sudocmdgroup.py:111 ipalib/plugins/sudocmdgroup.py:116
msgid "Sudo Command Group"
msgstr ""
-#: ipalib/plugins/sudocmdgroup.py:95
+#: ipalib/plugins/sudocmdgroup.py:139
msgid "Create new Sudo Command Group."
msgstr ""
-#: ipalib/plugins/sudocmdgroup.py:97
+#: ipalib/plugins/sudocmdgroup.py:141
#, python-format
msgid "Added Sudo Command Group \"%(value)s\""
msgstr ""
-#: ipalib/plugins/sudocmdgroup.py:103
+#: ipalib/plugins/sudocmdgroup.py:147
msgid "Delete Sudo Command Group."
msgstr ""
-#: ipalib/plugins/sudocmdgroup.py:105
+#: ipalib/plugins/sudocmdgroup.py:149
#, python-format
msgid "Deleted Sudo Command Group \"%(value)s\""
msgstr ""
-#: ipalib/plugins/sudocmdgroup.py:111
+#: ipalib/plugins/sudocmdgroup.py:155
msgid "Modify Sudo Command Group."
msgstr ""
-#: ipalib/plugins/sudocmdgroup.py:113
+#: ipalib/plugins/sudocmdgroup.py:157
#, python-format
msgid "Modified Sudo Command Group \"%(value)s\""
msgstr ""
-#: ipalib/plugins/sudocmdgroup.py:119
+#: ipalib/plugins/sudocmdgroup.py:163
msgid "Search for Sudo Command Groups."
msgstr ""
-#: ipalib/plugins/sudocmdgroup.py:122
+#: ipalib/plugins/sudocmdgroup.py:166
#, python-format
msgid "%(count)d Sudo Command Group matched"
msgid_plural "%(count)d Sudo Command Groups matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/sudocmdgroup.py:130
+#: ipalib/plugins/sudocmdgroup.py:174
msgid "Display Sudo Command Group."
msgstr ""
-#: ipalib/plugins/sudocmdgroup.py:136
+#: ipalib/plugins/sudocmdgroup.py:180
msgid "Add members to Sudo Command Group."
msgstr ""
-#: ipalib/plugins/sudocmdgroup.py:142
+#: ipalib/plugins/sudocmdgroup.py:186
msgid "Remove members from Sudo Command Group."
msgstr ""
-#: ipalib/plugins/sudorule.py:26
+#: ipalib/plugins/sudorule.py:38
msgid ""
"\n"
"Sudo Rules\n"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:40
+msgid ""
"\n"
"Sudo (su \"do\") allows a system administrator to delegate authority to\n"
"give certain users (or groups of users) the ability to run some (or all)\n"
"commands as root or another user while providing an audit trail of the\n"
"commands and their arguments.\n"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:45
+msgid ""
"\n"
"FreeIPA provides a means to configure the various aspects of Sudo:\n"
" Users: The user(s)/group(s) allowed to invoke Sudo.\n"
@@ -9007,308 +10139,401 @@ msgid ""
"invoked with.\n"
" RunAsGroup: The group(s) whose gid rights Sudo will be invoked with.\n"
" Options: The various Sudoers Options that can modify Sudo's behavior.\n"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:54
+msgid ""
"\n"
"An order can be added to a sudorule to control the order in which they\n"
"are evaluated (if the client supports it). This order is an integer and\n"
"must be unique.\n"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:58
+msgid ""
"\n"
"FreeIPA provides a designated binddn to use with Sudo located at:\n"
"uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:61
+msgid ""
"\n"
"To enable the binddn run the following command to set the password:\n"
"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -"
"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example,"
"dc=com\n"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:68
+msgid ""
"\n"
-"For more information, see the FreeIPA Documentation to Sudo.\n"
+" Create a new rule:\n"
+" ipa sudorule-add readfiles\n"
msgstr ""
-#: ipalib/plugins/sudorule.py:58
+#: ipalib/plugins/sudorule.py:71
+msgid ""
+"\n"
+" Add sudo command object and add it as allowed command in the rule:\n"
+" ipa sudocmd-add /usr/bin/less\n"
+" ipa sudorule-add-allow-command readfiles --sudocmds /usr/bin/less\n"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:75
+msgid ""
+"\n"
+" Add a host to the rule:\n"
+" ipa sudorule-add-host readfiles --hosts server.example.com\n"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:78
+msgid ""
+"\n"
+" Add a user to the rule:\n"
+" ipa sudorule-add-user readfiles --users jsmith\n"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:81
+msgid ""
+"\n"
+" Add a special Sudo rule for default Sudo server configuration:\n"
+" ipa sudorule-add defaults\n"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:84
+msgid ""
+"\n"
+" Set a default Sudo option:\n"
+" ipa sudorule-add-option defaults --sudooption '!authenticate'\n"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:91
msgid "Commands for controlling sudo configuration"
msgstr ""
-#: ipalib/plugins/sudorule.py:61
+#: ipalib/plugins/sudorule.py:97
msgid "this option has been deprecated."
msgstr ""
-#: ipalib/plugins/sudorule.py:77
+#: ipalib/plugins/sudorule.py:101
+msgid "host masks of allowed hosts"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:124
msgid "sudo rule"
msgstr ""
-#: ipalib/plugins/sudorule.py:78
+#: ipalib/plugins/sudorule.py:125
msgid "sudo rules"
msgstr ""
-#: ipalib/plugins/sudorule.py:100
+#: ipalib/plugins/sudorule.py:212
msgid "Sudo Rules"
msgstr ""
-#: ipalib/plugins/sudorule.py:101
+#: ipalib/plugins/sudorule.py:213
msgid "Sudo Rule"
msgstr ""
-#: ipalib/plugins/sudorule.py:131
+#: ipalib/plugins/sudorule.py:243
msgid "Command category"
msgstr ""
-#: ipalib/plugins/sudorule.py:132
+#: ipalib/plugins/sudorule.py:244
msgid "Command category the rule applies to"
msgstr ""
-#: ipalib/plugins/sudorule.py:137
+#: ipalib/plugins/sudorule.py:249
msgid "RunAs User category"
msgstr ""
-#: ipalib/plugins/sudorule.py:138
+#: ipalib/plugins/sudorule.py:250
msgid "RunAs User category the rule applies to"
msgstr ""
-#: ipalib/plugins/sudorule.py:143
+#: ipalib/plugins/sudorule.py:255
msgid "RunAs Group category"
msgstr ""
-#: ipalib/plugins/sudorule.py:144
+#: ipalib/plugins/sudorule.py:256
msgid "RunAs Group category the rule applies to"
msgstr ""
-#: ipalib/plugins/sudorule.py:149
+#: ipalib/plugins/sudorule.py:261
msgid "Sudo order"
msgstr ""
-#: ipalib/plugins/sudorule.py:150
+#: ipalib/plugins/sudorule.py:262
msgid "integer to order the Sudo rules"
msgstr ""
-#: ipalib/plugins/sudorule.py:171
+#: ipalib/plugins/sudorule.py:276
+msgid "External User"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:277
+msgid "External User the rule applies to (sudorule-find only)"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:289
+msgid "Host Masks"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:295
msgid "Sudo Allow Commands"
msgstr ""
-#: ipalib/plugins/sudorule.py:175
+#: ipalib/plugins/sudorule.py:299
msgid "Sudo Deny Commands"
msgstr ""
-#: ipalib/plugins/sudorule.py:179
+#: ipalib/plugins/sudorule.py:303
msgid "Sudo Allow Command Groups"
msgstr ""
-#: ipalib/plugins/sudorule.py:183
+#: ipalib/plugins/sudorule.py:307
msgid "Sudo Deny Command Groups"
msgstr ""
-#: ipalib/plugins/sudorule.py:187
+#: ipalib/plugins/sudorule.py:311
msgid "RunAs Users"
msgstr ""
-#: ipalib/plugins/sudorule.py:188
+#: ipalib/plugins/sudorule.py:312
msgid "Run as a user"
msgstr ""
-#: ipalib/plugins/sudorule.py:192
+#: ipalib/plugins/sudorule.py:316
msgid "Groups of RunAs Users"
msgstr ""
-#: ipalib/plugins/sudorule.py:193
+#: ipalib/plugins/sudorule.py:317
msgid "Run as any user within a specified group"
msgstr ""
-#: ipalib/plugins/sudorule.py:198
-msgid "External User"
+#: ipalib/plugins/sudorule.py:322
+msgid "RunAs External User"
msgstr ""
-#: ipalib/plugins/sudorule.py:199
-msgid "External User the rule applies to (sudorule-find only)"
+#: ipalib/plugins/sudorule.py:323
+msgid "External User the commands can run as (sudorule-find only)"
msgstr ""
-#: ipalib/plugins/sudorule.py:203
-msgid "RunAs External User"
+#: ipalib/plugins/sudorule.py:327
+msgid "External Groups of RunAs Users"
msgstr ""
-#: ipalib/plugins/sudorule.py:204
-msgid "External User the commands can run as (sudorule-find only)"
+#: ipalib/plugins/sudorule.py:328
+msgid "External Groups of users that the command can run as"
msgstr ""
-#: ipalib/plugins/sudorule.py:208
-msgid "RunAs External Group"
+#: ipalib/plugins/sudorule.py:332
+msgid "RunAs Groups"
msgstr ""
-#: ipalib/plugins/sudorule.py:209
-msgid "External Group the commands can run as (sudorule-find only)"
+#: ipalib/plugins/sudorule.py:333
+msgid "Run with the gid of a specified POSIX group"
msgstr ""
-#: ipalib/plugins/sudorule.py:212 ipalib/plugins/sudorule.py:612
-#: ipalib/plugins/sudorule.py:665
-msgid "Sudo Option"
+#: ipalib/plugins/sudorule.py:338
+msgid "RunAs External Group"
msgstr ""
-#: ipalib/plugins/sudorule.py:216
-msgid "RunAs Groups"
+#: ipalib/plugins/sudorule.py:339
+msgid "External Group the commands can run as (sudorule-find only)"
msgstr ""
-#: ipalib/plugins/sudorule.py:217
-msgid "Run with the gid of a specified POSIX group"
+#: ipalib/plugins/sudorule.py:342 ipalib/plugins/sudorule.py:915
+#: ipalib/plugins/sudorule.py:968
+msgid "Sudo Option"
msgstr ""
-#: ipalib/plugins/sudorule.py:224
+#: ipalib/plugins/sudorule.py:348
#, python-format
msgid "order must be a unique value (%(order)d already used by %(rule)s)"
msgstr ""
-#: ipalib/plugins/sudorule.py:246
+#: ipalib/plugins/sudorule.py:370
msgid "Create new Sudo Rule."
msgstr ""
-#: ipalib/plugins/sudorule.py:255
+#: ipalib/plugins/sudorule.py:379
#, python-format
msgid "Added Sudo Rule \"%(value)s\""
msgstr ""
-#: ipalib/plugins/sudorule.py:261
+#: ipalib/plugins/sudorule.py:384
msgid "Delete Sudo Rule."
msgstr ""
-#: ipalib/plugins/sudorule.py:263
+#: ipalib/plugins/sudorule.py:386
#, python-format
msgid "Deleted Sudo Rule \"%(value)s\""
msgstr ""
-#: ipalib/plugins/sudorule.py:269
+#: ipalib/plugins/sudorule.py:391
msgid "Modify Sudo Rule."
msgstr ""
-#: ipalib/plugins/sudorule.py:271
+#: ipalib/plugins/sudorule.py:393
#, python-format
msgid "Modified Sudo Rule \"%(value)s\""
msgstr ""
-#: ipalib/plugins/sudorule.py:294
+#: ipalib/plugins/sudorule.py:413
+#, python-format
msgid ""
-"command category cannot be set to 'all' while there are allow or deny "
-"commands"
+"%(type)s category cannot be set to 'all' while there are allowed %(objects)s"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:419 ipalib/plugins/user.py:228
+msgid "user"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:419 ipalib/plugins/user.py:229
+msgid "users"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:429
+msgid "command"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:429
+msgid "commands"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:435
+msgid "runAs user"
+msgstr ""
+
+#: ipalib/plugins/sudorule.py:435
+msgid "runAs users"
msgstr ""
-#: ipalib/plugins/sudorule.py:296
-msgid "user runAs category cannot be set to 'all' while there are users"
+#: ipalib/plugins/sudorule.py:440
+msgid "group runAs"
msgstr ""
-#: ipalib/plugins/sudorule.py:298
-msgid "group runAs category cannot be set to 'all' while there are groups"
+#: ipalib/plugins/sudorule.py:440
+msgid "runAs groups"
msgstr ""
-#: ipalib/plugins/sudorule.py:306
+#: ipalib/plugins/sudorule.py:458
msgid "Search for Sudo Rule."
msgstr ""
-#: ipalib/plugins/sudorule.py:309
+#: ipalib/plugins/sudorule.py:461
#, python-format
msgid "%(count)d Sudo Rule matched"
msgid_plural "%(count)d Sudo Rules matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/sudorule.py:316
+#: ipalib/plugins/sudorule.py:467
msgid "Display Sudo Rule."
msgstr ""
-#: ipalib/plugins/sudorule.py:322
+#: ipalib/plugins/sudorule.py:472
msgid "Enable a Sudo Rule."
msgstr ""
-#: ipalib/plugins/sudorule.py:340
+#: ipalib/plugins/sudorule.py:493
#, python-format
msgid "Enabled Sudo Rule \"%s\""
msgstr ""
-#: ipalib/plugins/sudorule.py:346
+#: ipalib/plugins/sudorule.py:498
msgid "Disable a Sudo Rule."
msgstr ""
-#: ipalib/plugins/sudorule.py:364
+#: ipalib/plugins/sudorule.py:519
#, python-format
msgid "Disabled Sudo Rule \"%s\""
msgstr ""
-#: ipalib/plugins/sudorule.py:370 ipalib/plugins/sudorule.py:399
+#: ipalib/plugins/sudorule.py:524 ipalib/plugins/sudorule.py:555
msgid "Add commands and sudo command groups affected by Sudo Rule."
msgstr ""
-#: ipalib/plugins/sudorule.py:382 ipalib/plugins/sudorule.py:411
+#: ipalib/plugins/sudorule.py:539
msgid "commands cannot be added when command category='all'"
msgstr ""
-#: ipalib/plugins/sudorule.py:390 ipalib/plugins/sudorule.py:418
+#: ipalib/plugins/sudorule.py:547 ipalib/plugins/sudorule.py:567
msgid "Remove commands and sudo command groups affected by Sudo Rule."
msgstr ""
-#: ipalib/plugins/sudorule.py:427
+#: ipalib/plugins/sudorule.py:575
msgid "Add users and groups affected by Sudo Rule."
msgstr ""
-#: ipalib/plugins/sudorule.py:450
+#: ipalib/plugins/sudorule.py:607
msgid "Remove users and groups affected by Sudo Rule."
msgstr ""
-#: ipalib/plugins/sudorule.py:463
+#: ipalib/plugins/sudorule.py:625
msgid "Add hosts and hostgroups affected by Sudo Rule."
msgstr ""
-#: ipalib/plugins/sudorule.py:486
+#: ipalib/plugins/sudorule.py:682
msgid "Remove hosts and hostgroups affected by Sudo Rule."
msgstr ""
-#: ipalib/plugins/sudorule.py:498
+#: ipalib/plugins/sudorule.py:727
msgid "Add users and groups for Sudo to execute as."
msgstr ""
-#: ipalib/plugins/sudorule.py:517 ipalib/plugins/sudorule.py:574
+#: ipalib/plugins/sudorule.py:750 ipalib/plugins/sudorule.py:863
msgid "users cannot be added when runAs user or runAs group category='all'"
msgstr ""
-#: ipalib/plugins/sudorule.py:523
+#: ipalib/plugins/sudorule.py:757
#, python-format
msgid "RunAsUser does not accept '%(name)s' as a user name"
msgstr ""
-#: ipalib/plugins/sudorule.py:529
+#: ipalib/plugins/sudorule.py:765
#, python-format
msgid "RunAsUser does not accept '%(name)s' as a group name"
msgstr ""
-#: ipalib/plugins/sudorule.py:542
+#: ipalib/plugins/sudorule.py:804
msgid "Remove users and groups for Sudo to execute as."
msgstr ""
-#: ipalib/plugins/sudorule.py:555
+#: ipalib/plugins/sudorule.py:842
msgid "Add group for Sudo to execute as."
msgstr ""
-#: ipalib/plugins/sudorule.py:580
+#: ipalib/plugins/sudorule.py:870
#, python-format
msgid "RunAsGroup does not accept '%(name)s' as a group name"
msgstr ""
-#: ipalib/plugins/sudorule.py:593
+#: ipalib/plugins/sudorule.py:890
msgid "Remove group for Sudo to execute as."
msgstr ""
-#: ipalib/plugins/sudorule.py:606
+#: ipalib/plugins/sudorule.py:909
msgid "Add an option to the Sudo Rule."
msgstr ""
-#: ipalib/plugins/sudorule.py:649
+#: ipalib/plugins/sudorule.py:953
#, python-format
msgid "Added option \"%(option)s\" to Sudo Rule \"%(rule)s\""
msgstr ""
-#: ipalib/plugins/sudorule.py:659
+#: ipalib/plugins/sudorule.py:962
msgid "Remove an option from Sudo Rule."
msgstr ""
-#: ipalib/plugins/sudorule.py:705
+#: ipalib/plugins/sudorule.py:1011
#, python-format
msgid "Removed option \"%(option)s\" from Sudo Rule \"%(rule)s\""
msgstr ""
-#: ipalib/plugins/trust.py:49
+#: ipalib/plugins/trust.py:50
msgid ""
"\n"
"Cross-realm trusts\n"
@@ -9409,72 +10634,72 @@ msgid ""
"\"\n"
msgstr ""
-#: ipalib/plugins/trust.py:141
+#: ipalib/plugins/trust.py:144
msgid "Non-Active Directory domain"
msgstr ""
-#: ipalib/plugins/trust.py:143
+#: ipalib/plugins/trust.py:146
msgid "RFC4120-compliant Kerberos realm"
msgstr ""
-#: ipalib/plugins/trust.py:144
+#: ipalib/plugins/trust.py:147
msgid "Trusting forest"
msgstr ""
-#: ipalib/plugins/trust.py:145
+#: ipalib/plugins/trust.py:148
msgid "Trusted forest"
msgstr ""
-#: ipalib/plugins/trust.py:146
+#: ipalib/plugins/trust.py:149
msgid "Two-way trust"
msgstr ""
-#: ipalib/plugins/trust.py:147
+#: ipalib/plugins/trust.py:150
msgid "Established and verified"
msgstr ""
-#: ipalib/plugins/trust.py:148
+#: ipalib/plugins/trust.py:151
msgid "Waiting for confirmation by remote side"
msgstr ""
-#: ipalib/plugins/trust.py:149
+#: ipalib/plugins/trust.py:152
msgid "Unknown"
msgstr ""
-#: ipalib/plugins/trust.py:153
+#: ipalib/plugins/trust.py:156
msgid "Trust type (ad for Active Directory, default)"
msgstr ""
-#: ipalib/plugins/trust.py:197
+#: ipalib/plugins/trust.py:309
msgid "trust"
msgstr ""
-#: ipalib/plugins/trust.py:198
+#: ipalib/plugins/trust.py:310
msgid "trusts"
msgstr ""
-#: ipalib/plugins/trust.py:209
+#: ipalib/plugins/trust.py:347
msgid "Trust"
msgstr ""
-#: ipalib/plugins/trust.py:214 ipa-client/ipa-rmkeytab.c:176
+#: ipalib/plugins/trust.py:352 ipa-client/ipa-rmkeytab.c:176
msgid "Realm name"
msgstr ""
-#: ipalib/plugins/trust.py:228
+#: ipalib/plugins/trust.py:366
msgid "SID blacklist incoming"
msgstr ""
-#: ipalib/plugins/trust.py:233
+#: ipalib/plugins/trust.py:371
msgid "SID blacklist outgoing"
msgstr ""
-#: ipalib/plugins/trust.py:250
+#: ipalib/plugins/trust.py:388
#, python-format
msgid "invalid SID: %(value)s"
msgstr ""
-#: ipalib/plugins/trust.py:274
+#: ipalib/plugins/trust.py:410
msgid ""
"\n"
"Add new trust to use.\n"
@@ -9491,144 +10716,145 @@ msgid ""
" "
msgstr ""
-#: ipalib/plugins/trust.py:298
+#: ipalib/plugins/trust.py:434
msgid "Active Directory domain administrator"
msgstr ""
-#: ipalib/plugins/trust.py:302
+#: ipalib/plugins/trust.py:438
msgid "Active directory domain administrator's password"
msgstr ""
-#: ipalib/plugins/trust.py:307
+#: ipalib/plugins/trust.py:443
msgid "Domain controller for the Active Directory domain (optional)"
msgstr ""
-#: ipalib/plugins/trust.py:311
+#: ipalib/plugins/trust.py:447
msgid "Shared secret for the trust"
msgstr ""
-#: ipalib/plugins/trust.py:316
+#: ipalib/plugins/trust.py:452
msgid "First Posix ID of the range reserved for the trusted domain"
msgstr ""
-#: ipalib/plugins/trust.py:320
+#: ipalib/plugins/trust.py:456
msgid "Size of the ID range reserved for the trusted domain"
msgstr ""
-#: ipalib/plugins/trust.py:325
+#: ipalib/plugins/trust.py:461
+#, python-brace-format
msgid "Type of trusted domain ID range, one of {vals}"
msgstr ""
-#: ipalib/plugins/trust.py:331
+#: ipalib/plugins/trust.py:467
#, python-format
msgid "Added Active Directory trust for realm \"%(value)s\""
msgstr ""
-#: ipalib/plugins/trust.py:372 ipalib/plugins/trust.py:414
-#: ipalib/plugins/trust.py:434 ipalib/plugins/trust.py:444
-#: ipalib/plugins/trust.py:671 ipalib/plugins/trust.py:697
-#: ipalib/plugins/trust.py:1230 ipalib/plugins/trust.py:1242
+#: ipalib/plugins/trust.py:468
+#, python-format
+msgid "Re-established trust to domain \"%(value)s\""
+msgstr ""
+
+#: ipalib/plugins/trust.py:517 ipalib/plugins/trust.py:559
+#: ipalib/plugins/trust.py:579 ipalib/plugins/trust.py:589
+#: ipalib/plugins/trust.py:711 ipalib/plugins/trust.py:743
+#: ipalib/plugins/trust.py:1320 ipalib/plugins/trust.py:1332
msgid "AD Trust setup"
msgstr ""
-#: ipalib/plugins/trust.py:374 ipalib/plugins/trust.py:1232
+#: ipalib/plugins/trust.py:519 ipalib/plugins/trust.py:1322
msgid ""
"Cannot perform join operation without Samba 4 support installed. Make sure "
"you have installed server-trust-ad sub-package of IPA"
msgstr ""
-#: ipalib/plugins/trust.py:382
+#: ipalib/plugins/trust.py:527
msgid "missing base_id"
msgstr ""
-#: ipalib/plugins/trust.py:384
+#: ipalib/plugins/trust.py:529
msgid "pysss_murmur is not available on the server and no base-id is given."
msgstr ""
-#: ipalib/plugins/trust.py:390 ipalib/plugins/trust.py:394
+#: ipalib/plugins/trust.py:535 ipalib/plugins/trust.py:539
msgid "trust type"
msgstr ""
-#: ipalib/plugins/trust.py:395
+#: ipalib/plugins/trust.py:540
msgid "only \"ad\" is supported"
msgstr ""
-#: ipalib/plugins/trust.py:405
+#: ipalib/plugins/trust.py:550
msgid "Realm-domain mismatch"
msgstr ""
-#: ipalib/plugins/trust.py:406
+#: ipalib/plugins/trust.py:551
msgid ""
-"To estabilish trust with Active Directory, the domain name and the realm "
-"name of the IPA server must match"
+"To establish trust with Active Directory, the domain name and the realm name "
+"of the IPA server must match"
msgstr ""
-#: ipalib/plugins/trust.py:436
+#: ipalib/plugins/trust.py:581
msgid "Trusted domain and administrator account use different realms"
msgstr ""
-#: ipalib/plugins/trust.py:445
+#: ipalib/plugins/trust.py:590
msgid "Realm administrator password should be specified"
msgstr ""
-#: ipalib/plugins/trust.py:466
+#: ipalib/plugins/trust.py:611
msgid "id range type"
msgstr ""
-#: ipalib/plugins/trust.py:468
+#: ipalib/plugins/trust.py:613
msgid ""
"Only the ipa-ad-trust and ipa-ad-trust-posix are allowed values for --range-"
"type when adding an AD trust."
msgstr ""
-#: ipalib/plugins/trust.py:478
+#: ipalib/plugins/trust.py:623
msgid "id range"
msgstr ""
-#: ipalib/plugins/trust.py:480
+#: ipalib/plugins/trust.py:625
msgid ""
"An id range already exists for this trust. You should either delete the old "
"range, or exclude --base-id/--range-size options from the command."
msgstr ""
-#: ipalib/plugins/trust.py:502
+#: ipalib/plugins/trust.py:647
msgid "range exists"
msgstr ""
-#: ipalib/plugins/trust.py:504
+#: ipalib/plugins/trust.py:649
msgid ""
"ID range with the same name but different domain SID already exists. The ID "
"range for the new trusted domain must be created manually."
msgstr ""
-#: ipalib/plugins/trust.py:511
+#: ipalib/plugins/trust.py:656
msgid "range type change"
msgstr ""
-#: ipalib/plugins/trust.py:512
+#: ipalib/plugins/trust.py:657
msgid ""
"ID range for the trusted domain already exists, but it has a different type. "
"Please remove the old range manually, or do not enforce type via --range-"
"type option."
msgstr ""
-#: ipalib/plugins/trust.py:631
-#, python-format
-msgid "Re-established trust to domain \"%(value)s\""
-msgstr ""
-
-#: ipalib/plugins/trust.py:646
+#: ipalib/plugins/trust.py:686
#, python-format
msgid "Unable to resolve domain controller for '%s' domain. "
msgstr ""
-#: ipalib/plugins/trust.py:652
+#: ipalib/plugins/trust.py:692
msgid ""
"Forward policy is defined for it in IPA DNS, perhaps forwarder points to "
"incorrect host?"
msgstr ""
-#: ipalib/plugins/trust.py:655
+#: ipalib/plugins/trust.py:695
#, python-format
msgid ""
"IPA manages DNS, please verify your DNS configuration and make sure that "
@@ -9637,31 +10863,31 @@ msgid ""
"documentation. "
msgstr ""
-#: ipalib/plugins/trust.py:665
+#: ipalib/plugins/trust.py:705
#, python-format
msgid ""
"Since IPA does not manage DNS records, ensure DNS is configured to resolve "
"'%(domain)s' domain from IPA hosts and back."
msgstr ""
-#: ipalib/plugins/trust.py:672
+#: ipalib/plugins/trust.py:712
msgid "Unable to verify write permissions to the AD"
msgstr ""
-#: ipalib/plugins/trust.py:698
+#: ipalib/plugins/trust.py:744
msgid "Not enough arguments specified to perform trust setup"
msgstr ""
-#: ipalib/plugins/trust.py:701
+#: ipalib/plugins/trust.py:748
msgid "Delete a trust."
msgstr ""
-#: ipalib/plugins/trust.py:703
+#: ipalib/plugins/trust.py:750
#, python-format
msgid "Deleted trust \"%(value)s\""
msgstr ""
-#: ipalib/plugins/trust.py:706
+#: ipalib/plugins/trust.py:754
msgid ""
"\n"
" Modify a trust (for future use).\n"
@@ -9671,199 +10897,203 @@ msgid ""
" "
msgstr ""
-#: ipalib/plugins/trust.py:713
+#: ipalib/plugins/trust.py:761
#, python-format
msgid "Modified trust \"%(value)s\" (change will be effective in 60 seconds)"
msgstr ""
-#: ipalib/plugins/trust.py:724
+#: ipalib/plugins/trust.py:773
msgid "Search for trusts."
msgstr ""
-#: ipalib/plugins/trust.py:729
+#: ipalib/plugins/trust.py:778
#, python-format
msgid "%(count)d trust matched"
msgid_plural "%(count)d trusts matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/trust.py:755
+#: ipalib/plugins/trust.py:804
msgid "Display information about a trust."
msgstr ""
-#: ipalib/plugins/trust.py:792
+#: ipalib/plugins/trust.py:839
msgid "trust configuration"
msgstr ""
-#: ipalib/plugins/trust.py:798 ipalib/plugins/trust.py:799
+#: ipalib/plugins/trust.py:845 ipalib/plugins/trust.py:846
msgid "Global Trust Configuration"
msgstr ""
-#: ipalib/plugins/trust.py:807
+#: ipalib/plugins/trust.py:854
msgid "Security Identifier"
msgstr ""
-#: ipalib/plugins/trust.py:811
+#: ipalib/plugins/trust.py:858
msgid "NetBIOS name"
msgstr ""
-#: ipalib/plugins/trust.py:815
+#: ipalib/plugins/trust.py:862
msgid "Domain GUID"
msgstr ""
-#: ipalib/plugins/trust.py:820
+#: ipalib/plugins/trust.py:867
msgid "Fallback primary group"
msgstr ""
-#: ipalib/plugins/trust.py:832
+#: ipalib/plugins/trust.py:879
msgid "unsupported trust type"
msgstr ""
-#: ipalib/plugins/trust.py:895
+#: ipalib/plugins/trust.py:942
msgid "Modify global trust configuration."
msgstr ""
-#: ipalib/plugins/trust.py:898
+#: ipalib/plugins/trust.py:945
#, python-format
msgid "Modified \"%(value)s\" trust configuration"
msgstr ""
-#: ipalib/plugins/trust.py:917
+#: ipalib/plugins/trust.py:964
msgid "Show global trust configuration."
msgstr ""
-#: ipalib/plugins/trust.py:943
+#: ipalib/plugins/trust.py:991
msgid "Resolve security identifiers of users and groups in trusted domains"
msgstr ""
-#: ipalib/plugins/trust.py:947
+#: ipalib/plugins/trust.py:995
msgid "Security Identifiers (SIDs)"
msgstr ""
-#: ipalib/plugins/trust.py:953
+#: ipalib/plugins/trust.py:1001
msgid "Name"
msgstr ""
-#: ipalib/plugins/trust.py:954
+#: ipalib/plugins/trust.py:1002
msgid "SID"
msgstr ""
-#: ipalib/plugins/trust.py:985
+#: ipalib/plugins/trust.py:1033
msgid "Determine whether ipa-adtrust-install has been run on this system"
msgstr ""
-#: ipalib/plugins/trust.py:1012
+#: ipalib/plugins/trust.py:1060
msgid ""
"Determine whether Schema Compatibility plugin is configured to serve trusted "
"domain users and groups"
msgstr ""
-#: ipalib/plugins/trust.py:1065
+#: ipalib/plugins/trust.py:1113
msgid "Determine whether ipa-adtrust-install has been run with sidgen task"
msgstr ""
-#: ipalib/plugins/trust.py:1081
+#: ipalib/plugins/trust.py:1129
msgid "sidgen_was_run"
msgstr ""
-#: ipalib/plugins/trust.py:1083
+#: ipalib/plugins/trust.py:1131
msgid ""
"This command relies on the existence of the \"editors\" group, but this "
"group was not found."
msgstr ""
-#: ipalib/plugins/trust.py:1102
+#: ipalib/plugins/trust.py:1150
msgid "trust domain"
msgstr ""
-#: ipalib/plugins/trust.py:1103
+#: ipalib/plugins/trust.py:1151
msgid "trust domains"
msgstr ""
-#: ipalib/plugins/trust.py:1108
+#: ipalib/plugins/trust.py:1156
msgid "Trusted domains"
msgstr ""
-#: ipalib/plugins/trust.py:1109
+#: ipalib/plugins/trust.py:1157
msgid "Trusted domain"
msgstr ""
-#: ipalib/plugins/trust.py:1113
+#: ipalib/plugins/trust.py:1161
msgid "Domain name"
msgstr ""
-#: ipalib/plugins/trust.py:1126
+#: ipalib/plugins/trust.py:1174
msgid "Trusted domain partner"
msgstr ""
-#: ipalib/plugins/trust.py:1146
+#: ipalib/plugins/trust.py:1194
msgid "Search domains of the trust"
msgstr ""
-#: ipalib/plugins/trust.py:1153
+#: ipalib/plugins/trust.py:1197
+msgid "Domain enabled"
+msgstr ""
+
+#: ipalib/plugins/trust.py:1224
msgid "Modify trustdomain of the trust"
msgstr ""
-#: ipalib/plugins/trust.py:1160
+#: ipalib/plugins/trust.py:1231
msgid "Allow access from the trusted domain"
msgstr ""
-#: ipalib/plugins/trust.py:1171
+#: ipalib/plugins/trust.py:1242
msgid "Remove infromation about the domain associated with the trust."
msgstr ""
-#: ipalib/plugins/trust.py:1173
+#: ipalib/plugins/trust.py:1244
#, python-format
msgid "Removed information about the trusted domain \"%(value)s\""
msgstr ""
-#: ipalib/plugins/trust.py:1182
+#: ipalib/plugins/trust.py:1253
msgid ""
"cannot delete root domain of the trust, use trust-del to delete the trust "
"itself"
msgstr ""
-#: ipalib/plugins/trust.py:1223
+#: ipalib/plugins/trust.py:1313
msgid "Refresh list of the domains associated with the trust"
msgstr ""
-#: ipalib/plugins/trust.py:1253
+#: ipalib/plugins/trust.py:1343
msgid "List of trust domains successfully refreshed"
msgstr ""
-#: ipalib/plugins/trust.py:1255
+#: ipalib/plugins/trust.py:1345
msgid "No new trust domains were found"
msgstr ""
-#: ipalib/plugins/trust.py:1265
+#: ipalib/plugins/trust.py:1355
msgid "Allow use of IPA resources by the domain of the trust"
msgstr ""
-#: ipalib/plugins/trust.py:1268
+#: ipalib/plugins/trust.py:1358
#, python-format
msgid "Enabled trust domain \"%(value)s\""
msgstr ""
-#: ipalib/plugins/trust.py:1275
+#: ipalib/plugins/trust.py:1365
msgid "Root domain of the trust is always enabled for the existing trust"
msgstr ""
-#: ipalib/plugins/trust.py:1305
+#: ipalib/plugins/trust.py:1395
msgid "Disable use of IPA resources by the domain of the trust"
msgstr ""
-#: ipalib/plugins/trust.py:1308
+#: ipalib/plugins/trust.py:1398
#, python-format
msgid "Disabled trust domain \"%(value)s\""
msgstr ""
-#: ipalib/plugins/trust.py:1315
+#: ipalib/plugins/trust.py:1405
msgid ""
"cannot disable root domain of the trust, use trust-del to delete the trust "
"itself"
msgstr ""
-#: ipalib/plugins/user.py:41
+#: ipalib/plugins/user.py:43
msgid ""
"\n"
"Users\n"
@@ -9909,250 +11139,276 @@ msgid ""
" ipa user-del tuser1\n"
msgstr ""
-#: ipalib/plugins/user.py:89
+#: ipalib/plugins/user.py:92
msgid "Kerberos keys available"
msgstr ""
-#: ipalib/plugins/user.py:98
-msgid "Server"
-msgstr ""
-
-#: ipalib/plugins/user.py:101
+#: ipalib/plugins/user.py:104
msgid "Failed logins"
msgstr ""
-#: ipalib/plugins/user.py:104
+#: ipalib/plugins/user.py:107
msgid "Last successful authentication"
msgstr ""
-#: ipalib/plugins/user.py:107
+#: ipalib/plugins/user.py:110
msgid "Last failed authentication"
msgstr ""
-#: ipalib/plugins/user.py:110
+#: ipalib/plugins/user.py:113
msgid "Time now"
msgstr ""
-#: ipalib/plugins/user.py:125
+#: ipalib/plugins/user.py:134
msgid "must be TRUE or FALSE"
msgstr ""
-#: ipalib/plugins/user.py:197
-msgid "user"
-msgstr ""
-
-#: ipalib/plugins/user.py:198
-msgid "users"
-msgstr ""
-
-#: ipalib/plugins/user.py:234
+#: ipalib/plugins/user.py:438
msgid "User login"
msgstr ""
-#: ipalib/plugins/user.py:241
+#: ipalib/plugins/user.py:445
msgid "First name"
msgstr ""
-#: ipalib/plugins/user.py:245
+#: ipalib/plugins/user.py:449
msgid "Last name"
msgstr ""
-#: ipalib/plugins/user.py:248
+#: ipalib/plugins/user.py:452
msgid "Full name"
msgstr ""
-#: ipalib/plugins/user.py:253
+#: ipalib/plugins/user.py:457
msgid "Display name"
msgstr ""
-#: ipalib/plugins/user.py:258
+#: ipalib/plugins/user.py:462
msgid "Initials"
msgstr ""
-#: ipalib/plugins/user.py:264
+#: ipalib/plugins/user.py:468
msgid "Home directory"
msgstr ""
-#: ipalib/plugins/user.py:267
+#: ipalib/plugins/user.py:471
msgid "GECOS"
msgstr ""
-#: ipalib/plugins/user.py:273
+#: ipalib/plugins/user.py:477
msgid "Login shell"
msgstr ""
-#: ipalib/plugins/user.py:277
+#: ipalib/plugins/user.py:481
msgid "Kerberos principal"
msgstr ""
-#: ipalib/plugins/user.py:285
+#: ipalib/plugins/user.py:489
+msgid "Kerberos principal expiration"
+msgstr ""
+
+#: ipalib/plugins/user.py:493
msgid "Email address"
msgstr ""
-#: ipalib/plugins/user.py:290
+#: ipalib/plugins/user.py:498
msgid "Prompt to set the user password"
msgstr ""
-#: ipalib/plugins/user.py:296
+#: ipalib/plugins/user.py:504
msgid "Generate a random user password"
msgstr ""
-#: ipalib/plugins/user.py:306
+#: ipalib/plugins/user.py:514
msgid "UID"
msgstr ""
-#: ipalib/plugins/user.py:307
+#: ipalib/plugins/user.py:515
msgid "User ID Number (system will assign one if not provided)"
msgstr ""
-#: ipalib/plugins/user.py:312
+#: ipalib/plugins/user.py:520
msgid "Group ID Number"
msgstr ""
-#: ipalib/plugins/user.py:317
+#: ipalib/plugins/user.py:525
msgid "Street address"
msgstr ""
-#: ipalib/plugins/user.py:321
+#: ipalib/plugins/user.py:529
msgid "City"
msgstr ""
-#: ipalib/plugins/user.py:325
+#: ipalib/plugins/user.py:533
msgid "State/Province"
msgstr ""
-#: ipalib/plugins/user.py:328
+#: ipalib/plugins/user.py:536
msgid "ZIP"
msgstr ""
-#: ipalib/plugins/user.py:332
+#: ipalib/plugins/user.py:540
msgid "Telephone Number"
msgstr ""
-#: ipalib/plugins/user.py:335
+#: ipalib/plugins/user.py:543
msgid "Mobile Telephone Number"
msgstr ""
-#: ipalib/plugins/user.py:338
+#: ipalib/plugins/user.py:546
msgid "Pager Number"
msgstr ""
-#: ipalib/plugins/user.py:342
+#: ipalib/plugins/user.py:550
msgid "Fax Number"
msgstr ""
-#: ipalib/plugins/user.py:346
+#: ipalib/plugins/user.py:554
msgid "Org. Unit"
msgstr ""
-#: ipalib/plugins/user.py:349
+#: ipalib/plugins/user.py:557
msgid "Job Title"
msgstr ""
-#: ipalib/plugins/user.py:352
-msgid "Manager"
-msgstr ""
-
-#: ipalib/plugins/user.py:355
+#: ipalib/plugins/user.py:563
msgid "Car License"
msgstr ""
-#: ipalib/plugins/user.py:358
+#: ipalib/plugins/user.py:566
msgid "Account disabled"
msgstr ""
-#: ipalib/plugins/user.py:385 ipalib/plugins/user.py:389
+#: ipalib/plugins/user.py:578
+msgid "User authentication types"
+msgstr ""
+
+#: ipalib/plugins/user.py:579
+msgid "Types of supported user authentication"
+msgstr ""
+
+#: ipalib/plugins/user.py:586
+msgid ""
+"User category (semantics placed on this attribute are for local "
+"interpretation)"
+msgstr ""
+
+#: ipalib/plugins/user.py:591
+msgid "RADIUS proxy configuration"
+msgstr ""
+
+#: ipalib/plugins/user.py:595
+msgid "RADIUS proxy username"
+msgstr ""
+
+#: ipalib/plugins/user.py:598
+msgid "Department Number"
+msgstr ""
+
+#: ipalib/plugins/user.py:601
+msgid "Employee Number"
+msgstr ""
+
+#: ipalib/plugins/user.py:604
+msgid "Employee Type"
+msgstr ""
+
+#: ipalib/plugins/user.py:607
+msgid "Preferred Language"
+msgstr ""
+
+#: ipalib/plugins/user.py:629 ipalib/plugins/user.py:633
#, python-format
msgid "invalid e-mail format: %(email)s"
msgstr ""
-#: ipalib/plugins/user.py:415
+#: ipalib/plugins/user.py:659
#, python-format
msgid "manager %(manager)s not found"
msgstr ""
-#: ipalib/plugins/user.py:434
+#: ipalib/plugins/user.py:677
msgid "Add a new user."
msgstr ""
-#: ipalib/plugins/user.py:436
+#: ipalib/plugins/user.py:679
#, python-format
msgid "Added user \"%(value)s\""
msgstr ""
-#: ipalib/plugins/user.py:443
+#: ipalib/plugins/user.py:686
msgid "Don't create user private group"
msgstr ""
-#: ipalib/plugins/user.py:487 ipalib/plugins/user.py:623
+#: ipalib/plugins/user.py:730 ipalib/plugins/user.py:891
#, python-format
msgid "can be at most %(len)d characters"
msgstr ""
-#: ipalib/plugins/user.py:522
+#: ipalib/plugins/user.py:762
msgid "Default group for new users is not POSIX"
msgstr ""
-#: ipalib/plugins/user.py:596
+#: ipalib/plugins/user.py:852
msgid "Delete a user."
msgstr ""
-#: ipalib/plugins/user.py:598
+#: ipalib/plugins/user.py:854
#, python-format
msgid "Deleted user \"%(value)s\""
msgstr ""
-#: ipalib/plugins/user.py:609
+#: ipalib/plugins/user.py:877
msgid "Modify a user."
msgstr ""
-#: ipalib/plugins/user.py:611
+#: ipalib/plugins/user.py:879
#, python-format
msgid "Modified user \"%(value)s\""
msgstr ""
-#: ipalib/plugins/user.py:664
+#: ipalib/plugins/user.py:950
msgid "Search for users."
msgstr ""
-#: ipalib/plugins/user.py:671
+#: ipalib/plugins/user.py:957
msgid "Self"
msgstr ""
-#: ipalib/plugins/user.py:672
+#: ipalib/plugins/user.py:958
msgid "Display user record for current Kerberos principal"
msgstr ""
-#: ipalib/plugins/user.py:703
+#: ipalib/plugins/user.py:994
#, python-format
msgid "%(count)d user matched"
msgid_plural "%(count)d users matched"
msgstr[0] ""
msgstr[1] ""
-#: ipalib/plugins/user.py:710
+#: ipalib/plugins/user.py:1000
msgid "Display information about a user."
msgstr ""
-#: ipalib/plugins/user.py:726
+#: ipalib/plugins/user.py:1016
msgid "Disable a user account."
msgstr ""
-#: ipalib/plugins/user.py:729
+#: ipalib/plugins/user.py:1019
#, python-format
msgid "Disabled user account \"%(value)s\""
msgstr ""
-#: ipalib/plugins/user.py:748
+#: ipalib/plugins/user.py:1037
msgid "Enable a user account."
msgstr ""
-#: ipalib/plugins/user.py:752
+#: ipalib/plugins/user.py:1041
#, python-format
msgid "Enabled user account \"%(value)s\""
msgstr ""
-#: ipalib/plugins/user.py:769
+#: ipalib/plugins/user.py:1058
msgid ""
"\n"
" Unlock a user account\n"
@@ -10164,12 +11420,12 @@ msgid ""
" an administrator."
msgstr ""
-#: ipalib/plugins/user.py:778
+#: ipalib/plugins/user.py:1067
#, python-format
msgid "Unlocked account \"%(value)s\""
msgstr ""
-#: ipalib/plugins/user.py:794
+#: ipalib/plugins/user.py:1087
msgid ""
"\n"
" Lockout status of a user account\n"
@@ -10198,17 +11454,17 @@ msgid ""
" means that the user may attempt a login again. "
msgstr ""
-#: ipalib/plugins/user.py:852
+#: ipalib/plugins/user.py:1145
#, python-format
msgid "%(host)s failed: %(error)s"
msgstr ""
-#: ipalib/plugins/user.py:888
+#: ipalib/plugins/user.py:1181
#, python-format
msgid "%(host)s failed"
msgstr ""
-#: ipalib/plugins/user.py:898
+#: ipalib/plugins/user.py:1191
#, python-format
msgid "Account disabled: %(disabled)s"
msgstr ""
@@ -10225,107 +11481,100 @@ msgstr ""
msgid "No such virtual command"
msgstr ""
-#: ipalib/rpc.py:673
+#: ipalib/rpc.py:839
msgid "any of the configured servers"
msgstr ""
-#: ipalib/session.py:776 ipalib/session.py:879
+#: ipalib/session.py:777 ipalib/session.py:880
msgid "could not allocate unique new session_id"
msgstr ""
-#: ipalib/util.py:186
+#: ipalib/util.py:191
msgid "Filename is empty"
msgstr ""
-#: ipalib/util.py:190
+#: ipalib/util.py:195
#, python-format
msgid "Permission denied: %(file)s"
msgstr ""
-#: ipalib/util.py:228
-msgid "empty DNS label"
-msgstr ""
-
-#: ipalib/util.py:231
+#: ipalib/util.py:243
msgid "DNS label cannot be longer that 63 characters"
msgstr ""
-#: ipalib/util.py:234
+#: ipalib/util.py:248
#, python-format
msgid ""
-"only letters, numbers,%(underscore)s and - are allowed. DNS label may not "
-"start or end with -"
+"only letters, numbers, %(chars)s are allowed. DNS label may not start or end "
+"with %(chars2)s"
msgstr ""
-#: ipalib/util.py:252
-msgid ""
-"mail account may only include letters, numbers, -, _ and a dot. There may "
-"not be consecutive -, _ and . characters. Its parts may not start or end "
-"with - or _"
-msgstr ""
-
-#: ipalib/util.py:258 ipalib/util.py:297
-msgid "cannot be longer that 255 characters"
-msgstr ""
-
-#: ipalib/util.py:266
+#: ipalib/util.py:268
msgid "too many '@' characters"
msgstr ""
-#: ipalib/util.py:279
+#: ipalib/util.py:270
msgid "missing address domain"
msgstr ""
-#: ipalib/util.py:284
+#: ipalib/util.py:272
msgid "missing mail account"
msgstr ""
-#: ipalib/util.py:303
+#: ipalib/util.py:286
+msgid "cannot be longer that 255 characters"
+msgstr ""
+
+#: ipalib/util.py:292
msgid "hostname contains empty label (consecutive dots)"
msgstr ""
-#: ipalib/util.py:307
+#: ipalib/util.py:296
msgid "not fully qualified"
msgstr ""
-#: ipalib/util.py:319 ipalib/util.py:325
+#: ipalib/util.py:308 ipalib/util.py:314
msgid "invalid SSH public key"
msgstr ""
-#: ipalib/util.py:328
+#: ipalib/util.py:317
msgid "options are not allowed"
msgstr ""
-#: ipalib/x509.py:207
+#: ipalib/util.py:553
+msgid "invalid hostmask"
+msgstr ""
+
+#: ipalib/x509.py:208
msgid "improperly formatted DER-encoded certificate"
msgstr ""
-#: ipalib/x509.py:244
+#: ipalib/x509.py:245
#, python-format
msgid "Issuer \"%(issuer)s\" does not match the expected issuer"
msgstr ""
-#: ipapython/dogtag.py:176
+#: ipapython/dogtag.py:181
#, python-format
msgid "Retrieving CA cert chain failed: %s"
msgstr ""
-#: ipapython/dogtag.py:182
+#: ipapython/dogtag.py:187
#, python-format
msgid "request failed with HTTP status %d"
msgstr ""
-#: ipapython/dogtag.py:205 ipapython/dogtag.py:212
+#: ipapython/dogtag.py:214 ipapython/dogtag.py:221
#, python-format
msgid "Retrieving CA status failed: %s"
msgstr ""
-#: ipapython/ipaldap.py:1000
+#: ipapython/ipaldap.py:1229
#, python-format
msgid "objectclass %s not found"
msgstr ""
-#: ipaserver/dcerpc.py:59
+#: ipaserver/dcerpc.py:60
msgid ""
"\n"
"Classes to manage trust joins using DCE-RPC calls\n"
@@ -10334,136 +11583,142 @@ msgid ""
"and Samba4 python bindings.\n"
msgstr ""
-#: ipaserver/dcerpc.py:76
+#: ipaserver/dcerpc.py:77
msgid "CIFS server denied your credentials"
msgstr ""
-#: ipaserver/dcerpc.py:79
+#: ipaserver/dcerpc.py:80
msgid "communication with CIFS server was unsuccessful"
msgstr ""
-#: ipaserver/dcerpc.py:84
+#: ipaserver/dcerpc.py:85
msgid "AD domain controller"
msgstr ""
-#: ipaserver/dcerpc.py:84
+#: ipaserver/dcerpc.py:85
msgid "unsupported functional level"
msgstr ""
-#: ipaserver/dcerpc.py:89
+#: ipaserver/dcerpc.py:88
+msgid ""
+"AD domain controller complains about communication sequence. It may mean "
+"unsynchronized time on both sides, for example"
+msgstr ""
+
+#: ipaserver/dcerpc.py:93
msgid "Cannot find specified domain or server name"
msgstr ""
-#: ipaserver/dcerpc.py:91
+#: ipaserver/dcerpc.py:95
msgid "At least the domain or IP address should be specified"
msgstr ""
-#: ipaserver/dcerpc.py:103
+#: ipaserver/dcerpc.py:107
#, python-format
msgid ""
"CIFS server communication error: code \"%(num)s\",\n"
" message \"%(message)s\" (both may be \"None\")"
msgstr ""
-#: ipaserver/dcerpc.py:203
+#: ipaserver/dcerpc.py:207
msgid "no trusted domain is configured"
msgstr ""
-#: ipaserver/dcerpc.py:210
+#: ipaserver/dcerpc.py:214
msgid "domain is not configured"
msgstr ""
-#: ipaserver/dcerpc.py:217
+#: ipaserver/dcerpc.py:221
msgid "SID is not valid"
msgstr ""
-#: ipaserver/dcerpc.py:232
+#: ipaserver/dcerpc.py:236
msgid "SID does not match exactlywith any trusted domain's SID"
msgstr ""
-#: ipaserver/dcerpc.py:243
+#: ipaserver/dcerpc.py:247
msgid "SID does not match any trusted domain"
msgstr ""
-#: ipaserver/dcerpc.py:283 ipaserver/dcerpc.py:289 ipaserver/dcerpc.py:511
+#: ipaserver/dcerpc.py:287 ipaserver/dcerpc.py:293 ipaserver/dcerpc.py:515
msgid "Trust setup"
msgstr ""
-#: ipaserver/dcerpc.py:284
+#: ipaserver/dcerpc.py:288
msgid "Our domain is not configured"
msgstr ""
-#: ipaserver/dcerpc.py:290
+#: ipaserver/dcerpc.py:294
msgid "No trusted domain is not configured"
msgstr ""
-#: ipaserver/dcerpc.py:295 ipaserver/dcerpc.py:310 ipaserver/dcerpc.py:327
-#: ipaserver/dcerpc.py:339 ipaserver/dcerpc.py:346 ipaserver/dcerpc.py:391
+#: ipaserver/dcerpc.py:299 ipaserver/dcerpc.py:314 ipaserver/dcerpc.py:331
+#: ipaserver/dcerpc.py:343 ipaserver/dcerpc.py:350 ipaserver/dcerpc.py:395
msgid "trusted domain object"
msgstr ""
-#: ipaserver/dcerpc.py:296
+#: ipaserver/dcerpc.py:300
msgid "domain is not trusted"
msgstr ""
-#: ipaserver/dcerpc.py:311
+#: ipaserver/dcerpc.py:315
msgid "no trusted domain matched the specified flat name"
msgstr ""
-#: ipaserver/dcerpc.py:313
+#: ipaserver/dcerpc.py:317
msgid "trusted domain object not found"
msgstr ""
-#: ipaserver/dcerpc.py:328 ipaserver/dcerpc.py:392
+#: ipaserver/dcerpc.py:332 ipaserver/dcerpc.py:396
msgid "Ambiguous search, user domain was not specified"
msgstr ""
-#: ipaserver/dcerpc.py:340
+#: ipaserver/dcerpc.py:344
msgid "Trusted domain did not return a unique object"
msgstr ""
-#: ipaserver/dcerpc.py:347
+#: ipaserver/dcerpc.py:351
msgid "Trusted domain did not return a valid SID for the object"
msgstr ""
-#: ipaserver/dcerpc.py:377 ipaserver/dcerpc.py:387
+#: ipaserver/dcerpc.py:381 ipaserver/dcerpc.py:391
msgid "trusted domain user not found"
msgstr ""
-#: ipaserver/dcerpc.py:512
+#: ipaserver/dcerpc.py:516
msgid "Cannot retrieve trusted domain GC list"
msgstr ""
-#: ipaserver/dcerpc.py:648
+#: ipaserver/dcerpc.py:652
msgid "CIFS credentials object"
msgstr ""
-#: ipaserver/dcerpc.py:681
+#: ipaserver/dcerpc.py:685
#, python-format
msgid "CIFS server %(host)s denied your credentials"
msgstr ""
-#: ipaserver/dcerpc.py:685
+#: ipaserver/dcerpc.py:689
#, python-format
msgid "Cannot establish LSA connection to %(host)s. Is CIFS server running?"
msgstr ""
-#: ipaserver/dcerpc.py:874
+#: ipaserver/dcerpc.py:878
#, python-format
msgid ""
"the IPA server and the remote domain cannot share the same NetBIOS name: %s"
msgstr ""
-#: ipaserver/install/certs.py:640
+#: ipaserver/install/certs.py:641
#, python-format
msgid "Unable to communicate with CMS (%s)"
msgstr ""
-#: ipaserver/plugins/dogtag.py:1252
+#: ipaserver/plugins/dogtag.py:1253
msgid "Unable to communicate with CMS"
msgstr ""
-#: ipaserver/plugins/dogtag.py:1834
+#: ipaserver/plugins/dogtag.py:1833
msgid "find not supported on CAs upgraded from 9 to 10"
msgstr ""
@@ -10490,31 +11745,35 @@ msgid ""
"'%s'."
msgstr ""
-#: ipaserver/rpcserver.py:538
+#: ipaserver/plugins/ldap2.py:323
+msgid "Could not read UPG Definition originfilter. Check your permissions."
+msgstr ""
+
+#: ipaserver/rpcserver.py:475
msgid "Request must be a dict"
msgstr ""
-#: ipaserver/rpcserver.py:540
+#: ipaserver/rpcserver.py:477
msgid "Request is missing \"method\""
msgstr ""
-#: ipaserver/rpcserver.py:542
+#: ipaserver/rpcserver.py:479
msgid "Request is missing \"params\""
msgstr ""
-#: ipaserver/rpcserver.py:548
+#: ipaserver/rpcserver.py:485
msgid "params must be a list"
msgstr ""
-#: ipaserver/rpcserver.py:550
+#: ipaserver/rpcserver.py:487
msgid "params must contain [args, options]"
msgstr ""
-#: ipaserver/rpcserver.py:553
+#: ipaserver/rpcserver.py:490
msgid "params[0] (aka args) must be a list"
msgstr ""
-#: ipaserver/rpcserver.py:556
+#: ipaserver/rpcserver.py:493
msgid "params[1] (aka options) must be a dict"
msgstr ""
@@ -10538,236 +11797,337 @@ msgstr ""
msgid "read error\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:61
+#: ipa-client/ipa-getkeytab.c:62
#, c-format
msgid "Kerberos context initialization failed: %1$s (%2$d)\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:72
+#: ipa-client/ipa-getkeytab.c:73
#, c-format
msgid "Unable to parse principal: %1$s (%2$d)\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:127
+#: ipa-client/ipa-getkeytab.c:128
#, c-format
msgid "No keys accepted by KDC\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:142
+#: ipa-client/ipa-getkeytab.c:143
#, c-format
msgid "Out of memory \n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:181
+#: ipa-client/ipa-getkeytab.c:169
#, c-format
-msgid "Out of Memory!\n"
+msgid "Unable to set LDAP_OPT_X_TLS_CERTIFICATE\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:175
+#, c-format
+msgid "Unable to init for ldaps(636) connection\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:182
+#, c-format
+msgid "Unable to set LDAP_OPT_X_TLS\n"
msgstr ""
#: ipa-client/ipa-getkeytab.c:188
#, c-format
-msgid "Failed to create control!\n"
+msgid "Unable to init for ldap(389) connection\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:212
+#: ipa-client/ipa-getkeytab.c:194
#, c-format
msgid "Unable to initialize ldap library!\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:220 ipa-client/ipa-join.c:240
+#: ipa-client/ipa-getkeytab.c:202 ipa-client/ipa-join.c:240
#, c-format
msgid "Unable to set LDAP_OPT_X_SASL_NOCANON\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:228
+#: ipa-client/ipa-getkeytab.c:210
#, c-format
-msgid "Unable to set ldap options!\n"
+msgid "Unable to set LDAP_OPT_PROTOCOL_VERSION\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:241
+#: ipa-client/ipa-getkeytab.c:221
#, c-format
msgid "Simple bind failed\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:273 ipa-client/ipa-getkeytab.c:286
-#: ipa-client/ipa-getkeytab.c:293 ipa-client/ipa-getkeytab.c:300
+#: ipa-client/ipa-getkeytab.c:264
#, c-format
msgid "Operation failed! %s\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:306 ipa-client/ipa-getkeytab.c:316
+#: ipa-client/ipa-getkeytab.c:273
+#, c-format
+msgid "Failed to get result! %s\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:279
+#, c-format
+msgid "Failed to parse extended result! %s\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:286
+#, c-format
+msgid "Failed to parse result! %s\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:304
+#, c-format
+msgid "Missing reply control list!\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:314
#, c-format
msgid "Missing reply control!\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:323
+#: ipa-client/ipa-getkeytab.c:342
+#, c-format
+msgid "Out of Memory!\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:349 ipa-client/ipa-getkeytab.c:595
+#, c-format
+msgid "Failed to create control!\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:355 ipa-client/ipa-getkeytab.c:602
+#, c-format
+msgid "Failed to bind to server!\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:362
+#, c-format
+msgid "Failed to get keytab!\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:371
#, c-format
msgid "ber_init() failed, Invalid control ?!\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:342
+#: ipa-client/ipa-getkeytab.c:390
#, c-format
msgid "ber_scanf() failed, unable to find kvno ?!\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:354
+#: ipa-client/ipa-getkeytab.c:402
#, c-format
msgid "Failed to retrieve encryption type type #%d\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:358
+#: ipa-client/ipa-getkeytab.c:406
#, c-format
msgid "Failed to retrieve encryption type %1$s (#%2$d)\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:368
+#: ipa-client/ipa-getkeytab.c:416
#, c-format
msgid "Failed to retrieve any keys"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:405
+#: ipa-client/ipa-getkeytab.c:614
+msgid "Failed to find or parse reply control!\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:621
+msgid "Failed to parse control head!\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:636 ipa-client/ipa-getkeytab.c:656
+#: ipa-client/ipa-getkeytab.c:675 ipa-client/ipa-join.c:408
+#: ipa-client/ipa-join.c:483 ipa-client/ipa-join.c:501
+#: ipa-client/ipa-join.c:602 ipa-client/ipa-join.c:808
+#: ipa-client/ipa-join.c:869 util/ipa_krb5.c:1002 util/ipa_krb5.c:1036
+#, c-format
+msgid "Out of memory!\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:647
+msgid "Failed to parse enctype in key data!\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:667
+msgid "Failed to parse salt in key data!\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:684
+msgid "Failed to parse ending of key data!\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:694
+msgid "Failed to parse ending of control!\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:724
msgid "New Principal Password"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:411
+#: ipa-client/ipa-getkeytab.c:730
msgid "Verify Principal Password"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:445
+#: ipa-client/ipa-getkeytab.c:765
msgid "Print as little as possible"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:445
+#: ipa-client/ipa-getkeytab.c:765
msgid "Output only on errors"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:447
+#: ipa-client/ipa-getkeytab.c:767
msgid "Contact this specific KDC Server"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:448
+#: ipa-client/ipa-getkeytab.c:768
msgid "Server Name"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:450 ipa-client/ipa-rmkeytab.c:171
+#: ipa-client/ipa-getkeytab.c:770 ipa-client/ipa-rmkeytab.c:171
msgid "The principal to get a keytab for (ex: ftp/ftp.example.com@EXAMPLE.COM)"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:451 ipa-client/ipa-rmkeytab.c:172
+#: ipa-client/ipa-getkeytab.c:771 ipa-client/ipa-rmkeytab.c:172
msgid "Kerberos Service Principal Name"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:453 ipa-client/ipa-rmkeytab.c:174
+#: ipa-client/ipa-getkeytab.c:773 ipa-client/ipa-rmkeytab.c:174
msgid "File were to store the keytab information"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:454 ipa-client/ipa-rmkeytab.c:174
+#: ipa-client/ipa-getkeytab.c:774 ipa-client/ipa-rmkeytab.c:174
msgid "Keytab File Name"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:456
+#: ipa-client/ipa-getkeytab.c:776
msgid "Encryption types to request"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:457
+#: ipa-client/ipa-getkeytab.c:777
msgid "Comma separated encryption types list"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:459
+#: ipa-client/ipa-getkeytab.c:779
msgid "Show the list of permitted encryption types and exit"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:460
+#: ipa-client/ipa-getkeytab.c:780
msgid "Permitted Encryption Types"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:462
+#: ipa-client/ipa-getkeytab.c:782
msgid "Asks for a non-random password to use for the principal"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:464
+#: ipa-client/ipa-getkeytab.c:784
msgid "LDAP DN"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:464
+#: ipa-client/ipa-getkeytab.c:784
msgid "DN to bind as if not using kerberos"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:466
+#: ipa-client/ipa-getkeytab.c:786
msgid "LDAP password"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:466
+#: ipa-client/ipa-getkeytab.c:786
msgid "password to use if not using kerberos"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:491 ipa-client/ipa-rmkeytab.c:190
+#: ipa-client/ipa-getkeytab.c:788
+msgid "Retrieve current keys without changing them"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:813 ipa-client/ipa-rmkeytab.c:190
#, c-format
msgid "Kerberos context initialization failed\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:504 util/ipa_krb5.c:792
+#: ipa-client/ipa-getkeytab.c:826 util/ipa_krb5.c:874
#, c-format
msgid "No system preferred enctypes ?!\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:507
+#: ipa-client/ipa-getkeytab.c:829
#, c-format
msgid "Supported encryption types:\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:511
+#: ipa-client/ipa-getkeytab.c:833
#, c-format
msgid "Warning: failed to convert type (#%d)\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:530
+#: ipa-client/ipa-getkeytab.c:852
#, c-format
msgid "Bind password required when using a bind DN.\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:543
+#: ipa-client/ipa-getkeytab.c:859
+#, c-format
+msgid "Incompatible options provided (-r and -P)\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:870
#, c-format
msgid ""
"Warning: salt types are not honored with randomized passwords (see opt. -P)\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:555
+#: ipa-client/ipa-getkeytab.c:882
#, c-format
msgid "Invalid Service Principal Name\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:563
+#: ipa-client/ipa-getkeytab.c:890
#, c-format
msgid "Kerberos Credential Cache not found. Do you have a Kerberos Ticket?\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:571
+#: ipa-client/ipa-getkeytab.c:898
#, c-format
msgid ""
"Kerberos User Principal not found. Do you have a valid Credential Cache?\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:579
+#: ipa-client/ipa-getkeytab.c:906
#, c-format
msgid "Failed to open Keytab\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:589
+#: ipa-client/ipa-getkeytab.c:921
+#, c-format
+msgid "Retrying with old method\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:929
#, c-format
msgid "Failed to create key material\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:608
+#: ipa-client/ipa-getkeytab.c:937
+#, c-format
+msgid "Failed to get keytab\n"
+msgstr ""
+
+#: ipa-client/ipa-getkeytab.c:951
#, c-format
msgid "Failed to add key to the keytab\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:617
+#: ipa-client/ipa-getkeytab.c:960
#, c-format
msgid "Failed to close the keytab\n"
msgstr ""
-#: ipa-client/ipa-getkeytab.c:623
+#: ipa-client/ipa-getkeytab.c:966
#, c-format
msgid "Keytab successfully retrieved and stored in: %s\n"
msgstr ""
@@ -10833,14 +12193,6 @@ msgstr ""
msgid "IPA namingContext not found\n"
msgstr ""
-#: ipa-client/ipa-join.c:408 ipa-client/ipa-join.c:483
-#: ipa-client/ipa-join.c:501 ipa-client/ipa-join.c:602
-#: ipa-client/ipa-join.c:808 ipa-client/ipa-join.c:869 util/ipa_krb5.c:973
-#: util/ipa_krb5.c:1007
-#, c-format
-msgid "Out of memory!\n"
-msgstr ""
-
#: ipa-client/ipa-join.c:419
#, c-format
msgid "Search for ipaCertificateSubjectBase failed with error %d"
@@ -11122,35 +12474,35 @@ msgstr ""
msgid "krb5_kt_close %1$d: %2$s\n"
msgstr ""
-#: util/ipa_krb5.c:800
-msgid "Out of memory!?\n"
-msgstr ""
-
-#: util/ipa_krb5.c:818 util/ipa_krb5.c:833
+#: util/ipa_krb5.c:795 util/ipa_krb5.c:810
msgid "Out of memory\n"
msgstr ""
-#: util/ipa_krb5.c:847
+#: util/ipa_krb5.c:828
msgid "Warning unrecognized encryption type.\n"
msgstr ""
-#: util/ipa_krb5.c:861
+#: util/ipa_krb5.c:842
msgid "Warning unrecognized salt type.\n"
msgstr ""
-#: util/ipa_krb5.c:888
+#: util/ipa_krb5.c:882
+msgid "Out of memory!?\n"
+msgstr ""
+
+#: util/ipa_krb5.c:917
msgid "Enctype comparison failed!\n"
msgstr ""
-#: util/ipa_krb5.c:953
+#: util/ipa_krb5.c:982
msgid "Failed to create random key!\n"
msgstr ""
-#: util/ipa_krb5.c:966 util/ipa_krb5.c:984 util/ipa_krb5.c:992
-#: util/ipa_krb5.c:1032
+#: util/ipa_krb5.c:995 util/ipa_krb5.c:1013 util/ipa_krb5.c:1021
+#: util/ipa_krb5.c:1061
msgid "Failed to create key!\n"
msgstr ""
-#: util/ipa_krb5.c:1018
+#: util/ipa_krb5.c:1047
msgid "Bad or unsupported salt type.\n"
msgstr ""
diff --git a/install/po/ja.po b/install/po/ja.po
index 584223043..1a3f267e6 100644
--- a/install/po/ja.po
+++ b/install/po/ja.po
@@ -4,16 +4,17 @@
#
# Translators:
# Tomoyuki KATO <tomo@dream.daynight.jp>, 2012
-# 高一人参 @欠陥遺伝子 <www.carrotsoft@gmail.com>, 2011
+# carrotsoft <www.carrotsoft@gmail.com>, 2011
msgid ""
msgstr ""
"Project-Id-Version: FreeIPA\n"
"Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/"
"newticket\n"
-"POT-Creation-Date: 2013-10-09 14:39+0200\n"
-"PO-Revision-Date: 2013-08-01 14:06+0000\n"
+"POT-Creation-Date: 2014-06-27 16:29+0200\n"
+"PO-Revision-Date: 2014-06-25 19:44+0000\n"
"Last-Translator: Petr Viktorin <encukou@gmail.com>\n"
-"Language-Team: Japanese <trans-ja@lists.fedoraproject.org>\n"
+"Language-Team: Japanese (http://www.transifex.com/projects/p/freeipa/"
+"language/ja/)\n"
"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -148,10 +149,6 @@ msgid "Fingerprint (SHA1)"
msgstr "フィンガープリント (SHA1)"
#, python-format
-msgid "invalid domain-name: %s"
-msgstr "無効なドメイン名: %s"
-
-#, python-format
msgid "%s record"
msgstr "%s レコード"
@@ -165,9 +162,6 @@ msgstr "IP アドレス"
msgid "Port"
msgstr "ポート"
-msgid "Labels"
-msgstr "ラベル"
-
msgid "Fingerprint"
msgstr "フィンガープリント"
@@ -270,6 +264,10 @@ msgstr "HBAC サービスグループにメンバーを追加します。"
msgid "Remove members from an HBAC service group."
msgstr "HBAC サービスグループからメンバーを削除します。"
+#, python-format
+msgid "invalid domain-name: %s"
+msgstr "無効なドメイン名: %s"
+
msgid "host"
msgstr "ホスト"
@@ -303,6 +301,7 @@ msgstr "更新"
msgid "Set"
msgstr "設定"
+#, python-brace-format
msgid "Edit ${entity}"
msgstr "${entity} の編集"
@@ -456,8 +455,8 @@ msgstr "ユーザーアカウントを有効化します。"
msgid "invalid SSH public key"
msgstr "無効な SSH 公開鍵"
-msgid "Out of memory!?\n"
-msgstr "メモリー不足!?\n"
-
msgid "Out of memory\n"
msgstr "メモリー不足\n"
+
+msgid "Out of memory!?\n"
+msgstr "メモリー不足!?\n"
diff --git a/install/po/kn.po b/install/po/kn.po
index a6bee8df5..ba0838a96 100644
--- a/install/po/kn.po
+++ b/install/po/kn.po
@@ -10,10 +10,10 @@ msgstr ""
"Project-Id-Version: FreeIPA\n"
"Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/"
"newticket\n"
-"POT-Creation-Date: 2013-10-09 14:39+0200\n"
-"PO-Revision-Date: 2013-08-01 14:06+0000\n"
+"POT-Creation-Date: 2014-06-27 16:29+0200\n"
+"PO-Revision-Date: 2014-06-25 19:44+0000\n"
"Last-Translator: Petr Viktorin <encukou@gmail.com>\n"
-"Language-Team: Kannada (http://www.transifex.com/projects/p/fedora/language/"
+"Language-Team: Kannada (http://www.transifex.com/projects/p/freeipa/language/"
"kn/)\n"
"Language: kn\n"
"MIME-Version: 1.0\n"
@@ -268,6 +268,12 @@ msgstr "\"%(value)s\" ACIವನ್ನು ಬದಲಾಯಿಸಲಾಗಿದೆ
msgid "Description"
msgstr "ವಿವರಣೆ"
+msgid "Users"
+msgstr "ಬಳಕೆದಾರರು"
+
+msgid "Hosts"
+msgstr "ಹೋಸ್ಟ್‌ಗಳು"
+
msgid "Location"
msgstr "ಸ್ಥಳ"
@@ -319,9 +325,6 @@ msgstr "ಹೋಸ್ಟ್-ಗುಂಪಿನ ಸದಸ್ಯ"
msgid "External host"
msgstr "ಹೊರಗಿನ ಹೋಸ್ಟ್"
-msgid "Failure decoding Certificate Signing Request"
-msgstr "ಪ್ರಮಾಣಪತ್ರದ ಸಹಿಯ ಕೋರಿಕೆಯ ಡಿಕೋಡಿಂಗ್‌ನ ವಿಫಲತೆ"
-
#, python-format
msgid "Failure decoding Certificate Signing Request: %s"
msgstr "ಪ್ರಮಾಣಪತ್ರದ ಸಹಿಯ ಕೋರಿಕೆಯ ಡಿಕೋಡಿಂಗ್‌ನ ವಿಫಲತೆ: %s"
@@ -416,8 +419,8 @@ msgstr "SOA expire"
msgid "SOA minimum"
msgstr "SOA minimum"
-msgid "SOA time to live"
-msgstr "SOA time to live"
+msgid "Time to live"
+msgstr "ಉಳಿದಿರಬೇಕಾದ ಸಮಯ"
msgid "SOA class"
msgstr "SOA class"
@@ -425,9 +428,6 @@ msgstr "SOA class"
msgid "BIND update policy"
msgstr "BIND update policy"
-msgid "Time to live"
-msgstr "ಉಳಿದಿರಬೇಕಾದ ಸಮಯ"
-
msgid "Class"
msgstr "ವರ್ಗ"
@@ -473,12 +473,6 @@ msgstr "ಹೋಸ್ಟ್ ವರ್ಗ"
msgid "Host category the rule applies to"
msgstr "ನಿಯಮ ಅನ್ವಯಿಸುವಂತಹ ಹೋಸ್ಟ್ ವರ್ಗ"
-msgid "Users"
-msgstr "ಬಳಕೆದಾರರು"
-
-msgid "Hosts"
-msgstr "ಹೋಸ್ಟ್‌ಗಳು"
-
msgid "Host Groups"
msgstr "ಹೋಸ್ಟ್ ಗುಂಪುಗಳು"
diff --git a/install/po/nl.po b/install/po/nl.po
index 37c8eeddb..1736a469c 100644
--- a/install/po/nl.po
+++ b/install/po/nl.po
@@ -9,10 +9,10 @@ msgstr ""
"Project-Id-Version: FreeIPA\n"
"Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/"
"newticket\n"
-"POT-Creation-Date: 2013-10-09 14:39+0200\n"
-"PO-Revision-Date: 2013-08-01 14:06+0000\n"
+"POT-Creation-Date: 2014-06-27 16:29+0200\n"
+"PO-Revision-Date: 2014-06-25 19:44+0000\n"
"Last-Translator: Petr Viktorin <encukou@gmail.com>\n"
-"Language-Team: Dutch (http://www.transifex.com/projects/p/fedora/language/"
+"Language-Team: Dutch (http://www.transifex.com/projects/p/freeipa/language/"
"nl/)\n"
"Language: nl\n"
"MIME-Version: 1.0\n"
diff --git a/install/po/pl.po b/install/po/pl.po
index 04d238020..38b50ddd1 100644
--- a/install/po/pl.po
+++ b/install/po/pl.po
@@ -4,17 +4,18 @@
#
# Translators:
# jdennis <jdennis@redhat.com>, 2011
-# mmarzantowicz <mmarzantowicz@osdf.com.pl>, 2013
+# Mateusz Marzantowicz <mmarzantowicz@osdf.com.pl>, 2013
# Piotr Drąg <piotrdrag@gmail.com>, 2010,2013
msgid ""
msgstr ""
"Project-Id-Version: FreeIPA\n"
"Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/"
"newticket\n"
-"POT-Creation-Date: 2013-10-09 14:39+0200\n"
-"PO-Revision-Date: 2013-08-01 14:06+0000\n"
+"POT-Creation-Date: 2014-06-27 16:29+0200\n"
+"PO-Revision-Date: 2014-06-25 19:44+0000\n"
"Last-Translator: Petr Viktorin <encukou@gmail.com>\n"
-"Language-Team: Polish <trans-pl@lists.fedoraproject.org>\n"
+"Language-Team: Polish (http://www.transifex.com/projects/p/freeipa/language/"
+"pl/)\n"
"Language: pl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -321,9 +322,11 @@ msgstr[2] "Pasuje %(count)d ACI"
msgid "Description"
msgstr "Opis"
-#, python-format
-msgid "Group: %s not found!"
-msgstr "Grupa: nie odnaleziono %s."
+msgid "Users"
+msgstr "Użytkownicy"
+
+msgid "Hosts"
+msgstr "Komputery"
msgid "Location"
msgstr "Położenie"
@@ -444,12 +447,6 @@ msgstr "Ograniczenie rozmiaru"
msgid "Maximum number of entries returned"
msgstr "Maksymalna liczba zwróconych wpisów"
-msgid "Failure decoding Certificate Signing Request:"
-msgstr "Dekodowanie żądania podpisywania certyfikatu nie powiodło się:"
-
-msgid "Failure decoding Certificate Signing Request"
-msgstr "Dekodowanie żądania podpisywania certyfikatu nie powiodło się"
-
#, python-format
msgid "Failure decoding Certificate Signing Request: %s"
msgstr "Dekodowanie żądania podpisywania certyfikatu nie powiodło się: %s"
@@ -569,6 +566,12 @@ msgstr "Nazwa strefy"
msgid "Zone name (FQDN)"
msgstr "Nazwa strefy (FQDN)"
+msgid "Active zone"
+msgstr "Aktywna strefa"
+
+msgid "DNS is not configured"
+msgstr "DNS nie jest skonfigurowany"
+
msgid "Administrator e-mail address"
msgstr "Adres e-mail administratora"
@@ -587,8 +590,8 @@ msgstr "Wygaszenie SOA"
msgid "SOA minimum"
msgstr "Minimalne SOA"
-msgid "SOA time to live"
-msgstr "Czas życia SOA"
+msgid "Time to live"
+msgstr "Czas życia"
msgid "SOA class"
msgstr "Klasa SOA"
@@ -596,15 +599,6 @@ msgstr "Klasa SOA"
msgid "BIND update policy"
msgstr "Polityka aktualizacji BIND"
-msgid "Active zone"
-msgstr "Aktywna strefa"
-
-msgid "DNS is not configured"
-msgstr "DNS nie jest skonfigurowany"
-
-msgid "Time to live"
-msgstr "Czas życia"
-
msgid "Class"
msgstr "Klasa"
@@ -699,12 +693,6 @@ msgstr "Kategoria usług, do których zastosowywana jest reguła"
msgid "Enabled"
msgstr "Włączone"
-msgid "Users"
-msgstr "Użytkownicy"
-
-msgid "Hosts"
-msgstr "Komputery"
-
msgid "Host Groups"
msgstr "Grupy komputerów"
@@ -1292,22 +1280,10 @@ msgid "Out of memory \n"
msgstr "Brak pamięci \n"
#, c-format
-msgid "Out of Memory!\n"
-msgstr "Brak pamięci.\n"
-
-#, c-format
-msgid "Failed to create control!\n"
-msgstr "Utworzenie kontroli nie powiodło się.\n"
-
-#, c-format
msgid "Unable to initialize ldap library!\n"
msgstr "Nie można zainicjować biblioteki LDAP.\n"
#, c-format
-msgid "Unable to set ldap options!\n"
-msgstr "Nie można ustawić opcji LDAP.\n"
-
-#, c-format
msgid "Simple bind failed\n"
msgstr "Proste dowiązanie nie powiodło się\n"
@@ -1320,9 +1296,21 @@ msgid "Missing reply control!\n"
msgstr "Brak kontroli odpowiedzi.\n"
#, c-format
+msgid "Out of Memory!\n"
+msgstr "Brak pamięci.\n"
+
+#, c-format
+msgid "Failed to create control!\n"
+msgstr "Utworzenie kontroli nie powiodło się.\n"
+
+#, c-format
msgid "ber_init() failed, Invalid control ?!\n"
msgstr "ber_init() nie powiodło się, nieprawidłowa kontrola?\n"
+#, c-format
+msgid "Out of memory!\n"
+msgstr "Brak pamięci.\n"
+
msgid "New Principal Password"
msgstr "Nowe hasło naczelnika"
@@ -1471,10 +1459,6 @@ msgid "No values for %s"
msgstr "Brak wartości dla %s"
#, c-format
-msgid "Out of memory!\n"
-msgstr "Brak pamięci.\n"
-
-#, c-format
msgid "Search for ipaCertificateSubjectBase failed with error %d"
msgstr "Wyszukiwanie ipaCertificateSubjectBase nie powiodło się z błędem %d"
@@ -1632,12 +1616,12 @@ msgstr "Usuwa wszystkich naczelników w tym obszarze"
msgid "Closing keytab failed\n"
msgstr "Zamknięcie tablicy kluczy nie powiodło się\n"
-msgid "Out of memory!?\n"
-msgstr "Brak pamięci?\n"
-
msgid "Out of memory\n"
msgstr "Brak pamięci\n"
+msgid "Out of memory!?\n"
+msgstr "Brak pamięci?\n"
+
msgid "Enctype comparison failed!\n"
msgstr "Porównanie typów szyfrowania nie powiodło się.\n"
@@ -1646,3 +1630,6 @@ msgstr "Utworzenie losowego klucza nie powiodło się.\n"
msgid "Failed to create key!\n"
msgstr "Utworzenie klucza nie powiodło się.\n"
+
+#~ msgid "Unable to set ldap options!\n"
+#~ msgstr "Nie można ustawić opcji LDAP.\n"
diff --git a/install/po/ru.po b/install/po/ru.po
index eb15af0ff..258ac7f7d 100644
--- a/install/po/ru.po
+++ b/install/po/ru.po
@@ -12,10 +12,11 @@ msgstr ""
"Project-Id-Version: FreeIPA\n"
"Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/"
"newticket\n"
-"POT-Creation-Date: 2013-10-09 14:39+0200\n"
-"PO-Revision-Date: 2013-08-01 14:06+0000\n"
+"POT-Creation-Date: 2014-06-27 16:29+0200\n"
+"PO-Revision-Date: 2014-06-25 19:44+0000\n"
"Last-Translator: Petr Viktorin <encukou@gmail.com>\n"
-"Language-Team: Russian <trans-ru@lists.fedoraproject.org>\n"
+"Language-Team: Russian (http://www.transifex.com/projects/p/freeipa/language/"
+"ru/)\n"
"Language: ru\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -311,6 +312,12 @@ msgstr[2] "Найдено %(count)d ACI"
msgid "Description"
msgstr "Описание"
+msgid "Users"
+msgstr "Пользователи"
+
+msgid "Hosts"
+msgstr "Узлы"
+
msgid "Location"
msgstr "Расположение"
@@ -353,12 +360,6 @@ msgstr "Ограничение времени поиска в секундах"
msgid "Size Limit"
msgstr "Ограничение по размеру"
-msgid "Failure decoding Certificate Signing Request:"
-msgstr "Сбой при декодировании запроса на создание сертификата:"
-
-msgid "Failure decoding Certificate Signing Request"
-msgstr "Сбой при декодировании запроса на создание сертификата"
-
#, python-format
msgid "Failure decoding Certificate Signing Request: %s"
msgstr "Сбой при декодировании запроса на создание сертификата: %s"
@@ -472,10 +473,6 @@ msgid "invalid IP network format"
msgstr "неправильный формат подсети"
#, python-format
-msgid "invalid domain-name: %s"
-msgstr "неправильное доменное имя: %s"
-
-#, python-format
msgid "(see RFC %s for details)"
msgstr "(см. RFC %s для деталей)"
@@ -495,12 +492,6 @@ msgstr "Алгоритм"
msgid "Certificate/CRL"
msgstr "Сертификат/СОС"
-msgid "Protocol"
-msgstr "Протокол"
-
-msgid "Public Key"
-msgstr "Открытый ключ"
-
msgid "Altitude"
msgstr "Высота над уровнем моря"
@@ -532,6 +523,15 @@ msgstr "Тип записи"
msgid "Nameserver '%(host)s' does not have a corresponding A/AAAA record"
msgstr "У сервера имен «%(host)s» не соответствующей A/AAAA-записи"
+msgid "Zone name"
+msgstr "Имя зоны"
+
+msgid "Zone name (FQDN)"
+msgstr "Имя зоны (FQDN)"
+
+msgid "Reverse zone IP network"
+msgstr "Зона обратных адресов"
+
msgid "DNS zone"
msgstr "зона DNS"
@@ -544,18 +544,12 @@ msgstr "Зоны DNS"
msgid "DNS Zone"
msgstr "Зона DNS"
-msgid "Zone name"
-msgstr "Имя зоны"
-
-msgid "Zone name (FQDN)"
-msgstr "Имя зоны (FQDN)"
-
-msgid "Reverse zone IP network"
-msgstr "Зона обратных адресов"
-
msgid "SOA serial"
msgstr "Номер SOA"
+msgid "Time to live"
+msgstr "Время жизни"
+
msgid "Dynamic update"
msgstr "Динамическое обновление"
@@ -568,9 +562,6 @@ msgstr "Создать новую зону DNS (SOA-запись)"
msgid "Force"
msgstr "Принудительно"
-msgid "Time to live"
-msgstr "Время жизни"
-
msgid "Class"
msgstr "Класс"
@@ -660,12 +651,6 @@ msgstr "Категория службы"
msgid "Enabled"
msgstr "Включено"
-msgid "Users"
-msgstr "Пользователи"
-
-msgid "Hosts"
-msgstr "Узлы"
-
msgid "Host Groups"
msgstr "Группы узлов"
@@ -684,6 +669,10 @@ msgstr "Имя службы"
msgid "Warning"
msgstr "Предупреждение"
+#, python-format
+msgid "invalid domain-name: %s"
+msgstr "неправильное доменное имя: %s"
+
msgid "host"
msgstr "узел"
@@ -931,6 +920,9 @@ msgstr[0] "Загружен %(count)d подключаемый модуль"
msgstr[1] "Загружено %(count)d подключаемых модуля"
msgstr[2] "Загружено %(count)d подключаемых модулей"
+msgid "Manager"
+msgstr "Руководитель"
+
msgid "permission"
msgstr "разрешение"
@@ -1032,9 +1024,6 @@ msgstr "Отдел"
msgid "Job Title"
msgstr "Должность"
-msgid "Manager"
-msgstr "Руководитель"
-
msgid "Car License"
msgstr "Номер автомобиля"
diff --git a/install/po/tg.po b/install/po/tg.po
index 2b281bf06..fc8f20cf0 100644
--- a/install/po/tg.po
+++ b/install/po/tg.po
@@ -9,10 +9,10 @@ msgstr ""
"Project-Id-Version: FreeIPA\n"
"Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/"
"newticket\n"
-"POT-Creation-Date: 2013-10-09 14:39+0200\n"
-"PO-Revision-Date: 2013-08-01 14:06+0000\n"
+"POT-Creation-Date: 2014-06-27 16:29+0200\n"
+"PO-Revision-Date: 2014-06-25 19:44+0000\n"
"Last-Translator: Petr Viktorin <encukou@gmail.com>\n"
-"Language-Team: Tajik (http://www.transifex.com/projects/p/fedora/language/"
+"Language-Team: Tajik (http://www.transifex.com/projects/p/freeipa/language/"
"tg/)\n"
"Language: tg\n"
"MIME-Version: 1.0\n"
@@ -249,6 +249,9 @@ msgstr "Сиёсат"
msgid "Sudo"
msgstr "Sudo"
+msgid "Manager"
+msgstr "Диспетчер"
+
msgid "Group"
msgstr "Гурӯҳ"
@@ -276,9 +279,6 @@ msgstr "Рақами факс"
msgid "Job Title"
msgstr "Вазифа"
-msgid "Manager"
-msgstr "Диспетчер"
-
#, c-format
msgid "out of memory\n"
msgstr "берун аз хотира\n"
@@ -295,6 +295,10 @@ msgstr "Берун аз хотира \n"
msgid "Out of Memory!\n"
msgstr "Берун аз хотира!\n"
+#, c-format
+msgid "Out of memory!\n"
+msgstr "Берун аз хотира!\n"
+
msgid "Server Name"
msgstr "Номи сервер"
@@ -309,10 +313,6 @@ msgid "Out of memory!"
msgstr "Берун аз хотира!"
#, c-format
-msgid "Out of memory!\n"
-msgstr "Берун аз хотира!\n"
-
-#, c-format
msgid "Incorrect password.\n"
msgstr "Пароли нодуруст.\n"
@@ -325,8 +325,8 @@ msgstr "номи файл"
msgid "password"
msgstr "парол"
-msgid "Out of memory!?\n"
-msgstr "Аз хотира берун шуд!?\n"
-
msgid "Out of memory\n"
msgstr "Берун аз хотира \n"
+
+msgid "Out of memory!?\n"
+msgstr "Аз хотира берун шуд!?\n"
diff --git a/install/po/uk.po b/install/po/uk.po
index a3846c6d9..38db24250 100644
--- a/install/po/uk.po
+++ b/install/po/uk.po
@@ -4,16 +4,18 @@
#
# Translators:
# jdennis <jdennis@redhat.com>, 2011
-# Yuri Chornoivan <yurchor@ukr.net>, 2011-2013
+# Petr Viktorin <encukou@gmail.com>, 2014
+# Yuri Chornoivan <yurchor@ukr.net>, 2011-2014
msgid ""
msgstr ""
"Project-Id-Version: FreeIPA\n"
"Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/"
"newticket\n"
-"POT-Creation-Date: 2013-10-09 14:39+0200\n"
-"PO-Revision-Date: 2013-08-01 16:10+0000\n"
+"POT-Creation-Date: 2014-06-27 16:29+0200\n"
+"PO-Revision-Date: 2014-06-26 09:08+0000\n"
"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
-"Language-Team: Ukrainian <trans-uk@lists.fedoraproject.org>\n"
+"Language-Team: Ukrainian (http://www.transifex.com/projects/p/freeipa/"
+"language/uk/)\n"
"Language: uk\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -53,6 +55,13 @@ msgstr "Назва команди"
msgid "Positional arguments"
msgstr "Обов’язкові аргументи"
+#, python-format
+msgid "Same as --%s"
+msgstr "Те саме, що і --%s"
+
+msgid "Deprecated options"
+msgstr "Застарілі параметри"
+
msgid "No file to read"
msgstr "Немає файла для читання"
@@ -335,6 +344,17 @@ msgid "LDAP timeout"
msgstr "Час очікування LDAP"
#, python-format
+msgid "DNS check failed: Expected {%(expected)s} got {%(got)s}"
+msgstr ""
+"Перевірка DNS зазнала невдачі: мало бути {%(expected)s}, отримано {%(got)s}"
+
+#, python-format
+msgid "%(task)s LDAP task timeout, Task DN: '%(task_dn)s'"
+msgstr ""
+"Перевищення часу очікування на завершення завдання LDAP %(task)s, DN "
+"завдання: «%(task_dn)s»"
+
+#, python-format
msgid "Certificate operation cannot be completed: %(error)s"
msgstr "Не вдалося завершити дію з сертифікатом: %(error)s"
@@ -523,12 +543,50 @@ msgstr "має бути «%(value)s»"
msgid "must be one of %(values)s"
msgstr "має бути одним з таких значень: %(values)s"
+msgid "must be datetime value"
+msgstr "має бути значенням дати і часу"
+
+msgid "does not match any of accepted formats: "
+msgstr "не відповідає жодному з прийнятних форматів: "
+
msgid "incomplete time value"
msgstr "неповне часове значення"
msgid "this option is deprecated"
msgstr "цей параметр вважається застарілим"
+msgid "must be DNS name"
+msgstr "має бути назвою DNS"
+
+msgid "invalid escape code in domain name"
+msgstr "некоректний керівний код у назві домену"
+
+msgid "empty DNS label"
+msgstr "порожня мітка DNS"
+
+msgid "domain name cannot be longer than 255 characters"
+msgstr "назва домену не повинна перевищувати за довжиною 255 символів"
+
+msgid "DNS label cannot be longer than 63 characters"
+msgstr "Довжина мітки DNS не повинна перевищувати 63 символів"
+
+msgid "invalid domain name"
+msgstr "некоректна назва домену"
+
+#, python-format
+msgid ""
+"domain name '%(domain)s' and normalized domain name '%(normalized)s' do not "
+"match. Please use only normalized domains"
+msgstr ""
+"назва домену «%(domain)s» і нормалізована назва «%(normalized)s» не "
+"збігаються. Будь ласка, використовуйте лише нормалізовані домени."
+
+msgid "must be absolute"
+msgstr "має бути абсолютною"
+
+msgid "must be relative"
+msgstr "має бути відносною"
+
msgid "A list of ACI values"
msgstr "Список значень ACI"
@@ -676,6 +734,9 @@ msgstr[0] "встановлено відповідність %(count)d ACI"
msgstr[1] "встановлено відповідність %(count)d ACI"
msgstr[2] "встановлено відповідність %(count)d ACI"
+msgid "Location of the ACI"
+msgstr "Розташування ACI"
+
msgid "New ACI name"
msgstr "Нова назва ACI"
@@ -686,49 +747,145 @@ msgstr "ACI перейменовано на «%(value)s»"
msgid ""
"\n"
"Auto Membership Rule.\n"
+msgstr ""
+"\n"
+"Правило автоматичної участі.\n"
+
+msgid ""
"\n"
"Bring clarity to the membership of hosts and users by configuring inclusive\n"
"or exclusive regex patterns, you can automatically assign a new entries "
"into\n"
"a group or hostgroup based upon attribute information.\n"
+msgstr ""
+"\n"
+"Внесіть ясність у правила участі вузлів та користувачів налаштовуванням\n"
+"формальних виразів шаблонів включення або виключення. Ви можете автоматично\n"
+"пов’язувати нові записи з групою або групою вузлів на основі даних щодо "
+"атрибутів.\n"
+
+msgid ""
"\n"
"A rule is directly associated with a group by name, so you cannot create\n"
"a rule without an accompanying group or hostgroup.\n"
+msgstr ""
+"\n"
+"Правило безпосередньо пов’язується з групою за назвою, отже ви не можете\n"
+"створити правило без визначення групи або групи вузлів.\n"
+
+msgid ""
"\n"
"A condition is a regular expression used by 389-ds to match a new incoming\n"
"entry with an automember rule. If it matches an inclusive rule then the\n"
"entry is added to the appropriate group or hostgroup.\n"
+msgstr ""
+"\n"
+"Умова є формальним виразом, використовується 389-ds для встановлення\n"
+"відповідності нового вхідного запису з правилом автоматичної участі.\n"
+"Якщо умові відповідає правило включення, запис додається до відповідної\n"
+"групи або групи вузлів.\n"
+
+msgid ""
"\n"
"A default group or hostgroup could be specified for entries that do not\n"
"match any rule. In case of user entries this group will be a fallback group\n"
"because all users are by default members of group specified in IPA config.\n"
+msgstr ""
"\n"
+"Можна визначити типову групу або групу вузлів, яку буде використано для\n"
+"записів, які не відповідають жодному правилу. У випадку записів "
+"користувачів\n"
+"ця група буде резервною групою, оскільки усіх користувачі типово є "
+"учасниками\n"
+"групи, вказаної у налаштуваннях IPA.\n"
+
+msgid ""
+"\n"
+"The automember-rebuild command can be used to retroactively run automember "
+"rules\n"
+"against existing entries, thus rebuilding their membership.\n"
+msgstr ""
+"\n"
+"За допомогою програми automember-rebuild ви можете повторно застосувати "
+"правила\n"
+"автоматичної участі до вже створених записів, тобто перебудувати схему "
+"участі.\n"
+
+msgid ""
"\n"
"EXAMPLES:\n"
+msgstr ""
+"\n"
+"ПРИКЛАДИ:\n"
+
+msgid ""
"\n"
" Add the initial group or hostgroup:\n"
" ipa hostgroup-add --desc=\"Web Servers\" webservers\n"
" ipa group-add --desc=\"Developers\" devel\n"
+msgstr ""
+"\n"
+" Додати початкову групу або групу вузлів:\n"
+" ipa hostgroup-add --desc=\"Web Servers\" webservers\n"
+" ipa group-add --desc=\"Developers\" devel\n"
+
+msgid ""
"\n"
" Add the initial rule:\n"
" ipa automember-add --type=hostgroup webservers\n"
" ipa automember-add --type=group devel\n"
+msgstr ""
+"\n"
+" Додати початкове правило:\n"
+" ipa automember-add --type=hostgroup webservers\n"
+" ipa automember-add --type=group devel\n"
+
+msgid ""
"\n"
" Add a condition to the rule:\n"
" ipa automember-add-condition --key=fqdn --type=hostgroup --inclusive-"
"regex=^web[1-9]+\\.example\\.com webservers\n"
" ipa automember-add-condition --key=manager --type=group --inclusive-"
"regex=^uid=mscott devel\n"
+msgstr ""
+"\n"
+" Додати умову до правила:\n"
+" ipa automember-add-condition --key=fqdn --type=hostgroup --inclusive-"
+"regex=^web[1-9]+\\.example\\.com webservers\n"
+" ipa automember-add-condition --key=manager --type=group --inclusive-"
+"regex=^uid=mscott devel\n"
+
+msgid ""
"\n"
" Add an exclusive condition to the rule to prevent auto assignment:\n"
" ipa automember-add-condition --key=fqdn --type=hostgroup --exclusive-"
"regex=^web5\\.example\\.com webservers\n"
+msgstr ""
+"\n"
+" Додати умову виключення до правила для запобігання автоматичному "
+"пов’язуванню:\n"
+" ipa automember-add-condition --key=fqdn --type=hostgroup --exclusive-"
+"regex=^web5\\.example\\.com webservers\n"
+
+msgid ""
"\n"
" Add a host:\n"
" ipa host-add web1.example.com\n"
+msgstr ""
+"\n"
+" Додати вузол:\n"
+" ipa host-add web1.example.com\n"
+
+msgid ""
"\n"
" Add a user:\n"
" ipa user-add --first=Tim --last=User --password tuser1 --manager=mscott\n"
+msgstr ""
+"\n"
+" Додати запис користувача:\n"
+" ipa user-add --first=Tim --last=User --password tuser1 --manager=mscott\n"
+
+msgid ""
"\n"
" Verify automembership:\n"
" ipa hostgroup-show webservers\n"
@@ -741,130 +898,143 @@ msgid ""
" Description: Developers\n"
" GID: 1004200000\n"
" Member users: tuser\n"
+msgstr ""
+"\n"
+" Перевірити правила автоматичної участі:\n"
+" ipa hostgroup-show webservers\n"
+" Група вузлів: webservers\n"
+" Опис: Web Servers\n"
+" Вузли-учасники: web1.example.com\n"
+"\n"
+" ipa group-show devel\n"
+" Назва групи: devel\n"
+" Опис: Developers\n"
+" GID: 1004200000\n"
+" Користувачі-учасники: tuser\n"
+
+msgid ""
"\n"
" Remove a condition from the rule:\n"
" ipa automember-remove-condition --key=fqdn --type=hostgroup --inclusive-"
"regex=^web[1-9]+\\.example\\.com webservers\n"
+msgstr ""
+"\n"
+" Вилучити умову з правила:\n"
+" ipa automember-remove-condition --key=fqdn --type=hostgroup --inclusive-"
+"regex=^web[1-9]+\\.example\\.com webservers\n"
+
+msgid ""
"\n"
" Modify the automember rule:\n"
" ipa automember-mod\n"
+msgstr ""
+"\n"
+" Змінити правило автоматичної участі:\n"
+" ipa automember-mod\n"
+
+msgid ""
"\n"
" Set the default (fallback) target group:\n"
" ipa automember-default-group-set --default-group=webservers --"
"type=hostgroup\n"
" ipa automember-default-group-set --default-group=ipausers --type=group\n"
+msgstr ""
+"\n"
+" Встановити типову (резервну) групу призначення:\n"
+" ipa automember-default-group-set --default-group=webservers --"
+"type=hostgroup\n"
+" ipa automember-default-group-set --default-group=ipausers --type=group\n"
+
+msgid ""
"\n"
" Remove the default (fallback) target group:\n"
" ipa automember-default-group-remove --type=hostgroup\n"
" ipa automember-default-group-remove --type=group\n"
+msgstr ""
+"\n"
+" Вилучити типову (резервну) групу призначення:\n"
+" ipa automember-default-group-remove --type=hostgroup\n"
+" ipa automember-default-group-remove --type=group\n"
+
+msgid ""
"\n"
" Show the default (fallback) target group:\n"
" ipa automember-default-group-show --type=hostgroup\n"
" ipa automember-default-group-show --type=group\n"
+msgstr ""
+"\n"
+" Показати типову (резервну) групу призначення:\n"
+" ipa automember-default-group-show --type=hostgroup\n"
+" ipa automember-default-group-show --type=group\n"
+
+msgid ""
"\n"
" Find all of the automember rules:\n"
" ipa automember-find\n"
+msgstr ""
+"\n"
+" Знайти усіх правила автоматичної участі:\n"
+" ipa automember-find\n"
+
+msgid ""
"\n"
" Display a automember rule:\n"
" ipa automember-show --type=hostgroup webservers\n"
" ipa automember-show --type=group devel\n"
+msgstr ""
+"\n"
+" Показати правило автоматичної участі:\n"
+" ipa automember-show --type=hostgroup webservers\n"
+" ipa automember-show --type=group devel\n"
+
+msgid ""
"\n"
" Delete an automember rule:\n"
" ipa automember-del --type=hostgroup webservers\n"
" ipa automember-del --type=group devel\n"
msgstr ""
"\n"
-"Правило автоматичної участі.\n"
-"\n"
-"Спрощує визначення участі вузлів і користувачів за допомогою визначених\n"
-"вами шаблонів (формальних виразів) включення чи не включення нових записів\n"
-"до груп або груп вузлів на основі даних атрибутів у автоматичному режимі.\n"
-"\n"
-"Правило безпосередньо пов’язується з групою за назвою, отже ви не можете\n"
-"створювати правила, які не буде пов’язано з групою користувачів чи групою\n"
-"вузлів.\n"
-"Умовою використання правила є формальний вираз, який використовуватиметься\n"
-"389-ds для встановлення відповідності нового вхідного запису з правилом\n"
-"автоматичної участі. Якщо запис відповідатиме правилу включення, його буде\n"
-"додано до відповідної групи або групи вузлів.\n"
-"\n"
-"Можна вказати типову групу або групу вузлів для записів, які не "
-"відповідають\n"
-"жодному правилу. У випадку записів користувачів ця група буде резервною,\n"
-"оскільки всі користувачі є типовими учасниками групи, вказаної у "
-"налаштуваннях\n"
-"IPA (файлі налаштувань).\n"
-"\n"
-"\n"
-"ПРИКЛАДИ:\n"
-"\n"
-" Додавання початкової групи або групи вузлів:\n"
-" ipa hostgroup-add --desc=\"Web Servers\" webservers\n"
-" ipa group-add --desc=\"Developers\" devel\n"
-"\n"
-" Додавання початкового правила:\n"
-" ipa automember-add --type=hostgroup webservers\n"
-" ipa automember-add --type=group devel\n"
-"\n"
-" Додавання умови до правила:\n"
-" ipa automember-add-condition --key=fqdn --type=hostgroup --inclusive-"
-"regex=^web[1-9]+\\.example\\.com webservers\n"
-" ipa automember-add-condition --key=manager --type=group --inclusive-"
-"regex=^uid=mscott devel\n"
-"\n"
-" Додавання умови виключення до правила з метою запобігання\n"
-" автоматичному додаванню:\n"
-" ipa automember-add-condition --key=fqdn --type=hostgroup --exclusive-"
-"regex=^web5\\.example\\.com webservers\n"
-"\n"
-" Додавання вузла:\n"
-" ipa host-add web1.example.com\n"
-"\n"
-" Додавання користувача:\n"
-" ipa user-add --first=Tim --last=User --password tuser1 --manager=mscott\n"
-"\n"
-" Перевірка правила:\n"
-" ipa hostgroup-show webservers\n"
-" Host-group: webservers\n"
-" Description: Web Servers\n"
-" Member hosts: web1.example.com\n"
-"\n"
-" ipa group-show devel\n"
-" Group name: devel\n"
-" Description: Developers\n"
-" GID: 1004200000\n"
-" Member users: tuser\n"
+" Вилучити правило автоматичної участі:\n"
+" ipa automember-del --type=hostgroup webservers\n"
+" ipa automember-del --type=group devel\n"
+
+msgid ""
"\n"
-" Вилучення умови з правила:\n"
-" ipa automember-remove-condition --key=fqdn --type=hostgroup --inclusive-"
-"regex=^web[1-9]+\\.example\\.com webservers\n"
+" Rebuild membership for all users:\n"
+" ipa automember-rebuild --type=group\n"
+msgstr ""
"\n"
-" Внесення змін до правила автоматичної участі:\n"
-" ipa automember-mod\n"
+" Перебудувати записи участі для усіх користувачів:\n"
+" ipa automember-rebuild --type=group\n"
+
+msgid ""
"\n"
-" Встановлення типової (резервної) групи призначення:\n"
-" ipa automember-default-group-set --default-group=webservers --"
-"type=hostgroup\n"
-" ipa automember-default-group-set --default-group=ipausers --type=group\n"
+" Rebuild membership for all hosts:\n"
+" ipa automember-rebuild --type=hostgroup\n"
+msgstr ""
"\n"
-" Вилучення типової (резервної) групи призначення:\n"
-" ipa automember-default-group-remove --type=hostgroup\n"
-" ipa automember-default-group-remove --type=group\n"
+" Перебудувати записи участі для усіх вузлів:\n"
+" ipa automember-rebuild --type=hostgroup\n"
+
+msgid ""
"\n"
-" Показати типову (резервну) групу призначення:\n"
-" ipa automember-default-group-show --type=hostgroup\n"
-" ipa automember-default-group-show --type=group\n"
+" Rebuild membership for specified users:\n"
+" ipa automember-rebuild --users=tuser1 --users=tuser2\n"
+msgstr ""
"\n"
-" Знайти всі правила автоматичної участі:\n"
-" ipa automember-find\n"
+" Перебудувати записи участі для вказаних користувачів:\n"
+" ipa automember-rebuild --users=tuser1 --users=tuser2\n"
+
+msgid ""
"\n"
-" Показати правило автоматичної участі:\n"
-" ipa automember-show --type=hostgroup webservers\n"
-" ipa automember-show --type=group devel\n"
+" Rebuild membership for specified hosts:\n"
+" ipa automember-rebuild --hosts=web1.example.com --hosts=web2.example."
+"com\n"
+msgstr ""
"\n"
-" Вилучити правило автоматичної участі:\n"
-" ipa automember-del --type=hostgroup webservers\n"
-" ipa automember-del --type=group devel\n"
+" Перебудувати записи участі для вказаних вузлів:\n"
+" ipa automember-rebuild --hosts=web1.example.com --hosts=web2.example."
+"com\n"
msgid "Inclusive Regex"
msgstr "Формальний вираз включення"
@@ -907,8 +1077,8 @@ msgid "Default group for entries to land"
msgstr "Типова група для додавання записів"
#, python-format
-msgid "Group: %s not found!"
-msgstr "Група: %s не знайдено!"
+msgid "%(otype)s \"%(oname)s\" not found"
+msgstr "%(otype)s «%(oname)s» не знайдено"
#, python-format
msgid "%s is not a valid attribute."
@@ -1087,6 +1257,61 @@ msgstr ""
" Показати дані щодо типових (резервних) груп автоматичної участі.\n"
" "
+msgid "Rebuild auto membership."
+msgstr "Повторне збирання правил автоматичної участі."
+
+msgid "Rebuild membership for all members of a grouping"
+msgstr "Повторне збирання правил участі для усіх учасників угрупування"
+
+msgid "Users"
+msgstr "Користувачі"
+
+msgid "Rebuild membership for specified users"
+msgstr "Повторне збирання правил участі для вказаних користувачів"
+
+msgid "Hosts"
+msgstr "Вузли"
+
+msgid "Rebuild membership for specified hosts"
+msgstr "Повторне збирання правил участі для вказаних вузлів"
+
+msgid "No wait"
+msgstr "Не чекати"
+
+msgid "Don't wait for rebuilding membership"
+msgstr "Не чекати на завершення перебудови записів участі"
+
+msgid "Task DN"
+msgstr "DN завдання"
+
+msgid "DN of the started task"
+msgstr "DN запущеного завдання"
+
+msgid "at least one of options: type, users, hosts must be specified"
+msgstr "має бути вказано принаймні один з варіантів: тип, користувачі чи вузли"
+
+msgid "users and hosts cannot both be set"
+msgstr "не можна одночасно вказувати користувачів і вузли"
+
+msgid "hosts cannot be set when type is 'group'"
+msgstr "не можна вказувати вузли, якщо типом є «group»"
+
+msgid "users cannot be set when type is 'hostgroup'"
+msgstr "не можна вказувати користувачів, якщо типом є «hostgroup»"
+
+msgid "Automember rebuild membership task started"
+msgstr "Виконується завдання з перебудови записів автоматичної участі"
+
+msgid "Automember rebuild membership task completed"
+msgstr "Завдання з перезбирання правил автоматичної участі виконано"
+
+#, python-format
+msgid "Task DN = '%s'"
+msgstr "DN завдання = «%s»"
+
+msgid "Automember"
+msgstr "Автоматична участь"
+
msgid ""
"\n"
"Automount\n"
@@ -1551,7 +1776,7 @@ msgid "Failed members"
msgstr "Помилка members"
msgid "Member users"
-msgstr "Учасник users"
+msgstr "Користувачі-учасники"
msgid "Member groups"
msgstr "Учасник groups"
@@ -1560,7 +1785,7 @@ msgid "Member of groups"
msgstr "Учасник груп"
msgid "Member hosts"
-msgstr "Учасник hosts"
+msgstr "Вузли-учасники"
msgid "Member host-groups"
msgstr "Учасник host-groups"
@@ -1575,7 +1800,7 @@ msgid "Sudo Command Groups"
msgstr "Групи команд sudo"
msgid "Granting privilege to roles"
-msgstr "Надання уповноважень ролям"
+msgstr "Надання привілеїв ролям"
msgid "Member netgroups"
msgstr "Мережеві групи учасника"
@@ -1596,7 +1821,7 @@ msgid "Member HBAC service groups"
msgstr "Групи служб HBAC учасника"
msgid "Indirect Member users"
-msgstr "Опосередковані користувачі учасника"
+msgstr "Опосередковані користувачі-учасники"
msgid "Indirect Member groups"
msgstr "Опосередковані групи учасника"
@@ -1964,12 +2189,6 @@ msgstr ""
"http://www.ietf.org/rfc/rfc5280.txt\n"
"\n"
-msgid "Failure decoding Certificate Signing Request:"
-msgstr "Помилка під час декодування запиту на підписування сертифіката (CSR):"
-
-msgid "Failure decoding Certificate Signing Request"
-msgstr "Помилка під час декодування запиту на підписування сертифіката (CSR)"
-
#, python-format
msgid "Failure decoding Certificate Signing Request: %s"
msgstr ""
@@ -2033,6 +2252,14 @@ msgstr ""
"назва вузла у призначенні запиту, «%(subject_host)s», не збігається з назвою "
"вузла реєстраційного запису, «%(hostname)s»"
+#, python-format
+msgid "extension %s is forbidden"
+msgstr "використання розширення %s заборонено"
+
+#, python-format
+msgid "subject alt name type %s is forbidden"
+msgstr "використання типу альтернативної назви об’єкта %s заборонено"
+
msgid "The service principal for this request doesn't exist."
msgstr "Реєстраційного запису служби для цього запиту не існує."
@@ -2044,22 +2271,34 @@ msgstr ""
msgid ""
"Insufficient 'write' privilege to the 'userCertificate' attribute of entry "
"'%s'."
-msgstr ""
-"Недостатні права доступу «write» до атрибута «userCertificate» запису «%s»."
+msgstr "Недостатні привілеї «write» до атрибута «userCertificate» запису «%s»."
#, python-format
-msgid "no host record for subject alt name %s in certificate request"
+msgid ""
+"The service principal for subject alt name %s in certificate request does "
+"not exist"
msgstr ""
-"немає запису вузла для альтернативної назви призначення, %s, у запиті щодо "
-"сертифікації"
+"Реєстраційного запису служби для альтернативної назви об’єкта %s запиту щодо "
+"сертифіката не існує"
#, python-format
msgid ""
"Insufficient privilege to create a certificate with subject alt name '%s'."
msgstr ""
-"Недостатні права доступу для створення сертифіката з альтернативною назвою "
+"Недостатні привілеї для створення сертифіката з альтернативною назвою "
"призначення «%s»."
+#, python-format
+msgid ""
+"Principal '%s' in subject alt name does not match requested service principal"
+msgstr ""
+"Реєстраційний запис «%s» у альтернативній назві об’єкта не відповідає "
+"запитаному реєстраційному запису служби"
+
+#, python-format
+msgid "Subject alt name type %s is forbidden"
+msgstr "Використання типу альтернативної назви об’єкта %s заборонено"
+
msgid "Check the status of a certificate signing request."
msgstr "Перевірити стан запиту щодо підписування сертифіката."
@@ -2373,6 +2612,12 @@ msgstr "Типові типи PAC"
msgid "Default types of PAC supported for services"
msgstr "Типові типи PAC, підтримувані для служб"
+msgid "Default user authentication types"
+msgstr "Типові типи розпізнавання користувачів"
+
+msgid "Default types of supported user authentication"
+msgstr "Типові типи підтримуваного розпізнавання користувачів"
+
msgid "Modify configuration options."
msgstr "Змінити параметри налаштування."
@@ -2783,6 +3028,9 @@ msgstr ""
" ipa dnszone-add example.com --name-server=ns \\\n"
" --admin-email=admin@example.com \\\n"
" --ip-address=10.0.0.1\n"
+" Додати системні права доступу, якими можна скористатися для делегування "
+"привілеїв для окремих зон:\n"
+" ipa dnszone-add-permission example.com\n"
"\n"
" Змінити зону з метою дозволити динамічні оновлення для власних записів "
"вузлів у області EXAMPLE.COM:\n"
@@ -2948,6 +3196,9 @@ msgstr ""
" переспрямовувачів:\n"
" ipa dnsconfig-mod --forwarder=10.0.0.1\n"
+msgid "Permission value"
+msgstr "Значення прав доступу"
+
#, python-format
msgid "invalid IP address version (is %(value)d, must be %(required_value)d)!"
msgstr ""
@@ -2966,13 +3217,12 @@ msgid "invalid address format"
msgstr "некоректний формат адреси"
#, python-format
-msgid "invalid domain-name: %s"
-msgstr "некоректна назва домену: %s"
-
-#, python-format
msgid "%(port)s is not a valid port"
msgstr "%(port)s не є чинним портом"
+msgid "invalid domain-name: not fully qualified"
+msgstr "некоректна назва домену: назва не є повною"
+
#, python-format
msgid "DNS reverse zone for IP address %(addr)s not found"
msgstr "Зворотної зони DNS для IP-адреси %(addr)s не знайдено"
@@ -3069,15 +3319,6 @@ msgstr "Тип контрольної суми"
msgid "Digest"
msgstr "Контрольна сума"
-msgid "Flags"
-msgstr "Прапорці"
-
-msgid "Protocol"
-msgstr "Протокол"
-
-msgid "Public Key"
-msgstr "Відкритий ключ"
-
msgid "Preference"
msgstr "Пріоритет"
@@ -3159,18 +3400,21 @@ msgstr "«%(required)s» має бути порожнім, якщо вказан
msgid "A host willing to act as a mail exchanger"
msgstr "Вузол, який може працювати як обмінник поштовими даними"
-msgid ""
-"format must be specified as \"NEXT TYPE1 [TYPE2 [TYPE3 [...]]]\" (see RFC "
-"4034 for details)"
-msgstr ""
-"формат має бути таким: «НАСТУПНИЙ ТИП1 [ТИП2 [ТИП3 [...]]]» (докладніше про "
-"це у RFC 4034)"
+msgid "Flags"
+msgstr "Прапорці"
+
+msgid "Iterations"
+msgstr "Ітерації"
-msgid "Next Domain Name"
-msgstr "Наступна назва домену"
+msgid "Salt"
+msgstr "Сіль"
-msgid "Type Map"
-msgstr "Карта типів"
+msgid ""
+"A hexadecimal salt value. Requires hexadecimal digits or hyphen (\"-\") if "
+"no salt is required"
+msgstr ""
+"Шістнадцяткове значення солі. Складається із шістнадцяткових цифр або дефіса "
+"(«-»), якщо сіль не потрібна."
msgid "flags must be one of \"S\", \"A\", \"U\", or \"P\""
msgstr ""
@@ -3211,27 +3455,6 @@ msgstr ""
msgid "the value does not follow \"YYYYMMDDHHMMSS\" time format"
msgstr "значення не відповідає формату «РРРРММДДГГХХСС»"
-msgid "Type Covered"
-msgstr "Тип покриття"
-
-msgid "Labels"
-msgstr "Мітки"
-
-msgid "Original TTL"
-msgstr "Початковий TTL"
-
-msgid "Signature Expiration"
-msgstr "Строк завершення дії підпису"
-
-msgid "Signature Inception"
-msgstr "Початок дії підпису"
-
-msgid "Signer's Name"
-msgstr "Ім’я підписувача"
-
-msgid "Signature"
-msgstr "Підпис"
-
msgid "Fingerprint Type"
msgstr "Тип відбитка"
@@ -3254,18 +3477,6 @@ msgstr "Сервер назв «%(host)s» не має відповідного
msgid "Managedby permission"
msgstr "Права доступу managedby"
-msgid "DNS zone"
-msgstr "зона DNS"
-
-msgid "DNS zones"
-msgstr "зони DNS"
-
-msgid "DNS Zones"
-msgstr "Зони DNS"
-
-msgid "DNS Zone"
-msgstr "Зона DNS"
-
msgid "Zone name"
msgstr "Назва зони"
@@ -3278,6 +3489,67 @@ msgstr "Мережа IP зворотної зони"
msgid "IP network to create reverse zone name from"
msgstr "Мережа IP для створення зворотних назв зони"
+msgid "Active zone"
+msgstr "Активна зона"
+
+msgid "Is zone active?"
+msgstr "Чи є зона активною?"
+
+msgid "Zone forwarders"
+msgstr "Переспрямовувачі зон"
+
+msgid ""
+"Per-zone forwarders. A custom port can be specified for each forwarder using "
+"a standard format \"IP_ADDRESS port PORT\""
+msgstr ""
+"Переспрямовувачі для окремої зони. Можна вказати нетиповий порт для кожного "
+"переспрямовувача у стандартному форматі: «IP_АДРЕСА port ПОРТ»"
+
+msgid "Forward policy"
+msgstr "Правила переспрямовування"
+
+msgid ""
+"Per-zone conditional forwarding policy. Set to \"none\" to disable "
+"forwarding to global forwarder for this zone. In that case, conditional zone "
+"forwarders are disregarded."
+msgstr ""
+"Умовні правила переспрямування для окремої зони. Встановіть значення «none» "
+"для вимикання переспрямовувача загального рівня для цієї зони. Якщо ви "
+"встановите це значення, умовні переспрямовувачі зони не братимуться до уваги."
+
+msgid "DNS is not configured"
+msgstr "DNS не налаштовано"
+
+msgid "Only one zone type is allowed per zone name"
+msgstr "Можна використовувати лише один тип зони на одну назву зони"
+
+msgid "Search for DNS zones (SOA records)."
+msgstr "Пошук зон DNS (записів SOA)."
+
+#, python-format
+msgid "Added system permission \"%(value)s\""
+msgstr "Додано системні права доступу «%(value)s»"
+
+#, python-format
+msgid "permission \"%(value)s\" already exists"
+msgstr "право доступу «%(value)s» вже існує"
+
+#, python-format
+msgid "Removed system permission \"%(value)s\""
+msgstr "Вилучено системні права доступу «%(value)s»"
+
+msgid "DNS zone"
+msgstr "зона DNS"
+
+msgid "DNS zones"
+msgstr "зони DNS"
+
+msgid "DNS Zones"
+msgstr "Зони DNS"
+
+msgid "DNS Zone"
+msgstr "Зона DNS"
+
msgid "Authoritative nameserver"
msgstr "Основний сервер назв"
@@ -3317,11 +3589,11 @@ msgstr "Мінімальний SOA"
msgid "How long should negative responses be cached"
msgstr "Тривалість кешування відмов"
-msgid "SOA time to live"
-msgstr "Строк дії SOA"
+msgid "Time to live"
+msgstr "Строк дії"
-msgid "SOA record time to live"
-msgstr "Час життя запису SOA"
+msgid "Time to live for records at zone apex"
+msgstr "Час життя записів у апексі зони"
msgid "SOA class"
msgstr "Клас SOA"
@@ -3332,12 +3604,6 @@ msgstr "Клас записів SOA"
msgid "BIND update policy"
msgstr "Правила оновлення BIND"
-msgid "Active zone"
-msgstr "Активна зона"
-
-msgid "Is zone active?"
-msgstr "Чи є зона активною?"
-
msgid "Dynamic update"
msgstr "Динамічне оновлення"
@@ -3364,28 +3630,6 @@ msgstr ""
"Список відокремлених крапкою з комою записів IP-адрес або мереж, яким надано "
"доступ до перенесення зони"
-msgid "Zone forwarders"
-msgstr "Переспрямовувачі зон"
-
-msgid ""
-"Per-zone forwarders. A custom port can be specified for each forwarder using "
-"a standard format \"IP_ADDRESS port PORT\""
-msgstr ""
-"Переспрямовувачі для окремої зони. Можна вказати нетиповий порт для кожного "
-"переспрямовувача у стандартному форматі: «IP_АДРЕСА port ПОРТ»"
-
-msgid "Forward policy"
-msgstr "Правила переспрямовування"
-
-msgid ""
-"Per-zone conditional forwarding policy. Set to \"none\" to disable "
-"forwarding to global forwarder for this zone. In that case, conditional zone "
-"forwarders are disregarded."
-msgstr ""
-"Умовні правила переспрямування для окремої зони. Встановіть значення «none» "
-"для вимикання переспрямовувача загального рівня для цієї зони. Якщо ви "
-"встановите це значення, умовні переспрямовувачі зони не братимуться до уваги."
-
msgid "Allow PTR sync"
msgstr "Дозволити PTR-синхронізацію"
@@ -3395,6 +3639,12 @@ msgid ""
msgstr ""
"Дозволити у зоні синхронізацію прямих (A, AAAA) і зворотних (PTR) записів"
+msgid "Allow in-line DNSSEC signing"
+msgstr "Дозволити вбудоване підписування DNSSEC"
+
+msgid "Allow inline DNSSEC signing of records in the zone"
+msgstr "Дозволити вбудоване підписування DNSSEC записів у зоні"
+
msgid "Create new DNS zone (SOA record)."
msgstr "Створити зону DNS (запис SOA)."
@@ -3413,9 +3663,6 @@ msgstr ""
msgid "Nameserver IP address"
msgstr "IP-адреса сервера назв"
-msgid "DNS is not configured"
-msgstr "DNS не налаштовано"
-
msgid "Nameserver address is not a domain name"
msgstr "Адреса сервера назв не є назвою домену"
@@ -3442,9 +3689,6 @@ msgid "Force nameserver change even if nameserver not in DNS"
msgstr ""
"Примусово змінити сервер назв, навіть якщо запису сервера назв немає у DNS"
-msgid "Search for DNS zones (SOA records)."
-msgstr "Пошук зон DNS (записів SOA)."
-
msgid "Forward zones only"
msgstr "Лише прямі зони"
@@ -3471,17 +3715,9 @@ msgstr "Увімкнено зону DNS «%(value)s»"
msgid "Add a permission for per-zone access delegation."
msgstr "Додати права доступу до надання доступу до окремих зон."
-#, python-format
-msgid "Added system permission \"%(value)s\""
-msgstr "Додано системні права доступу «%(value)s»"
-
msgid "Remove a permission for per-zone access delegation."
msgstr "Вилучити права доступу до надання доступу до окремих зон."
-#, python-format
-msgid "Removed system permission \"%(value)s\""
-msgstr "Вилучено системні права доступу «%(value)s»"
-
msgid "DNS resource record"
msgstr "Запис ресурсу DNS"
@@ -3497,9 +3733,6 @@ msgstr "Запис ресурсу DNS"
msgid "Record name"
msgstr "Назва запису"
-msgid "Time to live"
-msgstr "Строк дії"
-
msgid "Class"
msgstr "Клас"
@@ -3512,6 +3745,15 @@ msgstr "Структурована"
msgid "Parse all raw DNS records and return them in a structured way"
msgstr "Обробити всі записи DNS і повернути дані у структурованій формі"
+msgid "must be in zone record"
+msgstr "має бути у записі зони"
+
+msgid ""
+"out-of-zone data: record name must be a subdomain of the zone or a relative "
+"name"
+msgstr ""
+"дані поза зоною: назва запису має бути піддоменом зони або відносною назвою"
+
#, python-format
msgid ""
"Reverse zone for PTR record should be a sub-zone of one the following fully "
@@ -3528,6 +3770,9 @@ msgstr ""
"Зворотна зона %(name)s потребує точно %(count)d компонентів IP-адрес, надано "
"%(user_count)d"
+msgid "only master zones can contain records"
+msgstr "записи можуть містити лише основні зони"
+
msgid "only one CNAME record is allowed per name (RFC 2136, section 1.1.5)"
msgstr ""
"можна використовувати лише один запис CNAME на назву (RFC 2136, розділ 1.1.5)"
@@ -3550,6 +3795,9 @@ msgstr ""
"запис DNAME не можна використовувати разом з записом NS, якщо їх не "
"розташовано у запису кореня зони (RFC 6672, розділ 2.3)"
+msgid "Only one NSEC3PARAM record is allowed per zone"
+msgstr "У зоні може бути лише один запис NSEC3PARAM"
+
msgid "Add new DNS resource record."
msgstr "Додати новий запис ресурсу DNS."
@@ -3701,6 +3949,64 @@ msgstr "Змінити загальні налаштування DNS."
msgid "Show the current global DNS configuration."
msgstr "Показати поточні загальні налаштування DNS."
+msgid "DNS forward zone"
+msgstr "Зона переспрямовування DNS"
+
+msgid "DNS forward zones"
+msgstr "Зони переспрямовування DNS"
+
+msgid "DNS Forward Zones"
+msgstr "Зони переспрямовування DNS"
+
+msgid "DNS Forward Zone"
+msgstr "Зона переспрямовування DNS"
+
+msgid "Create new DNS forward zone."
+msgstr "Створити зону переспрямовування DNS."
+
+msgid "Please specify forwarders."
+msgstr "Будь ласка, вкажіть переспрямовувачі."
+
+msgid "Delete DNS forward zone."
+msgstr "Вилучити зону переспрямовування DNS."
+
+#, python-format
+msgid "Deleted DNS forward zone \"%(value)s\""
+msgstr "Вилучено зону переспрямовування DNS «%(value)s»"
+
+msgid "Modify DNS forward zone."
+msgstr "Змінити зону переспрямовування DNS."
+
+msgid "Search for DNS forward zones."
+msgstr "Пошук зон переспрямовування DNS."
+
+msgid "Display information about a DNS forward zone."
+msgstr "Показ даних щодо зони переспрямовування DNS."
+
+msgid "Disable DNS Forward Zone."
+msgstr "Вимкнути зону переспрямовування DNS."
+
+#, python-format
+msgid "Disabled DNS forward zone \"%(value)s\""
+msgstr "Вимкнено зону переспрямовування DNS «%(value)s»"
+
+msgid "Enable DNS Forward Zone."
+msgstr "Увімкнути зону переспрямовування DNS"
+
+#, python-format
+msgid "Enabled DNS forward zone \"%(value)s\""
+msgstr "Увімкнено зону переспрямовування DNS «%(value)s»"
+
+msgid "Add a permission for per-forward zone access delegation."
+msgstr ""
+"Додати право доступу до делегування доступу на основі окремих зон "
+"переспрямовування."
+
+msgid "Remove a permission for per-forward zone access delegation."
+msgstr ""
+"Вилучити права доступу до делегування доступу для окремих зон "
+"переспрямовування."
+
msgid ""
"\n"
"Groups of users\n"
@@ -4156,12 +4462,6 @@ msgstr "Категорія служб, до якої застосовуєтьс
msgid "Enabled"
msgstr "Увімкнено"
-msgid "Users"
-msgstr "Користувачі"
-
-msgid "Hosts"
-msgstr "Вузли"
-
msgid "Host Groups"
msgstr "Групи вузлів"
@@ -4920,13 +5220,12 @@ msgstr ""
"\n"
"Вузли/Комп’ютери\n"
"\n"
-"Одному вузлу відповідає один комп’ютер. Вузол може бути використано\n"
-"у декількох контекстах:\n"
-"- записи служб, пов’язані з вузлом;\n"
-"- на вузлі зберігається реєстраційний запис служби вузла\n"
-"- вузол може бути використано у правилах Host-based Access Control (HBAC);\n"
-"- для кожного зареєстрованого клієнта створюється запис вузла.\n"
-"\n"
+"Вузол — це окремий комп’ютер. Термін може використовуватися у декількох "
+"контекстах:\n"
+"- записи служб, пов’язані з певним вузлом\n"
+"- вузол зберігає реєстраційні дані вузол/служба\n"
+"- вузол можна використовувати у правилах Host-based Access Control (HBAC)\n"
+"- для усіх зареєстрованих клієнтів створюється запис вузла\n"
msgid ""
"\n"
@@ -4945,24 +5244,43 @@ msgstr ""
"\n"
"РЕЄСТРАЦІЯ:\n"
"\n"
-"Передбачено три сценарії реєстрації нового клієнта:\n"
+"Передбачено три сценарії реєстрації нових клієнтів:\n"
"\n"
-"1. Реєстрація повноцінного адміністратора. Відповідний запис вузла може "
-"існувати\n"
-" або не існувати. Повноцінний адміністратор є учасником ролі hostadmin "
-"або\n"
-" групи admins.\n"
-"2. Реєстрація обмеженого адміністратора. Відповідний запис вузла вже має "
-"існувати\n"
-" Обмежений адміністратор є учасником розі з правами реєстрації вузлів.\n"
-"3. Створення запису вузла з одноразовим паролем.\n"
+"1. Ви реєструєтеся як повноцінний адміністратор. Запис вузла може існувати\n"
+" або не існувати. Повноцінний адміністратор виконує роль hostadmin або є\n"
+" учасником групи admins.\n"
+"2. Ви реєструєтеся як адміністратор з обмеженими правами. Вузол вже має\n"
+" існувати. Обмежений адміністратор виконує роль з привілеями\n"
+" Host Enrollment.\n"
+"3. Вузол було створено з одноразовим паролем.\n"
msgid ""
"\n"
-"EXAMPLES:\n"
+"RE-ENROLLMENT:\n"
+"\n"
+"Host that has been enrolled at some point, and lost its configuration (e.g. "
+"VM\n"
+"destroyed) can be re-enrolled.\n"
+"\n"
+"For more information, consult the manual pages for ipa-client-install.\n"
+"\n"
+"A host can optionally store information such as where it is located,\n"
+"the OS that it runs, etc.\n"
msgstr ""
"\n"
-"ПРИКЛАДИ:\n"
+"ПОВТОРНА РЕЄСТРАЦІЯ:\n"
+"\n"
+"Вузол, якому вже колись було надано певну роль, але налаштування було "
+"втрачено\n"
+"(наприклад через знищення віртуальної машини), можна знову зареєструвати "
+"(надати роль).\n"
+"\n"
+"Щоб дізнатися більше, зверніться до сторінок підручника (man) щодо ipa-"
+"client-install.\n"
+"\n"
+"Запис вузла може, якщо потрібно, зберігати відомості щодо розташування, "
+"запущеної\n"
+"операційної системи тощо.\n"
msgid ""
"\n"
@@ -4971,7 +5289,7 @@ msgid ""
"com\n"
msgstr ""
"\n"
-" Додавання нового вузла:\n"
+"Додати новий вузол:\n"
" ipa host-add --location=\"3rd floor lab\" --locality=Dallas test.example."
"com\n"
@@ -4981,7 +5299,7 @@ msgid ""
" ipa host-del test.example.com\n"
msgstr ""
"\n"
-" Вилучення вузла:\n"
+" Вилучити вузол:\n"
" ipa host-del test.example.com\n"
msgid ""
@@ -4990,7 +5308,7 @@ msgid ""
" ipa host-add --os='Fedora 12' --password=Secret123 test.example.com\n"
msgstr ""
"\n"
-" Додавання нового вузла з одноразовим паролем:\n"
+" Додати новий вузол з одноразовим паролем:\n"
" ipa host-add --os='Fedora 12' --password=Secret123 test.example.com\n"
msgid ""
@@ -4999,7 +5317,7 @@ msgid ""
" ipa host-add --os='Fedora 12' --random test.example.com\n"
msgstr ""
"\n"
-" Додавання нового вузла з випадковим одноразовим паролем:\n"
+"Додати новий вузол з випадковим одноразовим паролем:\n"
" ipa host-add --os='Fedora 12' --random test.example.com\n"
msgid ""
@@ -5008,7 +5326,7 @@ msgid ""
" ipa host-mod --os='Fedora 12' test.example.com\n"
msgstr ""
"\n"
-" Зміна даних щодо вузла:\n"
+" Змінити відомості щодо вузла:\n"
" ipa host-mod --os='Fedora 12' test.example.com\n"
msgid ""
@@ -5017,7 +5335,7 @@ msgid ""
" ipa host-mod --sshpubkey= --updatedns test.example.com\n"
msgstr ""
"\n"
-" Вилучення відкритих ключів SSH вузла і оновлення DNS відповідно до внесених "
+" Вилучити відкриті ключі SSH вузла і оновити DNS відповідно до внесених "
"змін:\n"
" ipa host-mod --sshpubkey= --updatedns test.example.com\n"
@@ -5027,7 +5345,7 @@ msgid ""
" ipa host-disable test.example.com\n"
msgstr ""
"\n"
-" Вимикання ключа Kerberos вузла, сертифіката SSL та всіх його служб:\n"
+"Вимкнути ключ Kerberos вузла, сертифікат SSL та усі його служби:\n"
" ipa host-disable test.example.com\n"
msgid ""
@@ -5036,8 +5354,8 @@ msgid ""
" ipa host-add-managedby --hosts=test2 test\n"
msgstr ""
"\n"
-" Додавання вузла, який може керувати таблицею ключів і сертифікатів\n"
-" цього вузла:\n"
+"Додати вузол, який може керувати сховищем ключів та сертифікатом цього "
+"вузла :\n"
" ipa host-add-managedby --hosts=test2 test\n"
msgid "Keytab"
@@ -5055,6 +5373,10 @@ msgstr "Помилка managedby"
msgid "SSH public key fingerprint"
msgstr "Відбиток відкритого ключа SSH"
+#, python-format
+msgid "invalid domain-name: %s"
+msgstr "некоректна назва домену: %s"
+
msgid "host"
msgstr "вузол"
@@ -5673,6 +5995,7 @@ msgstr "Назва довіреного домену"
msgid "Range type"
msgstr "Тип діапазону"
+#, python-brace-format
msgid "ID range type, one of {vals}"
msgstr "Тип діапазону ідентифікаторів, одне з таких значень: {vals}"
@@ -5883,84 +6206,117 @@ msgstr ""
msgid "Apply"
msgstr "Застосувати"
-msgid "Are you sure you want to proceed with the action."
+msgid "Rebuild auto membership"
+msgstr "Повторне збирання правил автоматичної участі"
+
+msgid "Are you sure you want to rebuild auto membership?"
+msgstr "Ви справді хочете перебудувати записи автоматичної участі?"
+
+msgid "Are you sure you want to proceed with the action?"
msgstr "Ви справді хочете виконати цю дію?"
-msgid "Are you sure you want to delete ${object}"
-msgstr "Ви справді хочете вилучити ${object}"
+#, python-brace-format
+msgid "Are you sure you want to delete ${object}?"
+msgstr "Ви справді хочете вилучити ${object}?"
-msgid "Are you sure you want to disable ${object}"
-msgstr "Ви справді хочете вимкнути ${object}"
+#, python-brace-format
+msgid "Are you sure you want to disable ${object}?"
+msgstr "Ви справді хочете вимкнути ${object}?"
-msgid "Are you sure you want to enable ${object}"
-msgstr "Ви справді хочете увімкнути ${object}"
+#, python-brace-format
+msgid "Are you sure you want to enable ${object}?"
+msgstr "Ви справді хочете увімкнути ${object}?"
msgid "Actions"
msgstr "Дії"
+#, python-brace-format
msgid "Add RunAs ${other_entity} into ${entity} ${primary_key}"
msgstr "Додати ${other_entity} запуск від імені до ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add RunAs Groups into ${entity} ${primary_key}"
msgstr "Додати групи запуску від імені до ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add ${other_entity} Managing ${entity} ${primary_key}"
msgstr "Додати ${other_entity}, керування ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add ${other_entity} into ${entity} ${primary_key}"
msgstr "Додати ${other_entity} до ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add Allow ${other_entity} into ${entity} ${primary_key}"
msgstr "Додано дозвіл ${other_entity} до ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add Deny ${other_entity} into ${entity} ${primary_key}"
msgstr "Додано заборону ${other_entity} до ${entity} ${primary_key}"
+#, python-brace-format
msgid "Add ${entity} ${primary_key} into ${other_entity}"
msgstr "Додати ${entity} ${primary_key} до ${other_entity}"
+#, python-brace-format
msgid "${count} item(s) added"
msgstr "Додано ${count} записів"
msgid "Direct Membership"
msgstr "Безпосередня участь"
+#, python-brace-format
+msgid "Filter available ${other_entity}"
+msgstr "Доступний фільтр ${other_entity}"
+
msgid "Indirect Membership"
msgstr "Опосередкована участь"
msgid "No entries."
msgstr "Немає записів."
+#, python-brace-format
msgid "Showing ${start} to ${end} of ${total} entries."
msgstr "Показано записи від ${start} до ${end} з ${total} записів."
+#, python-brace-format
msgid "Remove RunAs ${other_entity} from ${entity} ${primary_key}"
msgstr "Вилучити ${other_entity} запуску від імені з ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove RunAs Groups from ${entity} ${primary_key}"
msgstr "Вилучити групи запуску від імені з ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove ${other_entity} Managing ${entity} ${primary_key}"
msgstr "Вилучити ${other_entity}, керування ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove ${other_entity} from ${entity} ${primary_key}"
msgstr "Вилучити ${other_entity} з ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove Allow ${other_entity} from ${entity} ${primary_key}"
msgstr "Вилучити дозвіл ${other_entity} з ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove Deny ${other_entity} from ${entity} ${primary_key}"
msgstr "Вилучити заборону ${other_entity} з ${entity} ${primary_key}"
+#, python-brace-format
msgid "Remove ${entity} ${primary_key} from ${other_entity}"
msgstr "Вилучити ${entity} ${primary_key} з ${other_entity}"
+#, python-brace-format
msgid "${count} item(s) removed"
msgstr "Вилучено ${count} записів"
msgid "Show Results"
msgstr "Показати результати"
+msgid "About"
+msgstr "Про програму"
+
msgid "Add"
msgstr "Додати"
@@ -6048,18 +6404,22 @@ msgstr "Загальне"
msgid "Identity Settings"
msgstr "Параметри профілю"
+#, python-brace-format
msgid "${entity} ${primary_key} Settings"
msgstr "Параметри ${primary_key} ${entity}"
msgid "Back to Top"
msgstr "Повернутися до початку"
+#, python-brace-format
msgid "${entity} ${primary_key} updated"
msgstr "Оновлено ${primary_key} ${entity}"
+#, python-brace-format
msgid "${entity} successfully added"
msgstr "${entity} успішно додано"
+#, python-brace-format
msgid "Add ${entity}"
msgstr "Додати ${entity}"
@@ -6083,12 +6443,17 @@ msgstr ""
msgid "Unsaved Changes"
msgstr "Незбережені зміни"
+#, python-brace-format
msgid "Edit ${entity}"
msgstr "Змінити ${entity}"
msgid "Hide details"
msgstr "Сховати подробиці"
+#, python-brace-format
+msgid "${product}, version: ${version}"
+msgstr "${product}, версія: ${version}"
+
msgid "Prospective"
msgstr "Очікуваний"
@@ -6098,6 +6463,7 @@ msgstr "Переспрямування"
msgid "Select entries to be removed."
msgstr "Виберіть записи, які слід вилучити."
+#, python-brace-format
msgid "Remove ${entity}"
msgstr "Вилучити ${entity}"
@@ -6128,6 +6494,7 @@ msgstr "Перезавантажити переглядач."
msgid "Return to the main page and retry the operation"
msgstr "Повернутися до головної сторінки і повторити спробу"
+#, python-brace-format
msgid "An error has occurred (${error})"
msgstr "Сталася помилка (${error})"
@@ -6149,12 +6516,15 @@ msgstr "Невідома помилка"
msgid "URL"
msgstr "Адреса"
+#, python-brace-format
msgid "${primary_key} is managed by:"
msgstr "${primary_key} керується:"
+#, python-brace-format
msgid "${primary_key} members:"
msgstr "Учасники ${primary_key}:"
+#, python-brace-format
msgid "${primary_key} is a member of:"
msgstr "${primary_key} міститься у:"
@@ -6189,6 +6559,7 @@ msgstr ""
msgid "Logged In As"
msgstr "Вхід до системи від імені"
+#, python-brace-format
msgid ""
"To login with Kerberos, please make sure you have valid tickets (obtainable "
"via kinit) and <a href='http://${host}/ipa/config/unauthorized."
@@ -6220,6 +6591,7 @@ msgstr "секунд"
msgid "Attribute"
msgstr "Атрибут"
+#, python-brace-format
msgid "Add Condition into ${pkey}"
msgstr "Додати умову до ${pkey}"
@@ -6322,6 +6694,10 @@ msgstr "Чинний не раніше"
msgid "Fingerprints"
msgstr "Відбитки"
+msgid "Get Certificate"
+msgstr "Отримати сертифікат"
+
+#, python-brace-format
msgid "Issue New Certificate for ${entity} ${primary_key}"
msgstr "Створити сертифікат для ${primary_key} ${entity}"
@@ -6356,7 +6732,7 @@ msgid "Organizational Unit"
msgstr "Підрозділ установи"
msgid "Privilege Withdrawn"
-msgstr "Уповноваження відкликано"
+msgstr "Привілей відкликано"
msgid "Reason for Revocation"
msgstr "Причина відкликання"
@@ -6364,6 +6740,7 @@ msgstr "Причина відкликання"
msgid "Remove from CRL"
msgstr "Вилучити з CRL"
+#, python-brace-format
msgid ""
"<ol> <li>Create a certificate database or use an existing one. To create a "
"new database:<br/> <code># certutil -N -d &lt;database path&gt;</code> </li> "
@@ -6386,6 +6763,7 @@ msgstr ""
msgid "Certificate requested"
msgstr "Надіслано запит щодо сертифікації"
+#, python-brace-format
msgid "Restore Certificate for ${entity} ${primary_key}"
msgstr "Відновити сертифікат для ${primary_key} ${entity}"
@@ -6402,6 +6780,7 @@ msgstr ""
msgid "Certificate restored"
msgstr "Сертифікат відновлено"
+#, python-brace-format
msgid "Revoke Certificate for ${entity} ${primary_key}"
msgstr "Відкликати сертифікат для ${primary_key} ${entity}"
@@ -6433,9 +6812,13 @@ msgstr "Є чинний сертифікат"
msgid "Validity"
msgstr "Коректність"
+#, python-brace-format
msgid "Certificate for ${entity} ${primary_key}"
msgstr "Сертифікат для ${primary_key} ${entity}"
+msgid "View Certificate"
+msgstr "Переглянути сертифікат"
+
msgid "Group Options"
msgstr "Параметри групи"
@@ -6493,6 +6876,7 @@ msgstr "Запис не знайдено."
msgid "Redirection to PTR record"
msgstr "Переспрямовування на запис PTR"
+#, python-brace-format
msgid "Zone found: ${zone}"
msgstr "Виявлено зону: ${zone}"
@@ -6607,6 +6991,7 @@ msgstr "Правила"
msgid "Run Test"
msgstr "Запустити тест…"
+#, python-brace-format
msgid "Specify external ${entity}"
msgstr "Вкажіть зовнішній ${entity}"
@@ -6673,6 +7058,7 @@ msgstr "Скасування передбачення"
msgid "Are you sure you want to unprovision this host?"
msgstr "Ви справді бажаєте скасувати передбачення цього вузла?"
+#, python-brace-format
msgid "Unprovisioning ${entity}"
msgstr "Скасування передбачення ${entity}"
@@ -6691,14 +7077,14 @@ msgstr "Параметри мережевої групи"
msgid "User"
msgstr "Користувач"
-msgid "Identity"
-msgstr "Профіль"
+msgid "Permission settings"
+msgstr "Параметри прав доступу"
-msgid "Permission with invalid target specification"
-msgstr "Права доступу з некоректним визначенням призначення"
+msgid "Attribute breakdown"
+msgstr "Розбиття за атрибутами"
msgid "Privilege Settings"
-msgstr "Параметри уповноваження"
+msgstr "Параметри привілеїв"
msgid "Password Policy"
msgstr "Правила для паролів"
@@ -6727,6 +7113,9 @@ msgstr "Домен Active Directory"
msgid "Active Directory domain with POSIX attributes"
msgstr "Домен Active Directory з атрибутами POSIX"
+msgid "Detect"
+msgstr "Визначити"
+
msgid "Local domain"
msgstr "Локальний домен"
@@ -6736,6 +7125,9 @@ msgstr "Довіра IPA"
msgid "Active Directory winsync"
msgstr "winsync Active Directory"
+msgid "RADIUS Proxy Server Settings"
+msgstr "Параметри проксі-сервера RADIUS"
+
msgid "Realm Domains"
msgstr "Домени області"
@@ -6820,6 +7212,7 @@ msgstr "Доступ до цього вузла"
msgid "Option added"
msgstr "Додано параметр"
+#, python-brace-format
msgid "${count} option(s) removed"
msgstr "Вилучено ${count} параметрів"
@@ -6850,6 +7243,9 @@ msgstr "Домен"
msgid "Establish using"
msgstr "Встановити за допомогою"
+msgid "Fetch domains"
+msgstr "Отримати домени"
+
msgid "Domain NetBIOS name"
msgstr "Назва домену у NetBIOS"
@@ -6892,6 +7288,7 @@ msgstr "Адреса ел. пошти"
msgid "Misc. Information"
msgstr "Інша інформація"
+#, python-brace-format
msgid ""
"Are you sure you want to ${action} the user?<br/>The change will take effect "
"immediately."
@@ -6899,6 +7296,7 @@ msgstr ""
"Ви справді бажаєте виконати щодо користувача дію «${action}»?<br/>Зміни буде "
"внесено негайно."
+#, python-brace-format
msgid "Click to ${action}"
msgstr "Натисніть, щоб ${action}"
@@ -6908,6 +7306,7 @@ msgstr "Поточний пароль"
msgid "Current password is required"
msgstr "Слід вказати поточний пароль"
+#, python-brace-format
msgid "Your password expires in ${days} days."
msgstr "Строк дії вашого пароля буде вичерпано за ${days} днів."
@@ -6941,18 +7340,21 @@ msgstr "Повторіть пароль"
msgid "Are you sure you want to delete selected entries?"
msgstr "Ви справді бажаєте вилучити позначені записи?"
+#, python-brace-format
msgid "${count} item(s) deleted"
msgstr "Вилучено ${count} записів"
msgid "Are you sure you want to disable selected entries?"
msgstr "Ви справді хочете вимкнути позначені записи?"
+#, python-brace-format
msgid "${count} item(s) disabled"
msgstr "Вимкнено ${count} записів"
msgid "Are you sure you want to enable selected entries?"
msgstr "Ви справді бажаєте увімкнути позначені записи?"
+#, python-brace-format
msgid "${count} item(s) enabled"
msgstr "Увімкнено ${count} записів"
@@ -6965,6 +7367,7 @@ msgstr "Швидкі посилання"
msgid "Select All"
msgstr "Вибрати все"
+#, python-brace-format
msgid ""
"Query returned more results than the configured size limit. Displaying the "
"first ${counter} results."
@@ -6978,12 +7381,12 @@ msgstr "Скасувати вибір всього"
msgid "Disabled"
msgstr "Вимкнено"
+msgid "Working"
+msgstr "Працює"
+
msgid "Audit"
msgstr "Аудит"
-msgid "Automember"
-msgstr "Автоматична участь"
-
msgid "Automount"
msgstr "Автоматичне монтування"
@@ -6993,6 +7396,9 @@ msgstr "DNS"
msgid "Host Based Access Control"
msgstr "Керування доступом на основі вузлів"
+msgid "Identity"
+msgstr "Профіль"
+
msgid "IPA Server"
msgstr "Сервер IPA"
@@ -7011,6 +7417,12 @@ msgstr "Записи довіри"
msgid "True"
msgstr "Так"
+msgid "First"
+msgstr "Перший"
+
+msgid "Last"
+msgstr "Останній"
+
msgid "Next"
msgstr "Далі"
@@ -7029,9 +7441,17 @@ msgstr "скасувати всі дії"
msgid "Text does not match field pattern"
msgstr "Текст не відповідає шаблону поля"
+msgid "Must be an UTC date/time value (e.g., \"2014-01-20 17:58:01Z\")"
+msgstr ""
+"Має бути значенням дати часу за Гринвічем (UTC) (наприклад, «2014-01-20 "
+"17:58:01Z»)"
+
msgid "Must be a decimal number"
msgstr "Має бути десятковим числом"
+msgid "Format error"
+msgstr "Помилка форматування"
+
msgid "Must be an integer"
msgstr "Має бути цілим числом"
@@ -7044,15 +7464,21 @@ msgstr "Некоректна адреса IPv4"
msgid "Not a valid IPv6 address"
msgstr "Некоректна адреса IPv6"
+#, python-brace-format
msgid "Maximum value is ${value}"
msgstr "Максимальним є значення ${value}"
+#, python-brace-format
msgid "Minimum value is ${value}"
msgstr "Мінімальним є значення ${value}"
msgid "Not a valid network address"
msgstr "Некоректна адреса у мережі"
+msgid "Parse error"
+msgstr "Помилка обробки"
+
+#, python-brace-format
msgid "'${port}' is not a valid port"
msgstr "«${port}» не є коректним визначенням порту"
@@ -7166,6 +7592,13 @@ msgstr "Змінити правила квитків Kerberos."
msgid "Display the current Kerberos ticket policy."
msgstr "Показати поточні правила квитків Kerberos."
+#, python-format
+msgid "Ticket policy for %s could not be read"
+msgstr "Не вдалося прочитати правила щодо квитків для %s"
+
+msgid "Default ticket policy could not be read"
+msgstr "Не вдалося прочитати типові правила щодо квитків"
+
msgid "Reset Kerberos ticket policy to the default values."
msgstr "Відновити типові правила квитків Kerberos."
@@ -7516,6 +7949,12 @@ msgstr "Ігнорувати додаток compat"
msgid "Allows migration despite the usage of compat plugin"
msgstr "Уможливлює перенесення, незважаючи на використання додатка compat"
+msgid "CA certificate"
+msgstr "Сертифікат CA"
+
+msgid "Load CA certificate of LDAP server from FILE"
+msgstr "Завантажити сертифікат CA сервера LDAP з вказаного файла"
+
msgid "Lists of objects migrated; categorized by type."
msgstr "Списки об’єктів, міграцію яких виконано; впорядкований за типами."
@@ -7738,6 +8177,159 @@ msgstr "Вилучити учасників з мережевої групи."
msgid ""
"\n"
+"OTP Tokens\n"
+msgstr ""
+"\n"
+"Маркери OTP\n"
+
+msgid ""
+"\n"
+"Manage OTP tokens.\n"
+msgstr ""
+"\n"
+"Керування маркерами OTP.\n"
+
+msgid ""
+"\n"
+"IPA supports the use of OTP tokens for multi-factor authentication. This\n"
+"code enables the management of OTP tokens.\n"
+msgstr ""
+"\n"
+"У IPA передбачено підтримку використання маркерів OTP для багатофакторного "
+"розпізнавання.\n"
+"За допомогою цього коду уможливлюється керування маркерами OTP.\n"
+
+msgid ""
+"\n"
+" Add a new token:\n"
+" ipa otptoken-add --type=totp --owner=jdoe --desc=\"My soft token\"\n"
+msgstr ""
+"\n"
+" Додати новий маркер:\n"
+" ipa otptoken-add --type=totp --owner=jdoe --desc=\"My soft token\"\n"
+
+msgid ""
+"\n"
+" Examine the token:\n"
+" ipa otptoken-show a93db710-a31a-4639-8647-f15b2c70b78a\n"
+msgstr ""
+"\n"
+" Перевірити маркер:\n"
+" ipa otptoken-show a93db710-a31a-4639-8647-f15b2c70b78a\n"
+
+msgid ""
+"\n"
+" Change the vendor:\n"
+" ipa otptoken-mod a93db710-a31a-4639-8647-f15b2c70b78a --vendor=\"Red Hat"
+"\"\n"
+msgstr ""
+"\n"
+" Змінити постачальника:\n"
+" ipa otptoken-mod a93db710-a31a-4639-8647-f15b2c70b78a --vendor=\"Red Hat"
+"\"\n"
+
+msgid ""
+"\n"
+" Delete a token:\n"
+" ipa otptoken-del a93db710-a31a-4639-8647-f15b2c70b78a\n"
+msgstr ""
+"\n"
+" Вилучити маркер:\n"
+" ipa otptoken-del a93db710-a31a-4639-8647-f15b2c70b78a\n"
+
+msgid "OTP token"
+msgstr "Маркер OTP"
+
+msgid "OTP tokens"
+msgstr "Маркери OTP"
+
+msgid "OTP Tokens"
+msgstr "Маркери OTP"
+
+msgid "OTP Token"
+msgstr "Маркер OTP"
+
+msgid "Unique ID"
+msgstr "Унікальний ід."
+
+msgid "Owner"
+msgstr "Власник"
+
+msgid "Manager"
+msgstr "Керівник"
+
+msgid "Disabled state"
+msgstr "Вимкнений стан"
+
+msgid "Validity start"
+msgstr "Початок чинності"
+
+msgid "Validity end"
+msgstr "Завершення чинності"
+
+msgid "Vendor"
+msgstr "Постачальник"
+
+msgid "Model"
+msgstr "Модель"
+
+msgid "Serial"
+msgstr "Серійний номер"
+
+msgid "Clock offset"
+msgstr "Зсув годинника"
+
+msgid "Clock interval"
+msgstr "Інтервал годинника"
+
+msgid "Counter"
+msgstr "Лічильник"
+
+msgid "Add a new OTP token."
+msgstr "Додати новий маркер OTP."
+
+#, python-format
+msgid "Added OTP token \"%(value)s\""
+msgstr "Додано маркер OTP «%(value)s»"
+
+msgid "Display QR code (requires wide terminal)"
+msgstr "Показати QR-код (потребує широкого термінала)"
+
+msgid "URI"
+msgstr "URI"
+
+msgid "Delete an OTP token."
+msgstr "Вилучити маркер OTP."
+
+#, python-format
+msgid "Deleted OTP token \"%(value)s\""
+msgstr "Вилучено маркер OTP «%(value)s»"
+
+msgid "Modify a OTP token."
+msgstr "Змінити маркер OTP."
+
+#, python-format
+msgid "Modified OTP token \"%(value)s\""
+msgstr "Змінено маркер OTP «%(value)s»"
+
+msgid "Search for OTP token."
+msgstr "Шукати маркер OTP."
+
+#, python-format
+msgid "%(count)d OTP token matched"
+msgid_plural "%(count)d OTP tokens matched"
+msgstr[0] "встановлено відповідність %(count)d маркера OTP"
+msgstr[1] "встановлено відповідність %(count)d маркери OTP"
+msgstr[2] "встановлено відповідність %(count)d маркерів OTP"
+
+msgid "Display information about an OTP token."
+msgstr "Показати інформацію щодо маркера OTP."
+
+msgid "Add users that can manage this token."
+msgstr "Додати записи користувачів, які можуть керувати цим ключем."
+
+msgid ""
+"\n"
"Set a user's password\n"
"\n"
"If someone other than a user changes that user's password (e.g., Helpdesk\n"
@@ -7787,117 +8379,196 @@ msgstr "Реєстраційні дані вказано з помилками"
msgid ""
"\n"
"Permissions\n"
+msgstr ""
+"\n"
+"Права доступу\n"
+
+msgid ""
"\n"
"A permission enables fine-grained delegation of rights. A permission is\n"
-"a human-readable form of a 389-ds Access Control Rule, or instruction "
-"(ACI).\n"
+"a human-readable wrapper around a 389-ds Access Control Rule,\n"
+"or instruction (ACI).\n"
"A permission grants the right to perform a specific task such as adding a\n"
"user, modifying a group, etc.\n"
+msgstr ""
+"\n"
+"Запис правил доступу уможливлює точне делегування прав. Запис прав доступу\n"
+"є зручною для читання обгорткою навколо правила керування доступом 389-ds\n"
+"або інструкції (ACI).\n"
+"Право доступу надає право виконувати специфічне завдання, зокрема додавання\n"
+"запису користувача, внесення зміни до групи тощо.\n"
+
+msgid ""
"\n"
"A permission may not contain other permissions.\n"
+msgstr ""
"\n"
-"* A permission grants access to read, write, add or delete.\n"
+"Запис прав доступу не може містити інших прав доступу.\n"
+
+msgid ""
+"\n"
+"* A permission grants access to read, write, add, delete, read, search,\n"
+" or compare.\n"
"* A privilege combines similar permissions (for example all the permissions\n"
" needed to add a user).\n"
"* A role grants a set of privileges to users, groups, hosts or hostgroups.\n"
+msgstr ""
+"\n"
+"* Права доступу надають можливість читати, записувати, вилучати, шукати або\n"
+" порівнювати.\n"
+"* Привілеї поєднують подібні права доступу (наприклад усі права доступу,\n"
+" потрібні для додавання запису користувача).\n"
+"* Роль надає набір привілеїв користувачам, групам, вузлам або групам "
+"вузлів.\n"
+
+msgid ""
"\n"
"A permission is made up of a number of different parts:\n"
"\n"
"1. The name of the permission.\n"
"2. The target of the permission.\n"
"3. The rights granted by the permission.\n"
+msgstr ""
+"\n"
+"Запис права доступу складається з декількох різних частин:\n"
+"\n"
+"1. Назви запису права доступу.\n"
+"2. Призначення права доступу.\n"
+"3. Права, які надаються записом.\n"
+
+msgid ""
"\n"
"Rights define what operations are allowed, and may be one or more\n"
"of the following:\n"
"1. write - write one or more attributes\n"
"2. read - read one or more attributes\n"
-"3. add - add a new entry to the tree\n"
-"4. delete - delete an existing entry\n"
-"5. all - all permissions are granted\n"
+"3. search - search on one or more attributes\n"
+"4. compare - compare one or more attributes\n"
+"5. add - add a new entry to the tree\n"
+"6. delete - delete an existing entry\n"
+"7. all - all permissions are granted\n"
+msgstr ""
"\n"
-"Read permission is granted for most attributes by default so the read\n"
-"permission is not expected to be used very often.\n"
+"Права визначають список дій, які можна виконувати. Запис прав може\n"
+"бути один або може бути декілька записів з такого набору:\n"
+"1. write - запис одного або декількох атрибутів\n"
+"2. read - читання одного або декількох атрибутів\n"
+"3. search - пошук одного або декількох атрибутів\n"
+"4. compare - порівняння одного або декількох атрибутів\n"
+"5. add - додавання нового запису до ієрархії\n"
+"6. delete - вилучення наявного запису\n"
+"7. all - надати усі права доступу\n"
+
+msgid ""
"\n"
"Note the distinction between attributes and entries. The permissions are\n"
"independent, so being able to add a user does not mean that the user will\n"
"be editable.\n"
+msgstr ""
"\n"
-"There are a number of allowed targets:\n"
-"1. type: a type of object (user, group, etc).\n"
-"2. memberof: a member of a group or hostgroup\n"
-"3. filter: an LDAP filter\n"
-"4. subtree: an LDAP filter specifying part of the LDAP DIT. This is a\n"
-" super-set of the \"type\" target.\n"
-"5. targetgroup: grant access to modify a specific group (such as granting\n"
-" the rights to manage group membership)\n"
+"Зауважте відмінність між атрибутами і записами. Права доступу є "
+"незалежними,\n"
+"отже можливість додавання запису користувача не означає, що цей запис "
+"згодом\n"
+"буде придатним до редагування.\n"
+
+msgid ""
"\n"
-"EXAMPLES:\n"
+"There are a number of allowed targets:\n"
+"1. subtree: a DN; the permission applies to the subtree under this DN\n"
+"2. target filter: an LDAP filter\n"
+"3. target: DN with possible wildcards, specifies entries permission applies "
+"to\n"
+msgstr ""
"\n"
-" Add a permission that grants the creation of users:\n"
-" ipa permission-add --type=user --permissions=add \"Add Users\"\n"
+"Передбачено декілька можливих призначень:\n"
+"1. subtree: DN; право доступу застосовується до піддерева DN\n"
+"2. target filter: фільтр LDAP\n"
+"3. target: DN з можливими символами-замінниками, що визначає записи, яких "
+"стосуються права доступу\n"
+
+msgid ""
"\n"
-" Add a permission that grants the ability to manage group membership:\n"
-" ipa permission-add --attrs=member --permissions=write --type=group "
-"\"Manage Group Members\"\n"
+"Additionally, there are the following convenience options.\n"
+"Setting one of these options will set the corresponding attribute(s).\n"
+"1. type: a type of object (user, group, etc); sets subtree and target "
+"filter.\n"
+"2. memberof: apply to members of a group; sets target filter\n"
+"3. targetgroup: grant access to modify a specific group (such as granting\n"
+" the rights to manage group membership); sets target.\n"
msgstr ""
"\n"
-"Права доступу\n"
+"Крім того, передбачено вказані нижче параметри.\n"
+"Встановлення одного з цих параметрів призводить до встановлення відповідних "
+"атрибутів.\n"
+"1. type: тип об’єкта (користувач, група тощо); встановлює фільтрування за "
+"піддеревом (subtree) та фільтрування за призначенням (target filter).\n"
+"2. memberof: застосовувати до учасників групи; встановлює фільтр за "
+"призначенням (target filter).\n"
+"3. targetgroup: надає доступ до внесення змін до певної групи (зокрема, "
+"доступ до\n"
+" надання можливості керування участю у групі); встановлює призначення "
+"(target).\n"
+
+msgid ""
"\n"
-"Права доступу надають змогу точно налаштувати уповноваження. Права доступу\n"
-"визначаються звичайним текстом у форматі правила керування доступом 389-ds\n"
-"або інструкції (ACI). Права доступу надають можливість виконувати певне\n"
-"завдання, зокрема додавання запису користувача, внесення змін до запису\n"
-"групи.\n"
+"Managed permissions\n"
+msgstr ""
"\n"
-"Права доступу можуть містити інші права доступу.\n"
+"Керовані права доступу\n"
+
+msgid ""
"\n"
-"* Право доступу надає доступ до читання, запису, додавання або вилучення.\n"
-"* Уповноваження поєднують у собі подібні права доступу (наприклад всі\n"
-" права доступу, потрібні для додавання запису користувача).\n"
-"* Роль надає користувачам, групам, вузлам або групам вузлів певний набір\n"
-" уповноважень.\n"
+"Permissions that come with IPA by default can be so-called \"managed\"\n"
+"permissions. These have a default set of attributes they apply to,\n"
+"but the administrator can add/remove individual attributes to/from the set.\n"
+msgstr ""
"\n"
-"Право доступу складається з декількох різних частин:\n"
+"Права доступу, які типово встановлюються разом з IPA, можуть бути\n"
+"так званими «керованим» правами доступу. Такі права доступу мають\n"
+"типовий набір атрибутів, до яких вони застосовуються. Втім, адміністратор\n"
+"може додавати або вилучати окремі атрибути набору.\n"
+
+msgid ""
"\n"
-"1. Назви права доступу.\n"
-"2. Призначення права доступу.\n"
-"3. Прав, які надаються.\n"
-"\n"
-"Права визначають набір дозволених дій і можуть складатися з одного або\n"
-"декількох таких записів:\n"
-"1. write — запис одного або декількох атрибутів\n"
-"2. read — читання одного або декількох атрибутів\n"
-"3. add — додавання нового запису до ієрархії\n"
-"4. delete — вилучення вже створеного запису\n"
-"5. all — надання всіх прав доступу\n"
-"\n"
-"Типово, право доступу до читання надається для більшості атрибутів, отже\n"
-"право доступу «read» не використовуватиметься часто.\n"
-"\n"
-"Зауваження щодо відмінностей між атрибутами та записами. Права доступу\n"
-"є незалежними, отже можливість додавання запису користувача не означає\n"
-"можливості вносити зміни до доданого запису.\n"
-"\n"
-"Передбачено декілька можливих цілей:\n"
-"1. type: тип об’єкта (user, group тощо).\n"
-"2. memberof: учасник групи користувачів або вузлів\n"
-"3. filter: фільтр LDAP\n"
-"4. subtree: фільтр LDAP, що визначає частину DIT LDAP DIT. Надмножина\n"
-" цілі «type».\n"
-"5. targetgroup: надати доступ до внесення змін до запису певної групи\n"
-" (зокрема до керування участю у групі)\n"
+"Deleting or renaming a managed permission, as well as changing its target,\n"
+"is not allowed.\n"
+msgstr ""
"\n"
-"ПРИКЛАДИ:\n"
+"Вилучення або перейменування керованих прав доступу, а також зміну "
+"призначення\n"
+"таких прав, заборонено.\n"
+
+msgid ""
+"\n"
+" Add a permission that grants the creation of users:\n"
+" ipa permission-add --type=user --permissions=add \"Add Users\"\n"
+msgstr ""
"\n"
-" Додавання права доступу до створення записів користувачів:\n"
+" Додати право доступу до створення записів користувачів:\n"
" ipa permission-add --type=user --permissions=add \"Add Users\"\n"
+
+msgid ""
"\n"
-" Додавання права доступу до можливості керування участю у групі:\n"
+" Add a permission that grants the ability to manage group membership:\n"
+" ipa permission-add --attrs=member --permissions=write --type=group "
+"\"Manage Group Members\"\n"
+msgstr ""
+"\n"
+" Додати право доступу, яке надає можливість керувати участю у групах:\n"
" ipa permission-add --attrs=member --permissions=write --type=group "
"\"Manage Group Members\"\n"
-msgid "Permission Type"
-msgstr "Тип прав доступу"
+msgid "must be enclosed in parentheses"
+msgstr "слід брати у дужки"
+
+#, python-format
+msgid "\"%s\" is not an object type"
+msgstr "«%s» не є об’єктним типом"
+
+#, python-format
+msgid "\"%s\" is not a valid permission type"
+msgstr "«%s» не є коректним типом прав доступу"
msgid "permission"
msgstr "права доступу"
@@ -7908,39 +8579,146 @@ msgstr "права доступу"
msgid "Permission name"
msgstr "Назва прав доступу"
-msgid "Permissions to grant (read, write, add, delete, all)"
-msgstr "Права доступу, які слід надати (read, write, add, delete, all)"
+msgid "Granted rights"
+msgstr "Надані права"
+
+msgid "Rights to grant (read, search, compare, write, add, delete, all)"
+msgstr ""
+"Права доступу, які слід надати (read, search, compare, write, add, delete, "
+"all)"
+
+msgid "Effective attributes"
+msgstr "Ефективні атрибути"
+
+msgid "All attributes to which the permission applies"
+msgstr "Усі атрибути, яких стосуються ці права доступу"
+
+msgid "Included attributes"
+msgstr "Атрибути включення"
+
+msgid "User-specified attributes to which the permission applies"
+msgstr "Вказані користувачем атрибути, до яких застосовується правило доступу"
+
+msgid "Excluded attributes"
+msgstr "Атрибути виключення"
msgid ""
-"Type of IPA object (user, group, host, hostgroup, service, netgroup, dns)"
+"User-specified attributes to which the permission explicitly does not apply"
msgstr ""
-"Тип об’єкта IPA (user (користувач), group (група), host (вузол), hostgroup "
-"(група вузлів), service (служба), netgroup (мережева група), dns)"
+"Вказані користувачем атрибути, до яких права доступу явним чином не "
+"застосовуватимуться"
-msgid "Member of group"
-msgstr "Учасник групи"
+msgid "Default attributes"
+msgstr "Типові атрибути"
+
+msgid "Attributes to which the permission applies by default"
+msgstr "Атрибути, до яких типово застосовується правило доступу"
-msgid "Target members of a group"
-msgstr "Цільові учасники групи"
+msgid "Bind rule type"
+msgstr "Тип правила прив’язування"
msgid "Subtree to apply permissions to"
msgstr "Піддерево, до якого буде застосовано права доступу"
-msgid "User group to apply permissions to"
-msgstr "Група користувачів, до якої буде застосовано права доступу"
+msgid "Extra target filter"
+msgstr "Додатковий фільтр призначення"
-msgid "Add a new permission."
-msgstr "Додати нові права доступу."
+msgid "Raw target filter"
+msgstr "Фільтр призначення без обробки"
+
+msgid "All target filters, including those implied by type and memberof"
+msgstr ""
+"Усі фільтри призначення, зокрема ті, які визначаються типом та членством"
+
+msgid "ACI target DN"
+msgstr "DN призначення ACI"
+
+msgid "Member of group"
+msgstr "Учасник групи"
+
+msgid "Target members of a group (sets memberOf targetfilter)"
+msgstr "Цільові учасники групи (встановлює фільтр призначення memberOf)"
+
+msgid "User group to apply permissions to (sets target)"
+msgstr ""
+"Група користувачів, до якої буде застосовано права доступу (встановлює "
+"target)"
+
+msgid "Type of IPA object (sets subtree and objectClass targetfilter)"
+msgstr "Тип об’єкта IPA (встановлює фільтри призначення subtree і objectClass)"
+
+#, python-format
+msgid "Deprecated; use %s"
+msgstr "Застаріло; користуйтеся %s"
+
+#, python-format
+msgid "Permission with unknown flag %s may not be modified or removed"
+msgstr "Не можна змінювати чи вилучати права доступу з невідомим прапорцем %s"
+
+msgid "A SYSTEM permission may not be modified or removed"
+msgstr "Права доступу SYSTEM не можна змінювати чи вилучати"
+
+#, python-format
+msgid "Entry %s not found"
+msgstr "Запису %s не знайдено"
+
+#, python-format
+msgid "The ACI for permission %(name)s was not found in %(dn)s "
+msgstr "ACI для прав доступу %(name)s у %(dn)s не знайдено "
+
+msgid ""
+"cannot specify full target filter and extra target filter simultaneously"
+msgstr ""
+"не можна одразу вказувати повне фільтрування за призначенням та фільтрування "
+"за додатковими параметрами призначення"
+
+#, python-format
+msgid "option was renamed; use %s"
+msgstr "назву параметра змінено; користуйтеся новою назвою — %s"
+
+#, python-format
+msgid "Cannot use %(old_name)s with %(new_name)s"
+msgstr "Не можна одночасно використовувати %(old_name)s і %(new_name)s"
+
+#, python-format
+msgid "%s: group not found"
+msgstr "%s: групи не знайдено"
+
+msgid "target and targetgroup are mutually exclusive"
+msgstr "не можна одночасно використовувати target і targetgroup"
+
+msgid "subtree and type are mutually exclusive"
+msgstr "не можна одночасно використовувати subtree і type"
+
+msgid "Bad search filter"
+msgstr "Помилковий фільтр пошуку"
+
+#, python-format
+msgid "Entry %s does not exist"
+msgstr "Запису %s не існує"
+
+msgid ""
+"there must be at least one target entry specifier (e.g. target, "
+"targetfilter, attrs)"
+msgstr ""
+"має бути вказано хоча б один специфікатор запису призначення (наприклад "
+"target, targetfilter, attrs)"
+
+msgid "Add a system permission without an ACI (internal command)"
+msgstr "Додати системні права доступу без ACI (внутрішня команда)"
#, python-format
msgid "Added permission \"%(value)s\""
msgstr "Додано права доступу «%(value)s»"
-msgid "Add a system permission without an ACI"
-msgstr "Додати системні права доступу без ACI"
+msgid "Permission flags"
+msgstr "Прапорці прав доступу"
+
+msgid "Add a new permission."
+msgstr "Додати нові права доступу."
-msgid "Permission type"
-msgstr "Тип прав доступу"
+msgid "attrs and included attributes are mutually exclusive"
+msgstr "не можна одразу вказувати attrs та атрибути включення"
msgid "Delete a permission."
msgstr "Вилучити права доступу."
@@ -7952,8 +8730,12 @@ msgstr "Вилучено права доступу «%(value)s»"
msgid "force delete of SYSTEM permissions"
msgstr "примусове вилучення прав доступу SYSTEM"
-msgid "A SYSTEM permission may not be removed"
-msgstr "Права доступу SYSTEM не можна вилучати"
+msgid "cannot delete managed permissions"
+msgstr "неможливо вилучити керовані права доступу"
+
+#, python-format
+msgid "ACI of permission %s was not found"
+msgstr "ACI права доступу %s не знайдено"
msgid "Modify a permission."
msgstr "Змінити права доступу."
@@ -7962,11 +8744,22 @@ msgstr "Змінити права доступу."
msgid "Modified permission \"%(value)s\""
msgstr "Змінено права доступу «%(value)s»"
-msgid "A SYSTEM permission may not be modified"
-msgstr "Права доступу SYSTEM не можна змінювати"
+msgid "cannot rename managed permissions"
+msgstr "неможливо перейменувати керовані права доступу"
-msgid "New name can not be empty"
-msgstr "Нова назва має бути непорожньою"
+msgid "not modifiable on managed permissions"
+msgstr "не можна змінювати для керованих прав доступу"
+
+msgid "only available on managed permissions"
+msgstr "доступне лише для керованих прав доступу"
+
+msgid "attrs and included/excluded attributes are mutually exclusive"
+msgstr "не можна одразу вказувати attrs та атрибути включення або виключення"
+
+msgid "cannot set bindtype for a permission that is assigned to a privilege"
+msgstr ""
+"не можна встановлювати типу прив’язки для прав доступу, які пов’язано з "
+"привілеєм"
msgid "Search for permissions."
msgstr "Знайти права доступу."
@@ -8032,8 +8825,7 @@ msgstr ""
" Перевірити луна-імпульсом сервер IPA і отримати докладні дані:\n"
" ipa -v ping\n"
" ipa: INFO: trying https://ipa.example.com/ipa/xml\n"
-" ipa: INFO: Forwarding 'ping' to server 'https://ipa.example.com/ipa/"
-"xml'\n"
+" ipa: INFO: Forwarding 'ping' to server 'https://ipa.example.com/ipa/xml'\n"
" -----------------------------------------------------\n"
" Сервер IPA версії 2.1.9. Версія API 2.20\n"
" -----------------------------------------------------\n"
@@ -8115,11 +8907,11 @@ msgid ""
"See role and permission for additional information.\n"
msgstr ""
"\n"
-"Уповноваження\n"
+"Привілей\n"
"\n"
-"Уповноваження поєднує права доступу у одне логічне завдання. Право доступу\n"
+"Привілей поєднує права доступу у одне логічне завдання. Право доступу\n"
"надає можливість виконувати лише одне завдання. У IPA є декілька дій,\n"
-"виконання яких потребує одразу декількох прав доступу. В уповноваженні такі\n"
+"виконання яких потребує одразу декількох прав доступу. У привілеї такі\n"
"права доступу поєднуються з метою виконання певної дії.\n"
"\n"
"Наприклад, додавання запису користувача потребує таких прав доступу:\n"
@@ -8128,75 +8920,83 @@ msgstr ""
" * право додавання користувача до типової групи користувачів IPA.\n"
"\n"
"Поєднання цих трьох низькорівневих завдань у високорівневе завдання у\n"
-"форматі уповноваження з назвою «Add User» полегшує керування ролями.\n"
+"форматі привілею з назвою «Add User» полегшує керування ролями.\n"
"\n"
-"Уповноваження не може містити інших уповноважень.\n"
+"Привілей не може містити інших привілеїв.\n"
"\n"
"Щоб дізнатися більше, ознайомтеся з довідною щодо ролей та прав доступу.\n"
msgid "privilege"
-msgstr "уповноваження"
+msgstr "привілей"
msgid "privileges"
-msgstr "уповноваження"
+msgstr "привілеї"
msgid "Privileges"
-msgstr "Уповноваження"
+msgstr "Привілеї"
msgid "Privilege"
-msgstr "Уповноваження"
+msgstr "Привілей"
msgid "Privilege name"
-msgstr "Назва уповноваження"
+msgstr "Назва привілею"
msgid "Privilege description"
-msgstr "Опис уповноваження"
+msgstr "Опис привілею"
msgid "Add a new privilege."
-msgstr "Додати нове уповноваження."
+msgstr "Додати новий привілей."
#, python-format
msgid "Added privilege \"%(value)s\""
-msgstr "Додано уповноваження «%(value)s»"
+msgstr "Додано привілей «%(value)s»"
msgid "Delete a privilege."
-msgstr "Вилучити уповноваження."
+msgstr "Вилучити привілей."
#, python-format
msgid "Deleted privilege \"%(value)s\""
-msgstr "Вилучено уповноваження «%(value)s»"
+msgstr "Вилучено привілей «%(value)s»"
msgid "Modify a privilege."
-msgstr "Змінити уповноваження."
+msgstr "Змінити привілей."
#, python-format
msgid "Modified privilege \"%(value)s\""
-msgstr "Змінено уповноваження «%(value)s»"
+msgstr "Змінено привілей «%(value)s»"
msgid "Search for privileges."
-msgstr "Знайти уповноваження."
+msgstr "Знайти привілеї."
#, python-format
msgid "%(count)d privilege matched"
msgid_plural "%(count)d privileges matched"
-msgstr[0] "встановлено відповідність %(count)d уповноваження"
-msgstr[1] "встановлено відповідність %(count)d уповноваження"
-msgstr[2] "встановлено відповідність %(count)d уповноважень"
+msgstr[0] "встановлено відповідність %(count)d привілею"
+msgstr[1] "встановлено відповідність %(count)d привілеїв"
+msgstr[2] "встановлено відповідність %(count)d привілеїв"
msgid "Display information about a privilege."
-msgstr "Показати дані щодо уповноваження."
+msgstr "Показати дані щодо привілею."
msgid "Add members to a privilege."
-msgstr "Додати учасників до запису уповноваження."
+msgstr "Додати учасників до запису привілею."
msgid "Add permissions to a privilege."
-msgstr "Додати права доступу до уповноваження."
+msgstr "Додати права доступу до привілею."
msgid "Number of permissions added"
msgstr "Кількість доданих прав доступу"
+#, python-format
+msgid ""
+"cannot add permission \"%(perm)s\" with bindtype \"%(bindtype)s\" to a "
+"privilege"
+msgstr ""
+"неможливо додати права доступу «%(perm)s» з типом прив’язки «%(bindtype)s» "
+"до привілею"
+
msgid "Remove permissions from a privilege."
-msgstr "Вилучити права доступу з уповноваження."
+msgstr "Вилучити права доступу з привілею."
msgid "Number of permissions removed"
msgstr "Кількість вилучених записів прав доступу"
@@ -8392,6 +9192,164 @@ msgstr "Знайти групу правил для паролів."
msgid ""
"\n"
+"RADIUS Proxy Servers\n"
+msgstr ""
+"\n"
+"Проксі-сервери RADIUS\n"
+
+msgid ""
+"\n"
+"Manage RADIUS Proxy Servers.\n"
+msgstr ""
+"\n"
+"Керування проксі-серверами RADIUS.\n"
+
+msgid ""
+"\n"
+"IPA supports the use of an external RADIUS proxy server for krb5 OTP\n"
+"authentications. This permits a great deal of flexibility when\n"
+"integrating with third-party authentication services.\n"
+msgstr ""
+"\n"
+"У IPA передбачено підтримку зовнішнього проксі-сервера RADIUS для\n"
+"виконання розпізнавання OTP krb5. Це надає системі значної гнучкості\n"
+"з метою інтеграції зі сторонніми службами розпізнавання.\n"
+
+msgid ""
+"\n"
+" Add a new server:\n"
+" ipa radiusproxy-add MyRADIUS --server=radius.example.com:1812\n"
+msgstr ""
+"\n"
+" Додати новий сервер:\n"
+" ipa radiusproxy-add MyRADIUS --server=radius.example.com:1812\n"
+
+msgid ""
+"\n"
+" Find all servers whose entries include the string \"example.com\":\n"
+" ipa radiusproxy-find example.com\n"
+msgstr ""
+"\n"
+" Знайти усі сервери, чиї запис містять рядок «example.com»:\n"
+" ipa radiusproxy-find example.com\n"
+
+msgid ""
+"\n"
+" Examine the configuration:\n"
+" ipa radiusproxy-show MyRADIUS\n"
+msgstr ""
+"\n"
+" Перевірити налаштування:\n"
+" ipa radiusproxy-show MyRADIUS\n"
+
+msgid ""
+"\n"
+" Change the secret:\n"
+" ipa radiusproxy-mod MyRADIUS --secret\n"
+msgstr ""
+"\n"
+" Змінити реєстраційні дані:\n"
+" ipa radiusproxy-mod MyRADIUS --secret\n"
+
+msgid ""
+"\n"
+" Delete a configuration:\n"
+" ipa radiusproxy-del MyRADIUS\n"
+msgstr ""
+"\n"
+" Вилучити налаштування:\n"
+" ipa radiusproxy-del MyRADIUS\n"
+
+msgid "invalid attribute name"
+msgstr "некоректна назва атрибута"
+
+msgid "invalid port number"
+msgstr "некоректний номер порту"
+
+msgid "RADIUS proxy server"
+msgstr "Проксі-сервер RADIUS"
+
+msgid "RADIUS proxy servers"
+msgstr "Проксі-сервери RADIUS"
+
+msgid "RADIUS Servers"
+msgstr "Сервери RADIUS"
+
+msgid "RADIUS Server"
+msgstr "Сервер RADIUS"
+
+msgid "RADIUS proxy server name"
+msgstr "Назва проксі-сервера RADIUS"
+
+msgid "A description of this RADIUS proxy server"
+msgstr "Опис цього проксі-сервера RADIUS"
+
+msgid "Server"
+msgstr "Сервер"
+
+msgid "The hostname or IP (with or without port)"
+msgstr "Назва вузла або IP-адреса (з портом або без порту)"
+
+msgid "Secret"
+msgstr "Ключ"
+
+msgid "The secret used to encrypt data"
+msgstr "Ключ, який використовується для шифрування даних"
+
+msgid "Timeout"
+msgstr "Час очікування"
+
+msgid "The total timeout across all retries (in seconds)"
+msgstr "Загальний час очікування за усіма спробами (у секундах)"
+
+msgid "Retries"
+msgstr "Кількість спроб"
+
+msgid "The number of times to retry authentication"
+msgstr "Кількість спроб пройти розпізнавання"
+
+msgid "User attribute"
+msgstr "Атрибут користувача"
+
+msgid "The username attribute on the user object"
+msgstr "Атрибут імені користувача об’єкта користувача"
+
+msgid "Add a new RADIUS proxy server."
+msgstr "Додати новий проксі-сервер RADIUS."
+
+#, python-format
+msgid "Added RADIUS proxy server \"%(value)s\""
+msgstr "Додано проксі-сервер RADIUS «%(value)s»"
+
+msgid "Delete a RADIUS proxy server."
+msgstr "Вилучити проксі-сервер RADIUS."
+
+#, python-format
+msgid "Deleted RADIUS proxy server \"%(value)s\""
+msgstr "Вилучити проксі-сервер RADIUS «%(value)s»"
+
+msgid "Modify a RADIUS proxy server."
+msgstr "Змінити запис проксі-сервера RADIUS."
+
+#, python-format
+msgid "Modified RADIUS proxy server \"%(value)s\""
+msgstr "Змінено запис проксі-сервера RADIUS «%(value)s»"
+
+msgid "Search for RADIUS proxy servers."
+msgstr "Шукати проксі-сервери RADIUS."
+
+#, python-format
+msgid "%(count)d RADIUS proxy server matched"
+msgid_plural "%(count)d RADIUS proxy servers matched"
+msgstr[0] "Встановлено відповідність %(count)d проксі-сервера RADIUS"
+msgstr[1] "Встановлено відповідність %(count)d проксі-серверів RADIUS"
+msgstr[2] "Встановлено відповідність %(count)d проксі-серверів RADIUS"
+
+msgid "Display information about a RADIUS proxy server."
+msgstr "Показати дані щодо проксі-сервера RADIUS."
+
+msgid ""
+"\n"
"Realm domains\n"
"\n"
"Manage the list of domains associated with IPA realm.\n"
@@ -8510,7 +9468,7 @@ msgstr ""
"Роль використовується для уточнення налаштування прав доступу. Право "
"доступу\n"
"надає можливість виконувати деякі низькорівневі завдання (додавання запису\n"
-"користувача, внесення змін до групи тощо). Уповноваження поєднують одне або "
+"користувача, внесення змін до групи тощо). Привілей поєднують одне або "
"декілька\n"
"прав доступу у високорівневу абстракцію, наприклад «адміністратор "
"користувачів»\n"
@@ -8518,7 +9476,7 @@ msgstr ""
"записів\n"
"користувачів.\n"
"\n"
-"Уповноваження пов’язуються з ролями.\n"
+"Привілеї пов’язуються з ролями.\n"
"\n"
"Учасниками ролі можуть бути користувачі, групи, вузли та групи вузлів.\n"
"\n"
@@ -8529,7 +9487,7 @@ msgstr ""
" Додавання нової ролі:\n"
" ipa role-add --desc=\"Junior-level admin\" junioradmin\n"
"\n"
-" Додавання уповноважень до цієї ролі:\n"
+" Додавання привілеїв до цієї ролі:\n"
" ipa role-add-privilege --privileges=addusers junioradmin\n"
" ipa role-add-privilege --privileges=change_password junioradmin\n"
" ipa role-add-privilege --privileges=add_user_to_default_group "
@@ -8604,16 +9562,16 @@ msgid "Remove members from a role."
msgstr "Вилучити учасників з запису ролі."
msgid "Add privileges to a role."
-msgstr "Додати уповноваження до запису ролі."
+msgstr "Додати привілеї до запису ролі."
msgid "Number of privileges added"
-msgstr "Кількість доданих уповноважень"
+msgstr "Кількість доданих привілеїв"
msgid "Remove privileges from a role."
-msgstr "Вилучити уповноваження з запису ролі."
+msgstr "Вилучити привілеї з запису ролі."
msgid "Number of privileges removed"
-msgstr "Кількість вилучених уповноважень"
+msgstr "Кількість вилучених привілеїв"
msgid ""
"\n"
@@ -9351,11 +10309,25 @@ msgstr "Вилучити учасників з групи команд sudo."
msgid ""
"\n"
"Sudo Rules\n"
+msgstr ""
+"\n"
+"Правила sudo\n"
+
+msgid ""
"\n"
"Sudo (su \"do\") allows a system administrator to delegate authority to\n"
"give certain users (or groups of users) the ability to run some (or all)\n"
"commands as root or another user while providing an audit trail of the\n"
"commands and their arguments.\n"
+msgstr ""
+"\n"
+"Sudo (su \"do\") надає системному адміністратору змогу делегувати\n"
+"повноваження певним користувачам (або групам користувачів) на виконання\n"
+"деяких (або усіх) команд від імені адміністратора (root) або іншого\n"
+"користувача, зберігаючи водночас журнал виконання команд та\n"
+"аргументів.\n"
+
+msgid ""
"\n"
"FreeIPA provides a means to configure the various aspects of Sudo:\n"
" Users: The user(s)/group(s) allowed to invoke Sudo.\n"
@@ -9367,57 +10339,112 @@ msgid ""
"invoked with.\n"
" RunAsGroup: The group(s) whose gid rights Sudo will be invoked with.\n"
" Options: The various Sudoers Options that can modify Sudo's behavior.\n"
+msgstr ""
+"\n"
+"У FreeIPA передбачено декілька параметрів налаштовування роботи sudo:\n"
+" Users: користувачі або групи, які можуть викликати sudo.\n"
+" Hosts: вузли або групи вузлів, користувачі якого можуть викликати sudo.\n"
+" Allow Command: специфічні команди, які можна виконувати за допомогою "
+"sudo.\n"
+" Deny Command: специфічні команди, які не можна виконувати за допомогою "
+"sudo.\n"
+" RunAsUser: користувачі або групи, від імені яких sudo виконуватиме "
+"команди.\n"
+" RunAsGroup: групи, ідентифікатори яких буде використано sudo для "
+"виконання команд.\n"
+" Options: різноманітні параметри sudoers, які можуть змінити поведінку "
+"sudo.\n"
+
+msgid ""
"\n"
"An order can be added to a sudorule to control the order in which they\n"
"are evaluated (if the client supports it). This order is an integer and\n"
"must be unique.\n"
+msgstr ""
+"\n"
+"До правила sudo можна додати порядок, який керуватиме порядком\n"
+"обробки записів (якщо такий порядок передбачено на клієнтському боці).\n"
+"Порядок визначається числовим індексом, який не повинен повторюватися.\n"
+
+msgid ""
"\n"
"FreeIPA provides a designated binddn to use with Sudo located at:\n"
"uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n"
+msgstr ""
+"\n"
+"У FreeIPA передбачено визначений binddn для використання з sudo, який "
+"розташовано у\n"
+"uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n"
+
+msgid ""
"\n"
"To enable the binddn run the following command to set the password:\n"
"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -"
"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example,"
"dc=com\n"
+msgstr ""
"\n"
-"For more information, see the FreeIPA Documentation to Sudo.\n"
+"Щоб увімкнути binddn, віддайте таку команду для встановлення пароля:\n"
+"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -"
+"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example,"
+"dc=com\n"
+
+msgid ""
+"\n"
+" Create a new rule:\n"
+" ipa sudorule-add readfiles\n"
msgstr ""
"\n"
-"Правила sudo\n"
+" Створити правило:\n"
+" ipa sudorule-add readfiles\n"
+
+msgid ""
"\n"
-"Sudo (su \"do\") надає змогу адміністраторові системи уповноважити\n"
-"певних користувачів (або групи користувачів) на виконання певних (або\n"
-"всіх) команд від імені адміністратора або іншого користувача зі\n"
-"збереженням можливості ознайомлення з журналом команд і аргументів.\n"
+" Add sudo command object and add it as allowed command in the rule:\n"
+" ipa sudocmd-add /usr/bin/less\n"
+" ipa sudorule-add-allow-command readfiles --sudocmds /usr/bin/less\n"
+msgstr ""
"\n"
-"У FreeIPA передбачено можливість налаштування різноманітних аспектів\n"
-"роботи sudo:\n"
-" Користувачі: користувачі і групи, яким можна використовувати sudo.\n"
-" Вузли: вузли і групи вузлів, користувачам яких можна використовувати "
-"sudo.\n"
-" Дозволена команда: команда, яку можна виконувати за допомогою sudo.\n"
-" Заборонена команда: команда, яку не можна виконувати за допомогою sudo.\n"
-" Користувач запуску: користувач або група користувачів, від імені яких "
-"виконується sudo.\n"
-" Група запуску: група, з ідентифікатором якої буде запущено sudo.\n"
-" Параметри: різноманітні параметри sudoers, які можуть змінювати поведінку "
-"sudo.\n"
+" Додати об’єкт команди sudo і записати його як дозволену команду до "
+"правила:\n"
+" ipa sudocmd-add /usr/bin/less\n"
+" ipa sudorule-add-allow-command readfiles --sudocmds /usr/bin/less\n"
+
+msgid ""
"\n"
-"До правила sudo може бути додано порядковий номер з метою керування "
-"порядком, у якому\n"
-"застосовуються правила (якщо клієнтом передбачено можливість впорядковування "
-"правил).\n"
-"Порядковий номер є цілим числом, унікальним для кожного з правил правила.\n"
+" Add a host to the rule:\n"
+" ipa sudorule-add-host readfiles --hosts server.example.com\n"
+msgstr ""
"\n"
-"FreeIPA надає підписаний binddn для використання з sudo з адресою:\n"
-"uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n"
+" Додати запис вузла до правила:\n"
+" ipa sudorule-add-host readfiles --hosts server.example.com\n"
+
+msgid ""
"\n"
-"Щоб увімкнути binddn, виконайте таку команду для встановлення пароля:\n"
-"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -"
-"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example,"
-"dc=com\n"
+" Add a user to the rule:\n"
+" ipa sudorule-add-user readfiles --users jsmith\n"
+msgstr ""
+"\n"
+" Додати запис користувача до правила:\n"
+" ipa sudorule-add-user readfiles --users jsmith\n"
+
+msgid ""
+"\n"
+" Add a special Sudo rule for default Sudo server configuration:\n"
+" ipa sudorule-add defaults\n"
+msgstr ""
+"\n"
+" Додати особливе правило sudo для типового налаштовування сервера sudo:\n"
+" ipa sudorule-add defaults\n"
+
+msgid ""
+"\n"
+" Set a default Sudo option:\n"
+" ipa sudorule-add-option defaults --sudooption '!authenticate'\n"
+msgstr ""
"\n"
-"Докладніші відомості можна знайти у документації до FreeIPA з sudo.\n"
+" Встановити типовий варіант дій для sudo:\n"
+" ipa sudorule-add-option defaults --sudooption '!authenticate'\n"
msgid "Commands for controlling sudo configuration"
msgstr "Команди керування налаштуванням sudo"
@@ -9425,6 +10452,9 @@ msgstr "Команди керування налаштуванням sudo"
msgid "this option has been deprecated."
msgstr "цей параметр вважається застарілим."
+msgid "host masks of allowed hosts"
+msgstr "маски для дозволених вузлів"
+
msgid "sudo rule"
msgstr "правило sudo"
@@ -9462,6 +10492,17 @@ msgstr "Порядок sudo"
msgid "integer to order the Sudo rules"
msgstr "ціле число для впорядковування правил sudo"
+msgid "External User"
+msgstr "Зовнішній користувач"
+
+msgid "External User the rule applies to (sudorule-find only)"
+msgstr ""
+"Зовнішній користувач, до якого застосовуватиметься правило (лише sudorule-"
+"find)"
+
+msgid "Host Masks"
+msgstr "Маски вузлів"
+
msgid "Sudo Allow Commands"
msgstr "Дозволені команди sudo"
@@ -9486,14 +10527,6 @@ msgstr "Групи користувачів запуску від імені"
msgid "Run as any user within a specified group"
msgstr "Запускати від імені будь-якого користувача вказаної групи"
-msgid "External User"
-msgstr "Зовнішній користувач"
-
-msgid "External User the rule applies to (sudorule-find only)"
-msgstr ""
-"Зовнішній користувач, до якого застосовуватиметься правило (лише sudorule-"
-"find)"
-
msgid "RunAs External User"
msgstr "Зовнішній користувач для RunAs"
@@ -9502,6 +10535,18 @@ msgstr ""
"Зовнішній користувач, від імені якого можна віддавати команди (лише sudorule-"
"find)"
+msgid "External Groups of RunAs Users"
+msgstr "Зовнішні групи користувачів для запуску від імені"
+
+msgid "External Groups of users that the command can run as"
+msgstr "Зовнішні групи користувачів, від імені яких можна виконувати команду"
+
+msgid "RunAs Groups"
+msgstr "Групи запуску від імені"
+
+msgid "Run with the gid of a specified POSIX group"
+msgstr "Запускати з ідентифікатором вказаної групи POSIX"
+
msgid "RunAs External Group"
msgstr "Зовнішня група для RunAs"
@@ -9512,12 +10557,6 @@ msgstr ""
msgid "Sudo Option"
msgstr "Пункт sudo"
-msgid "RunAs Groups"
-msgstr "Групи запуску від імені"
-
-msgid "Run with the gid of a specified POSIX group"
-msgstr "Запускати з ідентифікатором вказаної групи POSIX"
-
#, python-format
msgid "order must be a unique value (%(order)d already used by %(rule)s)"
msgstr ""
@@ -9545,22 +10584,36 @@ msgstr "Змінити правило sudo."
msgid "Modified Sudo Rule \"%(value)s\""
msgstr "Змінено правило sudo «%(value)s»"
+#, python-format
msgid ""
-"command category cannot be set to 'all' while there are allow or deny "
-"commands"
+"%(type)s category cannot be set to 'all' while there are allowed %(objects)s"
msgstr ""
-"не можна встановлювати для категорії команд значення «all», доки є записи "
-"дозволу або заборони команд"
+"Значенням категорії %(type)s не можна встановлювати «all», якщо існують "
+"дозволені %(objects)s"
-msgid "user runAs category cannot be set to 'all' while there are users"
-msgstr ""
-"не можна встановлювати для категорії запуску від імені користувачів значення "
-"«all», доки є записи для окремих користувачів"
+msgid "user"
+msgstr "користувач"
-msgid "group runAs category cannot be set to 'all' while there are groups"
-msgstr ""
-"не можна встановлювати для категорії запуску від імені груп значення «all», "
-"доки є записи для окремих груп"
+msgid "users"
+msgstr "користувачі"
+
+msgid "command"
+msgstr "команда"
+
+msgid "commands"
+msgstr "команди"
+
+msgid "runAs user"
+msgstr "користувач, від імені якого виконуватиметься"
+
+msgid "runAs users"
+msgstr "користувачі, від імені яких виконуватиметься"
+
+msgid "group runAs"
+msgstr "група, від імені якої виконуватиметься"
+
+msgid "runAs groups"
+msgstr "групи, від імені яких виконуватиметься"
msgid "Search for Sudo Rule."
msgstr "Знайти правило sudo."
@@ -9957,6 +11010,7 @@ msgid "Size of the ID range reserved for the trusted domain"
msgstr ""
"Розмір діапазону ідентифікаторів, зарезервованого для довіреного домену"
+#, python-brace-format
msgid "Type of trusted domain ID range, one of {vals}"
msgstr ""
"Тип діапазону ідентифікаторів довіреного домену, одне з таких значень: {vals}"
@@ -9965,6 +11019,10 @@ msgstr ""
msgid "Added Active Directory trust for realm \"%(value)s\""
msgstr "Додано запис довіри Active Directory для області «%(value)s»"
+#, python-format
+msgid "Re-established trust to domain \"%(value)s\""
+msgstr "Відновлено довіру до домену «%(value)s»"
+
msgid "AD Trust setup"
msgstr "Налаштування довіри AD"
@@ -9987,6 +11045,16 @@ msgstr "тип довіри"
msgid "only \"ad\" is supported"
msgstr "передбачено підтримку лише «ad»"
+msgid "Realm-domain mismatch"
+msgstr "Невідповідність між областю і доменом"
+
+msgid ""
+"To establish trust with Active Directory, the domain name and the realm name "
+"of the IPA server must match"
+msgstr ""
+"Для встановлення довіри з Active Directory назва домену і назва області "
+"сервера IPA мають збігатися"
+
msgid "Trusted domain and administrator account use different realms"
msgstr ""
"Довіреним доменом і обліковим записом адміністратора використовуються різні "
@@ -10040,10 +11108,6 @@ msgstr ""
"визначайте тип у примусовому порядку за допомогою параметра --range-type."
#, python-format
-msgid "Re-established trust to domain \"%(value)s\""
-msgstr "Відновлено довіру до домену «%(value)s»"
-
-#, python-format
msgid "Unable to resolve domain controller for '%s' domain. "
msgstr "Не вдалося визначити контролер домену для домену «%s». "
@@ -10167,6 +11231,104 @@ msgid "Determine whether ipa-adtrust-install has been run on this system"
msgstr "Визначити, чи було запущено ipa-adtrust-install для цієї системи"
msgid ""
+"Determine whether Schema Compatibility plugin is configured to serve trusted "
+"domain users and groups"
+msgstr ""
+"Визначити, чи налаштовано додаток сумісності схем (Schema Compatibility) на "
+"обслуговування користувачів і груп довіреного домену"
+
+msgid "Determine whether ipa-adtrust-install has been run with sidgen task"
+msgstr "Визначити, чи було запущено ipa-adtrust-install з завданням sidgen"
+
+msgid "sidgen_was_run"
+msgstr "sidgen_was_run"
+
+msgid ""
+"This command relies on the existence of the \"editors\" group, but this "
+"group was not found."
+msgstr ""
+"Для виконання цієї команди має існувати група «editors», але групи з такою "
+"назвою не знайдено."
+
+msgid "trust domain"
+msgstr "довірений домен"
+
+msgid "trust domains"
+msgstr "довірені домени"
+
+msgid "Trusted domains"
+msgstr "Довірені домени"
+
+msgid "Trusted domain"
+msgstr "Довірений домен"
+
+msgid "Domain name"
+msgstr "Назва домену"
+
+msgid "Trusted domain partner"
+msgstr "Партнер довіреного домену"
+
+msgid "Search domains of the trust"
+msgstr "Шукати довірені домени"
+
+msgid "Domain enabled"
+msgstr "Домен увімкнено"
+
+msgid "Modify trustdomain of the trust"
+msgstr "Змінити значення довіреного домену (trustdomain) правила довіри"
+
+msgid "Allow access from the trusted domain"
+msgstr "Дозволити доступ з довіреного домену"
+
+msgid "Remove infromation about the domain associated with the trust."
+msgstr "Вилучити дані щодо домену, пов’язаного з цим правилом довіри."
+
+#, python-format
+msgid "Removed information about the trusted domain \"%(value)s\""
+msgstr "Дані щодо довіреного домену «%(value)s» вилучено"
+
+msgid ""
+"cannot delete root domain of the trust, use trust-del to delete the trust "
+"itself"
+msgstr ""
+"вилучення кореневого домену правила довіри неможливе, скористайтеся trust-"
+"del для вилучення самого правила довіри"
+
+msgid "Refresh list of the domains associated with the trust"
+msgstr "Освіжити список доменів, пов’язаних з правилом довіри"
+
+msgid "List of trust domains successfully refreshed"
+msgstr "Список довірених доменів успішно оновлено"
+
+msgid "No new trust domains were found"
+msgstr "Нових довірених доменів не знайдено"
+
+msgid "Allow use of IPA resources by the domain of the trust"
+msgstr "Дозволити використання ресурсів IPA доменом правила довіри"
+
+#, python-format
+msgid "Enabled trust domain \"%(value)s\""
+msgstr "Увімкнено домен довіри «%(value)s»"
+
+msgid "Root domain of the trust is always enabled for the existing trust"
+msgstr ""
+"Кореневий домен правила довіри для наявного правила довіри завжди увімкнено"
+
+msgid "Disable use of IPA resources by the domain of the trust"
+msgstr "Вимкнути використання ресурсів IPA доменом правила довіри"
+
+#, python-format
+msgid "Disabled trust domain \"%(value)s\""
+msgstr "Домен довіри «%(value)s» вимкнено"
+
+msgid ""
+"cannot disable root domain of the trust, use trust-del to delete the trust "
+"itself"
+msgstr ""
+"вимикання кореневого домену правила довіри неможливе, скористайтеся trust-"
+"del для вилучення самого правила довіри"
+
+msgid ""
"\n"
"Users\n"
"\n"
@@ -10257,9 +11419,6 @@ msgstr ""
msgid "Kerberos keys available"
msgstr "Доступні ключі Kerberos"
-msgid "Server"
-msgstr "Сервер"
-
msgid "Failed logins"
msgstr "Кількість невдалих спроб увійти"
@@ -10275,12 +11434,6 @@ msgstr "Поточний час"
msgid "must be TRUE or FALSE"
msgstr "має дорівнювати TRUE або FALSE"
-msgid "user"
-msgstr "користувач"
-
-msgid "users"
-msgstr "користувачі"
-
msgid "User login"
msgstr "Користувач"
@@ -10311,6 +11464,9 @@ msgstr "Оболонка входу"
msgid "Kerberos principal"
msgstr "Реєстраційний запис Kerberos"
+msgid "Kerberos principal expiration"
+msgstr "Завершення строку дії реєстраційного запису Kerberos"
+
msgid "Email address"
msgstr "Адреса ел. пошти"
@@ -10361,15 +11517,42 @@ msgstr "Підрозділ"
msgid "Job Title"
msgstr "Посада"
-msgid "Manager"
-msgstr "Керівник"
-
msgid "Car License"
msgstr "Водійська ліцензія"
msgid "Account disabled"
msgstr "Обліковий запис вимкнено"
+msgid "User authentication types"
+msgstr "Типи розпізнавання користувачів"
+
+msgid "Types of supported user authentication"
+msgstr "Типи підтримуваного розпізнавання користувачів"
+
+msgid ""
+"User category (semantics placed on this attribute are for local "
+"interpretation)"
+msgstr ""
+"Категорія вузлів (семантику цього атрибуту призначено для локальної обробки)"
+
+msgid "RADIUS proxy configuration"
+msgstr "Налаштування проксі RADIUS"
+
+msgid "RADIUS proxy username"
+msgstr "Ім’я користувача проксі-сервера RADIUS"
+
+msgid "Department Number"
+msgstr "Номер відділу"
+
+msgid "Employee Number"
+msgstr "Номер працівника"
+
+msgid "Employee Type"
+msgstr "Тип працівника"
+
+msgid "Preferred Language"
+msgstr "Бажана мова"
+
#, python-format
msgid "invalid e-mail format: %(email)s"
msgstr "некоректний формат адреси електронної пошти: %(email)s"
@@ -10564,32 +11747,16 @@ msgstr "Порожня назва файла"
msgid "Permission denied: %(file)s"
msgstr "Доступ заборонено: %(file)s"
-msgid "empty DNS label"
-msgstr "порожня мітка DNS"
-
msgid "DNS label cannot be longer that 63 characters"
msgstr "Довжина мітки DNS не повинна перевищувати 63 символи"
#, python-format
msgid ""
-"only letters, numbers,%(underscore)s and - are allowed. DNS label may not "
-"start or end with -"
-msgstr ""
-"можна використовувати лише літери, цифри, %(underscore)s і символ «-». "
-"Символ «-» не повинен бути першим або останнім символом мітки DNS."
-
-msgid ""
-"mail account may only include letters, numbers, -, _ and a dot. There may "
-"not be consecutive -, _ and . characters. Its parts may not start or end "
-"with - or _"
+"only letters, numbers, %(chars)s are allowed. DNS label may not start or end "
+"with %(chars2)s"
msgstr ""
-"назва облікового запису електронної пошти може складатися лише з літер, "
-"цифр, символів «-», «_» і крапок. Не можна використовувати у назві "
-"послідовності з символів «-», «_» та «.». Його частини не повинні починатися "
-"або закінчуватися на «-» або «_»."
-
-msgid "cannot be longer that 255 characters"
-msgstr "не може бути довшим за 255 символів"
+"можна використовувати лише літери, цифри, %(chars)s. Символ %(chars2)s не "
+"повинен бути першим або останнім символом мітки DNS."
msgid "too many '@' characters"
msgstr "занадто багато символів «@»"
@@ -10600,6 +11767,9 @@ msgstr "не вказано домену адреси"
msgid "missing mail account"
msgstr "не вказано поштового облікового запису"
+msgid "cannot be longer that 255 characters"
+msgstr "не може бути довшим за 255 символів"
+
msgid "hostname contains empty label (consecutive dots)"
msgstr "назва вузла містить лише порожню мітку (послідовні крапки)"
@@ -10612,6 +11782,9 @@ msgstr "некоректний відкритий ключ SSH"
msgid "options are not allowed"
msgstr "не можна використовувати параметри"
+msgid "invalid hostmask"
+msgstr "некоректна маска вузлів"
+
msgid "improperly formatted DER-encoded certificate"
msgstr "неналежне форматування сертифіката у кодуванні DER"
@@ -10661,6 +11834,14 @@ msgstr "Контролер домену AD"
msgid "unsupported functional level"
msgstr "непідтримуваний функціональний рівень"
+msgid ""
+"AD domain controller complains about communication sequence. It may mean "
+"unsynchronized time on both sides, for example"
+msgstr ""
+"Домен AD скаржиться на послідовність команд встановлення зв’язку. Це, "
+"наприклад, може означати розсинхронізацію часу між комп’ютерами, які "
+"обмінюються даними."
+
msgid "Cannot find specified domain or server name"
msgstr "Не вдалося знайти домену або сервера з вказаною назвою"
@@ -10772,7 +11953,12 @@ msgid ""
"Insufficient 'write' privilege to the 'krbLastPwdChange' attribute of entry "
"'%s'."
msgstr ""
-"Недостатні права доступу «write» до атрибута «krbLastPwdChange» запису «%s»."
+"Недостатні привілеї «write» до атрибута «krbLastPwdChange» запису «%s»."
+
+msgid "Could not read UPG Definition originfilter. Check your permissions."
+msgstr ""
+"Не вдалося прочитати фільтр походження (originfilter) UPG Definition. "
+"Переконайтеся, що у вас є відповідні права доступу."
msgid "Request must be a dict"
msgstr "Запит має належати до типу словника (dict)"
@@ -10828,14 +12014,6 @@ msgid "Out of memory \n"
msgstr "Не вистачає пам'яті \n"
#, c-format
-msgid "Out of Memory!\n"
-msgstr "Не вистачає пам'яті!\n"
-
-#, c-format
-msgid "Failed to create control!\n"
-msgstr "Не вдалося створити керування!\n"
-
-#, c-format
msgid "Unable to initialize ldap library!\n"
msgstr "Не вдалося ініціалізувати бібліотеку ldap!\n"
@@ -10844,10 +12022,6 @@ msgid "Unable to set LDAP_OPT_X_SASL_NOCANON\n"
msgstr "Не вдалося встановити LDAP_OPT_X_SASL_NOCANON\n"
#, c-format
-msgid "Unable to set ldap options!\n"
-msgstr "Не вдалося встановити значення параметрів ldap!\n"
-
-#, c-format
msgid "Simple bind failed\n"
msgstr "Невдала спроба простого прив’язування\n"
@@ -10860,6 +12034,14 @@ msgid "Missing reply control!\n"
msgstr "Немає керування відповіддю!\n"
#, c-format
+msgid "Out of Memory!\n"
+msgstr "Не вистачає пам'яті!\n"
+
+#, c-format
+msgid "Failed to create control!\n"
+msgstr "Не вдалося створити керування!\n"
+
+#, c-format
msgid "ber_init() failed, Invalid control ?!\n"
msgstr "Спроба виконання ber_init() зазнала невдачі. Некоректне керування?!\n"
@@ -10879,6 +12061,10 @@ msgstr "Не вдалося отримати дані щодо типу шифр
msgid "Failed to retrieve any keys"
msgstr "Не вдалося отримати жодного ключа"
+#, c-format
+msgid "Out of memory!\n"
+msgstr "Не вистачає пам'яті!\n"
+
msgid "New Principal Password"
msgstr "Новий пароль реєстраційного запису"
@@ -11054,10 +12240,6 @@ msgid "IPA namingContext not found\n"
msgstr "namingContext IPA не знайдено\n"
#, c-format
-msgid "Out of memory!\n"
-msgstr "Не вистачає пам'яті!\n"
-
-#, c-format
msgid "Search for ipaCertificateSubjectBase failed with error %d"
msgstr ""
"Спроба пошуку ipaCertificateSubjectBase завершилася невдало з повідомлення "
@@ -11287,9 +12469,6 @@ msgstr "Спроба закриття таблиці ключів зазнала
msgid "krb5_kt_close %1$d: %2$s\n"
msgstr "krb5_kt_close %1$d: %2$s\n"
-msgid "Out of memory!?\n"
-msgstr "Не вистачає пам'яті!?\n"
-
msgid "Out of memory\n"
msgstr "Не вистачає пам'яті\n"
@@ -11299,6 +12478,9 @@ msgstr "Попередження: невідомий тип шифрування
msgid "Warning unrecognized salt type.\n"
msgstr "Попередження: невідомий тип солі (salt).\n"
+msgid "Out of memory!?\n"
+msgstr "Не вистачає пам'яті!?\n"
+
msgid "Enctype comparison failed!\n"
msgstr "Спроба порівняння значень типу шифрування зазнала невдачі!\n"
@@ -11310,3 +12492,9 @@ msgstr "Не вдалося створити ключ!\n"
msgid "Bad or unsupported salt type.\n"
msgstr "Помилковий або непідтримуваний тип солі (salt).\n"
+
+#~ msgid "Display length"
+#~ msgstr "Ширина дисплея"
+
+#~ msgid "Unable to set ldap options!\n"
+#~ msgstr "Не вдалося встановити значення параметрів ldap!\n"
diff --git a/install/po/zh_CN.po b/install/po/zh_CN.po
index dca810cb7..c38f024f9 100644
--- a/install/po/zh_CN.po
+++ b/install/po/zh_CN.po
@@ -10,10 +10,11 @@ msgstr ""
"Project-Id-Version: FreeIPA\n"
"Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/"
"newticket\n"
-"POT-Creation-Date: 2013-10-09 14:39+0200\n"
-"PO-Revision-Date: 2013-08-01 14:06+0000\n"
+"POT-Creation-Date: 2014-06-27 16:29+0200\n"
+"PO-Revision-Date: 2014-06-25 19:44+0000\n"
"Last-Translator: Petr Viktorin <encukou@gmail.com>\n"
-"Language-Team: Chinese (China) <trans-zh_cn@lists.fedoraproject.org>\n"
+"Language-Team: Chinese (China) (http://www.transifex.com/projects/p/freeipa/"
+"language/zh_CN/)\n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -135,6 +136,12 @@ msgstr "目标组"
msgid "Description"
msgstr "描述"
+msgid "Users"
+msgstr "用户"
+
+msgid "Hosts"
+msgstr "主机"
+
msgid "Location"
msgstr "位置"
@@ -249,12 +256,6 @@ msgstr "用户类别"
msgid "Host category"
msgstr "主机类别"
-msgid "Users"
-msgstr "用户"
-
-msgid "Hosts"
-msgstr "主机"
-
msgid "Host Groups"
msgstr "主机组"