summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--apps/encryption/lib/keymanager.php8
-rw-r--r--apps/encryption/lib/users/setup.php1
-rw-r--r--apps/user_ldap/js/wizard/wizardTabElementary.js2
-rw-r--r--apps/user_ldap/l10n/de.js50
-rw-r--r--apps/user_ldap/l10n/de.json50
-rw-r--r--apps/user_ldap/l10n/de_DE.js58
-rw-r--r--apps/user_ldap/l10n/de_DE.json58
-rw-r--r--console.php4
-rw-r--r--core/routes.php8
-rw-r--r--lib/private/avatar.php14
-rw-r--r--lib/private/avatarmanager.php1
-rw-r--r--settings/l10n/de_DE.js4
-rw-r--r--settings/l10n/de_DE.json4
-rw-r--r--settings/l10n/ja.js2
-rw-r--r--settings/l10n/ja.json2
-rw-r--r--tests/lib/avatar.php23
16 files changed, 163 insertions, 126 deletions
diff --git a/apps/encryption/lib/keymanager.php b/apps/encryption/lib/keymanager.php
index 1e6f3d29be8..bde8212e9dc 100644
--- a/apps/encryption/lib/keymanager.php
+++ b/apps/encryption/lib/keymanager.php
@@ -131,6 +131,11 @@ class KeyManager {
$this->config->setAppValue('encryption', 'publicShareKeyId', $this->publicShareKeyId);
}
+ $this->keyId = $userSession && $userSession->isLoggedIn() ? $userSession->getUser()->getUID() : false;
+ $this->log = $log;
+ }
+
+ public function validateShareKey() {
$shareKey = $this->getPublicShareKey();
if (empty($shareKey)) {
$keyPair = $this->crypt->createKeyPair();
@@ -145,9 +150,6 @@ class KeyManager {
$header = $this->crypt->generateHeader();
$this->setSystemPrivateKey($this->publicShareKeyId, $header . $encryptedKey);
}
-
- $this->keyId = $userSession && $userSession->isLoggedIn() ? $userSession->getUser()->getUID() : false;
- $this->log = $log;
}
/**
diff --git a/apps/encryption/lib/users/setup.php b/apps/encryption/lib/users/setup.php
index 2ec49b5c7fb..fd8261cc637 100644
--- a/apps/encryption/lib/users/setup.php
+++ b/apps/encryption/lib/users/setup.php
@@ -79,6 +79,7 @@ class Setup {
* @return bool
*/
public function setupServerSide($uid, $password) {
+ $this->keyManager->validateShareKey();
// Check if user already has keys
if (!$this->keyManager->userHasKeys($uid)) {
return $this->keyManager->storeKeyPair($uid, $password,
diff --git a/apps/user_ldap/js/wizard/wizardTabElementary.js b/apps/user_ldap/js/wizard/wizardTabElementary.js
index 9619f9f4c84..d123a1ea080 100644
--- a/apps/user_ldap/js/wizard/wizardTabElementary.js
+++ b/apps/user_ldap/js/wizard/wizardTabElementary.js
@@ -263,7 +263,7 @@ OCA = OCA || {};
if(objectsFound < 1) {
message = t('user_ldap', 'No object found in the given Base DN. Please revise.');
} else if(objectsFound > 1000) {
- message = t('user_ldap', 'More then 1.000 directory entries available.');
+ message = t('user_ldap', 'More than 1.000 directory entries available.');
} else {
message = t('user_ldap', objectsFound + ' entries available within the provided Base DN');
}
diff --git a/apps/user_ldap/l10n/de.js b/apps/user_ldap/l10n/de.js
index 419e4cff59c..a1bf2feef90 100644
--- a/apps/user_ldap/l10n/de.js
+++ b/apps/user_ldap/l10n/de.js
@@ -16,26 +16,26 @@ OC.L10N.register(
"Configuration OK" : "Konfiguration OK",
"Select groups" : "Gruppen auswählen",
"Select object classes" : "Objektklassen auswählen",
- "Please check the credentials, they seem to be wrong." : "Bitte prüfe die Anmeldeinformationen, sie scheinen nicht richtig zu sein.",
- "Please specify the port, it could not be auto-detected." : "Bitte den Port manuell eingeben, er konnte nicht automatisch erkannt werden.",
+ "Please check the credentials, they seem to be wrong." : "Bitte überprüfe die Anmeldeinformationen, sie sind anscheinend falsch.",
+ "Please specify the port, it could not be auto-detected." : "Bitte gib den Port an, er konnte nicht automatisch erkannt werden.",
"Base DN could not be auto-detected, please revise credentials, host and port." : "Die Base DN konnte nicht automatisch erkannt werden, bitte überprüfe die Anmeldeinformationen, den Host und den Port.",
"Could not detect Base DN, please enter it manually." : "Die Base DN konnte nicht erkannt werden, bitte manuell eingeben.",
"{nthServer}. Server" : "{nthServer}. - Server",
"No object found in the given Base DN. Please revise." : "Keine Objekte in der Base DN gefunden, bitte überprüfen.",
- "More then 1.000 directory entries available." : "Es sind mehr als 1.000 Verzeichnis Einträge verfügbar.",
+ "More then 1.000 directory entries available." : "Es sind mehr als 1,000 Verzeichniseinträge verfügbar.",
" entries available within the provided Base DN" : "Einträge in der Vorgesehenen Base DN verfügbar",
"An error occurred. Please check the Base DN, as well as connection settings and credentials." : "Ein Fehler ist aufgetreten. Bitte prüfe die Base DN und auch die Verbindungs- und Anmeldeeinstellungen.",
"Do you really want to delete the current Server Configuration?" : "Soll die aktuelle Serverkonfiguration wirklich gelöscht werden?",
"Confirm Deletion" : "Löschen bestätigen",
"Mappings cleared successfully!" : "Zuordnungen erfolgreich gelöscht!",
- "Error while clearing the mappings." : "Fehler während dem löschen der Zuordnungen!",
- "Saving failed. Please make sure the database is in Operation. Reload before continuing." : "Speichern fehlgeschlagen. Bitte sicherstellen dass die Datenbank arbeitet. Neuladen vor dem Fortfahren.",
- "Switching the mode will enable automatic LDAP queries. Depending on your LDAP size they may take a while. Do you still want to switch the mode?" : "Das Umschalten des Modus ermöglicht automatische LDAP-Abfragen. Abhängig von Ihrer LDAP-Größe kann dies eine Weile dauern. Wollen Sie immer noch den Modus wechseln?",
+ "Error while clearing the mappings." : "Fehler beim Löschen der Zuordnungen.",
+ "Saving failed. Please make sure the database is in Operation. Reload before continuing." : "Speichern fehlgeschlagen. Bitte stelle sicher, dass die Datenbank in Betrieb ist. Bitte lade vor dem Fortfahren neu.",
+ "Switching the mode will enable automatic LDAP queries. Depending on your LDAP size they may take a while. Do you still want to switch the mode?" : "Das Umschalten des Modus ermöglicht automatische LDAP-Abfragen. Abhängig von Deiner LDAP-Größe können diese einige Zeit in Anspruch nehmen. Willst Du immer noch den Modus wechseln?",
"Mode switch" : "Modus umschalten",
"Select attributes" : "Attribute auswählen",
- "User not found. Please check your login attributes and username. Effective filter (to copy-and-paste for command line validation): <br/>" : "User nicht gefunden. Prüfe Deine Login Attribute und den Usernamen. Effektiver Filter (copy-and-paste für die Kommando Zeilen Überprüfung): <br/>",
- "User found and settings verified." : "User gefunden und Einstellungen überprüft.",
- "A connection error to LDAP / AD occurred, please check host, port and credentials." : "Es trat ein Verbindungsfehler zu LDAP / AD auf, bitte prüfen sie den Server, den Port und dieAnmeldeinformationen.",
+ "User not found. Please check your login attributes and username. Effective filter (to copy-and-paste for command line validation): <br/>" : "Benutzer nicht gefunden. Bitte überprüfe Deine Loginattribute und Deinen Benutzernamen. Gültige Filter (zum Kopieren und Einfügen bei der Überprüfung auf der Kommandozeile): <br/>",
+ "User found and settings verified." : "Benutzer gefunden und Einstellungen überprüft.",
+ "A connection error to LDAP / AD occurred, please check host, port and credentials." : "Es ist ein Verbindungsfehler zum LDAP/AD aufgetreten, bitte überprüfe Host, Port und Anmeldeinformationen.",
"_%s group found_::_%s groups found_" : ["%s Gruppe gefunden","%s Gruppen gefunden"],
"_%s user found_::_%s users found_" : ["%s Benutzer gefunden","%s Benutzer gefunden"],
"Could not detect user display name attribute. Please specify it yourself in advanced ldap settings." : "Das Anzeigename-Attribut des Benutzers konnte nicht gefunden werden. Bitte gib es in den erweiterten LDAP-Einstellungen selber an.",
@@ -43,46 +43,46 @@ OC.L10N.register(
"Invalid Host" : "Ungültiger Host",
"Server" : "Server",
"Users" : "Benutzer",
- "Login Attributes" : "Anmelde Attribute",
+ "Login Attributes" : "Loginattribute",
"Groups" : "Gruppen",
"Test Configuration" : "Testkonfiguration",
"Help" : "Hilfe",
"Groups meeting these criteria are available in %s:" : "Gruppen, auf die diese Kriterien zutreffen, sind verfügbar in %s:",
- "Only these object classes:" : "Nur diese Objekt Klassen:",
- "Only from these groups:" : "Nur von diesen Gruppen:",
- "Search groups" : "Suche Gruppen",
+ "Only these object classes:" : "Nur diese Objektklassen:",
+ "Only from these groups:" : "Nur aus diesen Gruppen:",
+ "Search groups" : "Gruppen suchen",
"Available groups" : "Verfügbare Gruppen",
"Selected groups" : "Ausgewählte Gruppen",
- "Edit LDAP Query" : "Editiere die LDAP Abfrage",
- "LDAP Filter:" : "LDAP Filter:",
+ "Edit LDAP Query" : "LDAP-Abfrage bearbeiten",
+ "LDAP Filter:" : "LDAP-Filter:",
"The filter specifies which LDAP groups shall have access to the %s instance." : "Der Filter bestimmt, welche LDAP-Gruppen Zugriff auf die %s-Instanz haben sollen.",
"Test Filter" : "Testfilter",
- "Verify settings and count groups" : "Überprüfe die Einstellungen und zähle Gruppen",
- "LDAP / AD Username:" : "LDAP / AD Benutzername:",
- "LDAP / AD Email Address:" : "LDAP / AD Email Adresse:",
+ "Verify settings and count groups" : "Einstellungen überprüfen und Gruppen zählen",
+ "LDAP / AD Username:" : "LDAP-/AD-Benutzername:",
+ "LDAP / AD Email Address:" : "LDAP-/AD-E-Mail-Adresse:",
"Other Attributes:" : "Andere Attribute:",
"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action. Example: \"uid=%%uid\"" : "Bestimmt den Filter, welcher bei einer Anmeldung angewandt wird. %%uid ersetzt den Benutzernamen bei der Anmeldung. Beispiel: \"uid=%%uid\"",
- "Test Loginname" : "Teste den Benutzernamen",
- "Verify settings" : "Überprüfe Einstellungen",
+ "Test Loginname" : "Loginnamen testen",
+ "Verify settings" : "Einstellungen überprüfen",
"1. Server" : "1. Server",
"%s. Server:" : "%s. Server:",
"Host" : "Host",
"You can omit the protocol, except you require SSL. Then start with ldaps://" : "Du kannst das Protokoll auslassen, außer wenn Du SSL benötigst. Beginne dann mit ldaps://",
"Port" : "Port",
- "Detect Port" : "Ermittle den Port",
+ "Detect Port" : "Port ermitteln",
"User DN" : "Benutzer-DN",
"The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password empty." : "Der DN des Benutzers, mit dem der LDAP-Bind durchgeführt werden soll, z.B. uid=agent,dc=example,dc=com. Für anonymen Zugriff lasse DN und Passwort leer.",
"Password" : "Passwort",
"For anonymous access, leave DN and Password empty." : "Lasse die Felder DN und Passwort für anonymen Zugang leer.",
"One Base DN per line" : "Einen Basis-DN pro Zeile",
- "You can specify Base DN for users and groups in the Advanced tab" : "Du kannst die Basis-DN für Benutzer und Gruppen im Reiter „Fortgeschritten“ angeben",
- "Detect Base DN" : "Ermittle die Base DN",
- "Test Base DN" : "Teste die Base DN",
+ "You can specify Base DN for users and groups in the Advanced tab" : "Du kannst die Base DN für Benutzer und Gruppen im Reiter „Fortgeschritten“ angeben",
+ "Detect Base DN" : "Base DN ermitteln",
+ "Test Base DN" : "Base DN testen",
"Avoids automatic LDAP requests. Better for bigger setups, but requires some LDAP knowledge." : "Verhindert automatische LDAP-Anfragen. Besser geeignet für größere Installationen, benötigt aber erweiterte LDAP-Kenntnisse.",
"Manually enter LDAP filters (recommended for large directories)" : "LDAP-Filter manuell eingeben (empfohlen für große Verzeichnisse)",
"Limit %s access to users meeting these criteria:" : "Den %s-Zugriff auf Benutzer, die den folgenden Kriterien entsprechen, beschränken:",
"The filter specifies which LDAP users shall have access to the %s instance." : "Der Filter gibt an, welche LDAP-Benutzer Zugriff auf die %s-Instanz haben sollen.",
- "Verify settings and count users" : "Überprüfe Einstellungen und zähle Benutzer",
+ "Verify settings and count users" : "Einstellungen überprüfen und Benutzer zählen",
"Saving" : "Speichern",
"Back" : "Zurück",
"Continue" : "Fortsetzen",
diff --git a/apps/user_ldap/l10n/de.json b/apps/user_ldap/l10n/de.json
index 47fc89ddb59..72bf5903d48 100644
--- a/apps/user_ldap/l10n/de.json
+++ b/apps/user_ldap/l10n/de.json
@@ -14,26 +14,26 @@
"Configuration OK" : "Konfiguration OK",
"Select groups" : "Gruppen auswählen",
"Select object classes" : "Objektklassen auswählen",
- "Please check the credentials, they seem to be wrong." : "Bitte prüfe die Anmeldeinformationen, sie scheinen nicht richtig zu sein.",
- "Please specify the port, it could not be auto-detected." : "Bitte den Port manuell eingeben, er konnte nicht automatisch erkannt werden.",
+ "Please check the credentials, they seem to be wrong." : "Bitte überprüfe die Anmeldeinformationen, sie sind anscheinend falsch.",
+ "Please specify the port, it could not be auto-detected." : "Bitte gib den Port an, er konnte nicht automatisch erkannt werden.",
"Base DN could not be auto-detected, please revise credentials, host and port." : "Die Base DN konnte nicht automatisch erkannt werden, bitte überprüfe die Anmeldeinformationen, den Host und den Port.",
"Could not detect Base DN, please enter it manually." : "Die Base DN konnte nicht erkannt werden, bitte manuell eingeben.",
"{nthServer}. Server" : "{nthServer}. - Server",
"No object found in the given Base DN. Please revise." : "Keine Objekte in der Base DN gefunden, bitte überprüfen.",
- "More then 1.000 directory entries available." : "Es sind mehr als 1.000 Verzeichnis Einträge verfügbar.",
+ "More then 1.000 directory entries available." : "Es sind mehr als 1,000 Verzeichniseinträge verfügbar.",
" entries available within the provided Base DN" : "Einträge in der Vorgesehenen Base DN verfügbar",
"An error occurred. Please check the Base DN, as well as connection settings and credentials." : "Ein Fehler ist aufgetreten. Bitte prüfe die Base DN und auch die Verbindungs- und Anmeldeeinstellungen.",
"Do you really want to delete the current Server Configuration?" : "Soll die aktuelle Serverkonfiguration wirklich gelöscht werden?",
"Confirm Deletion" : "Löschen bestätigen",
"Mappings cleared successfully!" : "Zuordnungen erfolgreich gelöscht!",
- "Error while clearing the mappings." : "Fehler während dem löschen der Zuordnungen!",
- "Saving failed. Please make sure the database is in Operation. Reload before continuing." : "Speichern fehlgeschlagen. Bitte sicherstellen dass die Datenbank arbeitet. Neuladen vor dem Fortfahren.",
- "Switching the mode will enable automatic LDAP queries. Depending on your LDAP size they may take a while. Do you still want to switch the mode?" : "Das Umschalten des Modus ermöglicht automatische LDAP-Abfragen. Abhängig von Ihrer LDAP-Größe kann dies eine Weile dauern. Wollen Sie immer noch den Modus wechseln?",
+ "Error while clearing the mappings." : "Fehler beim Löschen der Zuordnungen.",
+ "Saving failed. Please make sure the database is in Operation. Reload before continuing." : "Speichern fehlgeschlagen. Bitte stelle sicher, dass die Datenbank in Betrieb ist. Bitte lade vor dem Fortfahren neu.",
+ "Switching the mode will enable automatic LDAP queries. Depending on your LDAP size they may take a while. Do you still want to switch the mode?" : "Das Umschalten des Modus ermöglicht automatische LDAP-Abfragen. Abhängig von Deiner LDAP-Größe können diese einige Zeit in Anspruch nehmen. Willst Du immer noch den Modus wechseln?",
"Mode switch" : "Modus umschalten",
"Select attributes" : "Attribute auswählen",
- "User not found. Please check your login attributes and username. Effective filter (to copy-and-paste for command line validation): <br/>" : "User nicht gefunden. Prüfe Deine Login Attribute und den Usernamen. Effektiver Filter (copy-and-paste für die Kommando Zeilen Überprüfung): <br/>",
- "User found and settings verified." : "User gefunden und Einstellungen überprüft.",
- "A connection error to LDAP / AD occurred, please check host, port and credentials." : "Es trat ein Verbindungsfehler zu LDAP / AD auf, bitte prüfen sie den Server, den Port und dieAnmeldeinformationen.",
+ "User not found. Please check your login attributes and username. Effective filter (to copy-and-paste for command line validation): <br/>" : "Benutzer nicht gefunden. Bitte überprüfe Deine Loginattribute und Deinen Benutzernamen. Gültige Filter (zum Kopieren und Einfügen bei der Überprüfung auf der Kommandozeile): <br/>",
+ "User found and settings verified." : "Benutzer gefunden und Einstellungen überprüft.",
+ "A connection error to LDAP / AD occurred, please check host, port and credentials." : "Es ist ein Verbindungsfehler zum LDAP/AD aufgetreten, bitte überprüfe Host, Port und Anmeldeinformationen.",
"_%s group found_::_%s groups found_" : ["%s Gruppe gefunden","%s Gruppen gefunden"],
"_%s user found_::_%s users found_" : ["%s Benutzer gefunden","%s Benutzer gefunden"],
"Could not detect user display name attribute. Please specify it yourself in advanced ldap settings." : "Das Anzeigename-Attribut des Benutzers konnte nicht gefunden werden. Bitte gib es in den erweiterten LDAP-Einstellungen selber an.",
@@ -41,46 +41,46 @@
"Invalid Host" : "Ungültiger Host",
"Server" : "Server",
"Users" : "Benutzer",
- "Login Attributes" : "Anmelde Attribute",
+ "Login Attributes" : "Loginattribute",
"Groups" : "Gruppen",
"Test Configuration" : "Testkonfiguration",
"Help" : "Hilfe",
"Groups meeting these criteria are available in %s:" : "Gruppen, auf die diese Kriterien zutreffen, sind verfügbar in %s:",
- "Only these object classes:" : "Nur diese Objekt Klassen:",
- "Only from these groups:" : "Nur von diesen Gruppen:",
- "Search groups" : "Suche Gruppen",
+ "Only these object classes:" : "Nur diese Objektklassen:",
+ "Only from these groups:" : "Nur aus diesen Gruppen:",
+ "Search groups" : "Gruppen suchen",
"Available groups" : "Verfügbare Gruppen",
"Selected groups" : "Ausgewählte Gruppen",
- "Edit LDAP Query" : "Editiere die LDAP Abfrage",
- "LDAP Filter:" : "LDAP Filter:",
+ "Edit LDAP Query" : "LDAP-Abfrage bearbeiten",
+ "LDAP Filter:" : "LDAP-Filter:",
"The filter specifies which LDAP groups shall have access to the %s instance." : "Der Filter bestimmt, welche LDAP-Gruppen Zugriff auf die %s-Instanz haben sollen.",
"Test Filter" : "Testfilter",
- "Verify settings and count groups" : "Überprüfe die Einstellungen und zähle Gruppen",
- "LDAP / AD Username:" : "LDAP / AD Benutzername:",
- "LDAP / AD Email Address:" : "LDAP / AD Email Adresse:",
+ "Verify settings and count groups" : "Einstellungen überprüfen und Gruppen zählen",
+ "LDAP / AD Username:" : "LDAP-/AD-Benutzername:",
+ "LDAP / AD Email Address:" : "LDAP-/AD-E-Mail-Adresse:",
"Other Attributes:" : "Andere Attribute:",
"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action. Example: \"uid=%%uid\"" : "Bestimmt den Filter, welcher bei einer Anmeldung angewandt wird. %%uid ersetzt den Benutzernamen bei der Anmeldung. Beispiel: \"uid=%%uid\"",
- "Test Loginname" : "Teste den Benutzernamen",
- "Verify settings" : "Überprüfe Einstellungen",
+ "Test Loginname" : "Loginnamen testen",
+ "Verify settings" : "Einstellungen überprüfen",
"1. Server" : "1. Server",
"%s. Server:" : "%s. Server:",
"Host" : "Host",
"You can omit the protocol, except you require SSL. Then start with ldaps://" : "Du kannst das Protokoll auslassen, außer wenn Du SSL benötigst. Beginne dann mit ldaps://",
"Port" : "Port",
- "Detect Port" : "Ermittle den Port",
+ "Detect Port" : "Port ermitteln",
"User DN" : "Benutzer-DN",
"The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password empty." : "Der DN des Benutzers, mit dem der LDAP-Bind durchgeführt werden soll, z.B. uid=agent,dc=example,dc=com. Für anonymen Zugriff lasse DN und Passwort leer.",
"Password" : "Passwort",
"For anonymous access, leave DN and Password empty." : "Lasse die Felder DN und Passwort für anonymen Zugang leer.",
"One Base DN per line" : "Einen Basis-DN pro Zeile",
- "You can specify Base DN for users and groups in the Advanced tab" : "Du kannst die Basis-DN für Benutzer und Gruppen im Reiter „Fortgeschritten“ angeben",
- "Detect Base DN" : "Ermittle die Base DN",
- "Test Base DN" : "Teste die Base DN",
+ "You can specify Base DN for users and groups in the Advanced tab" : "Du kannst die Base DN für Benutzer und Gruppen im Reiter „Fortgeschritten“ angeben",
+ "Detect Base DN" : "Base DN ermitteln",
+ "Test Base DN" : "Base DN testen",
"Avoids automatic LDAP requests. Better for bigger setups, but requires some LDAP knowledge." : "Verhindert automatische LDAP-Anfragen. Besser geeignet für größere Installationen, benötigt aber erweiterte LDAP-Kenntnisse.",
"Manually enter LDAP filters (recommended for large directories)" : "LDAP-Filter manuell eingeben (empfohlen für große Verzeichnisse)",
"Limit %s access to users meeting these criteria:" : "Den %s-Zugriff auf Benutzer, die den folgenden Kriterien entsprechen, beschränken:",
"The filter specifies which LDAP users shall have access to the %s instance." : "Der Filter gibt an, welche LDAP-Benutzer Zugriff auf die %s-Instanz haben sollen.",
- "Verify settings and count users" : "Überprüfe Einstellungen und zähle Benutzer",
+ "Verify settings and count users" : "Einstellungen überprüfen und Benutzer zählen",
"Saving" : "Speichern",
"Back" : "Zurück",
"Continue" : "Fortsetzen",
diff --git a/apps/user_ldap/l10n/de_DE.js b/apps/user_ldap/l10n/de_DE.js
index 132780c74bf..696a14abb6c 100644
--- a/apps/user_ldap/l10n/de_DE.js
+++ b/apps/user_ldap/l10n/de_DE.js
@@ -16,26 +16,26 @@ OC.L10N.register(
"Configuration OK" : "Konfiguration OK",
"Select groups" : "Gruppen auswählen",
"Select object classes" : "Objektklassen auswählen",
- "Please check the credentials, they seem to be wrong." : "Bitte prüfe die Anmeldeinformationen, sie scheinen nicht richtig zu sein.",
- "Please specify the port, it could not be auto-detected." : "Bitte den Port manuell eingeben, er konnte nicht automatisch erkannt werden.",
- "Base DN could not be auto-detected, please revise credentials, host and port." : "Die Base DN konnte nicht automatisch erkannt werden, bitte überprüfe die Anmeldeinformationen, den Host und den Port.",
- "Could not detect Base DN, please enter it manually." : "Die Base DN konnte nicht erkannt werden, bitte manuell eingeben.",
+ "Please check the credentials, they seem to be wrong." : "Bitte überprüfen Sie die Anmeldeinformationen, sie sind anscheinend falsch.",
+ "Please specify the port, it could not be auto-detected." : "Bitte geben Sie den Port an, er konnte nicht automatisch erkannt werden.",
+ "Base DN could not be auto-detected, please revise credentials, host and port." : "Die Base DN konnte nicht automatisch erkannt werden, bitte überprüfen Sie Anmeldeinformationen, Host und Port.",
+ "Could not detect Base DN, please enter it manually." : "Die Base DN konnte nicht erkannt werden, bitte geben Sie sie manuell ein.",
"{nthServer}. Server" : "{nthServer}. - Server",
- "No object found in the given Base DN. Please revise." : "Keine Objekte in der Base DN gefunden, bitte überprüfen.",
- "More then 1.000 directory entries available." : "Es sind mehr als 1.000 Verzeichnis Einträge verfügbar.",
- " entries available within the provided Base DN" : "Einträge in der Vorgesehenen Base DN verfügbar",
- "An error occurred. Please check the Base DN, as well as connection settings and credentials." : "Ein Fehler ist aufgetreten. Bitte prüfe die Base DN und auch die Verbindungs- und Anmeldeeinstellungen.",
+ "No object found in the given Base DN. Please revise." : "Keine Objekte in der angegebenen Base DN gefunden, bitte überprüfen.",
+ "More then 1.000 directory entries available." : "Es sind mehr als 1.000 Verzeichniseinträge verfügbar.",
+ " entries available within the provided Base DN" : "Einträge in der angegebenen Base DN verfügbar",
+ "An error occurred. Please check the Base DN, as well as connection settings and credentials." : "Es ist ein Fehler aufgetreten. Bitte überprüfen Sie die Base DN wie auch die Verbindungseinstellungen und Anmeldeinformationen.",
"Do you really want to delete the current Server Configuration?" : "Soll die aktuelle Serverkonfiguration wirklich gelöscht werden?",
"Confirm Deletion" : "Löschen bestätigen",
"Mappings cleared successfully!" : "Zuordnungen erfolgreich gelöscht!",
- "Error while clearing the mappings." : "Fehler während dem löschen der Zuordnungen!",
- "Saving failed. Please make sure the database is in Operation. Reload before continuing." : "Speichern fehlgeschlagen. Bitte sicherstellen dass die Datenbank arbeitet. Neuladen vor dem Fortfahren.",
- "Switching the mode will enable automatic LDAP queries. Depending on your LDAP size they may take a while. Do you still want to switch the mode?" : "Das Umschalten des Modus ermöglicht automatische LDAP-Abfragen. Abhängig von Ihrer LDAP-Größe kann dies eine Weile dauern. Wollen Sie immer noch den Modus wechseln",
+ "Error while clearing the mappings." : "Fehler beim Löschen der Zuordnungen.",
+ "Saving failed. Please make sure the database is in Operation. Reload before continuing." : "Speichern fehlgeschlagen. Bitte stellen Sie sicher, dass die Datenbank in Betrieb ist. Bitte laden Sie vor dem Fortfahren neu.",
+ "Switching the mode will enable automatic LDAP queries. Depending on your LDAP size they may take a while. Do you still want to switch the mode?" : "Das Umschalten des Modus ermöglicht automatische LDAP-Abfragen. Abhängig von Ihrer LDAP-Größe können diese einige Zeit in Anspruch nehmen. Wollen Sie immer noch den Modus wechseln?",
"Mode switch" : "Modus umschalten",
"Select attributes" : "Attribute auswählen",
- "User not found. Please check your login attributes and username. Effective filter (to copy-and-paste for command line validation): <br/>" : "User nicht gefunden. Prüfe Deine Login Attribute und den Usernamen. Effektiver Filter (copy-and-paste für die Kommando Zeilen Überprüfung): <br/>",
- "User found and settings verified." : "User gefunden und Einstellungen überprüft.",
- "A connection error to LDAP / AD occurred, please check host, port and credentials." : "Es trat ein Verbindungsfehler zu LDAP / AD auf, bitte prüfen sie den Server, den Port und dieAnmeldeinformationen.",
+ "User not found. Please check your login attributes and username. Effective filter (to copy-and-paste for command line validation): <br/>" : "Benutzer nicht gefunden. Bitte überprüfen Sie Ihre Loginattribute und Ihren Benutzernamen. Gültiger Filter (zum Kopieren und Einfügen bei der Überprüfung auf der Kommandozeile): <br/>",
+ "User found and settings verified." : "Benutzer gefunden und Einstellungen überprüft.",
+ "A connection error to LDAP / AD occurred, please check host, port and credentials." : "Es ist ein Verbindungsfehler zum LDAP/AD aufgetreten, bitte überprüfen Sie Host, Port und Anmeldeinformationen.",
"_%s group found_::_%s groups found_" : ["%s Gruppe gefunden","%s Gruppen gefunden"],
"_%s user found_::_%s users found_" : ["%s Benutzer gefunden","%s Benutzer gefunden"],
"Could not detect user display name attribute. Please specify it yourself in advanced ldap settings." : "Das Anzeigename-Attribut des Benutzers konnte nicht gefunden werden. Bitte geben Sie es in den erweiterten LDAP-Einstellungen selber an.",
@@ -43,46 +43,46 @@ OC.L10N.register(
"Invalid Host" : "Ungültiger Host",
"Server" : "Server",
"Users" : "Benutzer",
- "Login Attributes" : "Anmelde Attribute",
+ "Login Attributes" : "Anmeldeattribute",
"Groups" : "Gruppen",
"Test Configuration" : "Testkonfiguration",
"Help" : "Hilfe",
"Groups meeting these criteria are available in %s:" : "Gruppen, auf die diese Kriterien zutreffen, sind verfügbar in %s:",
- "Only these object classes:" : "Nur diese Objekt Klassen:",
- "Only from these groups:" : "Nur von diesen Gruppen:",
- "Search groups" : "Suche Gruppen",
+ "Only these object classes:" : "Nur diese Objektklassen:",
+ "Only from these groups:" : "Nur aus diesen Gruppen:",
+ "Search groups" : "Gruppen suchen",
"Available groups" : "Verfügbare Gruppen",
"Selected groups" : "Ausgewählte Gruppen",
- "Edit LDAP Query" : "Editiere die LDAP Abfrage",
- "LDAP Filter:" : "LDAP Filter:",
+ "Edit LDAP Query" : "LDAP-Abfrage bearbeiten",
+ "LDAP Filter:" : "LDAP-Filter:",
"The filter specifies which LDAP groups shall have access to the %s instance." : "Der Filter bestimmt, welche LDAP-Gruppen Zugriff auf die %s-Instanz haben sollen.",
"Test Filter" : "Testfilter",
- "Verify settings and count groups" : "Überprüfe die Einstellungen und zähle Gruppen",
- "LDAP / AD Username:" : "LDAP / AD Benutzername:",
- "LDAP / AD Email Address:" : "LDAP / AD Email Adresse:",
+ "Verify settings and count groups" : "Einstellungen überprüfen und Gruppen zählen",
+ "LDAP / AD Username:" : "LDAP-/AD-Benutzername:",
+ "LDAP / AD Email Address:" : "LDAP-/AD-E-Mail-Adresse:",
"Other Attributes:" : "Andere Attribute:",
"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action. Example: \"uid=%%uid\"" : "Bestimmt den Filter, welcher bei einer Anmeldung angewandt wird. %%uid ersetzt den Benutzernamen bei der Anmeldung. Beispiel: \"uid=%%uid\"",
- "Test Loginname" : "Teste den Benutzernamen",
- "Verify settings" : "Überprüfe Einstellungen",
+ "Test Loginname" : "Loginnamen testen",
+ "Verify settings" : "Einstellungen überprüfen",
"1. Server" : "1. Server",
"%s. Server:" : "%s. Server:",
"Host" : "Host",
"You can omit the protocol, except you require SSL. Then start with ldaps://" : "Sie können das Protokoll auslassen, außer wenn Sie SSL benötigen. Beginnen Sie dann mit ldaps://",
"Port" : "Port",
- "Detect Port" : "Ermittle den Port",
+ "Detect Port" : "Port ermitteln",
"User DN" : "Benutzer-DN",
"The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password empty." : "Der DN des Benutzers, mit dem der LDAP-Bind durchgeführt werden soll, z.B. uid=agent,dc=example,dc=com. Für einen anonymen Zugriff lassen Sie DN und Passwort leer.",
"Password" : "Passwort",
"For anonymous access, leave DN and Password empty." : "Lassen Sie die Felder DN und Passwort für einen anonymen Zugang leer.",
"One Base DN per line" : "Einen Basis-DN pro Zeile",
"You can specify Base DN for users and groups in the Advanced tab" : " Sie können die Basis-DN für Benutzer und Gruppen im Reiter „Fortgeschritten“ angeben",
- "Detect Base DN" : "Ermittle die Base DN",
- "Test Base DN" : "Teste die Base DN",
+ "Detect Base DN" : "Base DN ermitteln",
+ "Test Base DN" : "Base DN testen",
"Avoids automatic LDAP requests. Better for bigger setups, but requires some LDAP knowledge." : "Verhindert automatische LDAP-Anfragen. Besser geeignet für größere Installationen, benötigt aber erweiterte LDAP-Kenntnisse.",
"Manually enter LDAP filters (recommended for large directories)" : "LDAP-Filter manuell eingeben (empfohlen für große Verzeichnisse)",
"Limit %s access to users meeting these criteria:" : "Den %s-Zugriff auf Benutzer, die den folgenden Kriterien entsprechen, beschränken:",
"The filter specifies which LDAP users shall have access to the %s instance." : "Der Filter gibt an, welche LDAP-Benutzer Zugriff auf die %s-Instanz haben sollen.",
- "Verify settings and count users" : "Überprüfe Einstellungen und zähle Benutzer",
+ "Verify settings and count users" : "Einstellungen überprüfen und Benutzer zählen",
"Saving" : "Speichern",
"Back" : "Zurück",
"Continue" : "Fortsetzen",
diff --git a/apps/user_ldap/l10n/de_DE.json b/apps/user_ldap/l10n/de_DE.json
index a4661c72581..8f3e46ff282 100644
--- a/apps/user_ldap/l10n/de_DE.json
+++ b/apps/user_ldap/l10n/de_DE.json
@@ -14,26 +14,26 @@
"Configuration OK" : "Konfiguration OK",
"Select groups" : "Gruppen auswählen",
"Select object classes" : "Objektklassen auswählen",
- "Please check the credentials, they seem to be wrong." : "Bitte prüfe die Anmeldeinformationen, sie scheinen nicht richtig zu sein.",
- "Please specify the port, it could not be auto-detected." : "Bitte den Port manuell eingeben, er konnte nicht automatisch erkannt werden.",
- "Base DN could not be auto-detected, please revise credentials, host and port." : "Die Base DN konnte nicht automatisch erkannt werden, bitte überprüfe die Anmeldeinformationen, den Host und den Port.",
- "Could not detect Base DN, please enter it manually." : "Die Base DN konnte nicht erkannt werden, bitte manuell eingeben.",
+ "Please check the credentials, they seem to be wrong." : "Bitte überprüfen Sie die Anmeldeinformationen, sie sind anscheinend falsch.",
+ "Please specify the port, it could not be auto-detected." : "Bitte geben Sie den Port an, er konnte nicht automatisch erkannt werden.",
+ "Base DN could not be auto-detected, please revise credentials, host and port." : "Die Base DN konnte nicht automatisch erkannt werden, bitte überprüfen Sie Anmeldeinformationen, Host und Port.",
+ "Could not detect Base DN, please enter it manually." : "Die Base DN konnte nicht erkannt werden, bitte geben Sie sie manuell ein.",
"{nthServer}. Server" : "{nthServer}. - Server",
- "No object found in the given Base DN. Please revise." : "Keine Objekte in der Base DN gefunden, bitte überprüfen.",
- "More then 1.000 directory entries available." : "Es sind mehr als 1.000 Verzeichnis Einträge verfügbar.",
- " entries available within the provided Base DN" : "Einträge in der Vorgesehenen Base DN verfügbar",
- "An error occurred. Please check the Base DN, as well as connection settings and credentials." : "Ein Fehler ist aufgetreten. Bitte prüfe die Base DN und auch die Verbindungs- und Anmeldeeinstellungen.",
+ "No object found in the given Base DN. Please revise." : "Keine Objekte in der angegebenen Base DN gefunden, bitte überprüfen.",
+ "More then 1.000 directory entries available." : "Es sind mehr als 1.000 Verzeichniseinträge verfügbar.",
+ " entries available within the provided Base DN" : "Einträge in der angegebenen Base DN verfügbar",
+ "An error occurred. Please check the Base DN, as well as connection settings and credentials." : "Es ist ein Fehler aufgetreten. Bitte überprüfen Sie die Base DN wie auch die Verbindungseinstellungen und Anmeldeinformationen.",
"Do you really want to delete the current Server Configuration?" : "Soll die aktuelle Serverkonfiguration wirklich gelöscht werden?",
"Confirm Deletion" : "Löschen bestätigen",
"Mappings cleared successfully!" : "Zuordnungen erfolgreich gelöscht!",
- "Error while clearing the mappings." : "Fehler während dem löschen der Zuordnungen!",
- "Saving failed. Please make sure the database is in Operation. Reload before continuing." : "Speichern fehlgeschlagen. Bitte sicherstellen dass die Datenbank arbeitet. Neuladen vor dem Fortfahren.",
- "Switching the mode will enable automatic LDAP queries. Depending on your LDAP size they may take a while. Do you still want to switch the mode?" : "Das Umschalten des Modus ermöglicht automatische LDAP-Abfragen. Abhängig von Ihrer LDAP-Größe kann dies eine Weile dauern. Wollen Sie immer noch den Modus wechseln",
+ "Error while clearing the mappings." : "Fehler beim Löschen der Zuordnungen.",
+ "Saving failed. Please make sure the database is in Operation. Reload before continuing." : "Speichern fehlgeschlagen. Bitte stellen Sie sicher, dass die Datenbank in Betrieb ist. Bitte laden Sie vor dem Fortfahren neu.",
+ "Switching the mode will enable automatic LDAP queries. Depending on your LDAP size they may take a while. Do you still want to switch the mode?" : "Das Umschalten des Modus ermöglicht automatische LDAP-Abfragen. Abhängig von Ihrer LDAP-Größe können diese einige Zeit in Anspruch nehmen. Wollen Sie immer noch den Modus wechseln?",
"Mode switch" : "Modus umschalten",
"Select attributes" : "Attribute auswählen",
- "User not found. Please check your login attributes and username. Effective filter (to copy-and-paste for command line validation): <br/>" : "User nicht gefunden. Prüfe Deine Login Attribute und den Usernamen. Effektiver Filter (copy-and-paste für die Kommando Zeilen Überprüfung): <br/>",
- "User found and settings verified." : "User gefunden und Einstellungen überprüft.",
- "A connection error to LDAP / AD occurred, please check host, port and credentials." : "Es trat ein Verbindungsfehler zu LDAP / AD auf, bitte prüfen sie den Server, den Port und dieAnmeldeinformationen.",
+ "User not found. Please check your login attributes and username. Effective filter (to copy-and-paste for command line validation): <br/>" : "Benutzer nicht gefunden. Bitte überprüfen Sie Ihre Loginattribute und Ihren Benutzernamen. Gültiger Filter (zum Kopieren und Einfügen bei der Überprüfung auf der Kommandozeile): <br/>",
+ "User found and settings verified." : "Benutzer gefunden und Einstellungen überprüft.",
+ "A connection error to LDAP / AD occurred, please check host, port and credentials." : "Es ist ein Verbindungsfehler zum LDAP/AD aufgetreten, bitte überprüfen Sie Host, Port und Anmeldeinformationen.",
"_%s group found_::_%s groups found_" : ["%s Gruppe gefunden","%s Gruppen gefunden"],
"_%s user found_::_%s users found_" : ["%s Benutzer gefunden","%s Benutzer gefunden"],
"Could not detect user display name attribute. Please specify it yourself in advanced ldap settings." : "Das Anzeigename-Attribut des Benutzers konnte nicht gefunden werden. Bitte geben Sie es in den erweiterten LDAP-Einstellungen selber an.",
@@ -41,46 +41,46 @@
"Invalid Host" : "Ungültiger Host",
"Server" : "Server",
"Users" : "Benutzer",
- "Login Attributes" : "Anmelde Attribute",
+ "Login Attributes" : "Anmeldeattribute",
"Groups" : "Gruppen",
"Test Configuration" : "Testkonfiguration",
"Help" : "Hilfe",
"Groups meeting these criteria are available in %s:" : "Gruppen, auf die diese Kriterien zutreffen, sind verfügbar in %s:",
- "Only these object classes:" : "Nur diese Objekt Klassen:",
- "Only from these groups:" : "Nur von diesen Gruppen:",
- "Search groups" : "Suche Gruppen",
+ "Only these object classes:" : "Nur diese Objektklassen:",
+ "Only from these groups:" : "Nur aus diesen Gruppen:",
+ "Search groups" : "Gruppen suchen",
"Available groups" : "Verfügbare Gruppen",
"Selected groups" : "Ausgewählte Gruppen",
- "Edit LDAP Query" : "Editiere die LDAP Abfrage",
- "LDAP Filter:" : "LDAP Filter:",
+ "Edit LDAP Query" : "LDAP-Abfrage bearbeiten",
+ "LDAP Filter:" : "LDAP-Filter:",
"The filter specifies which LDAP groups shall have access to the %s instance." : "Der Filter bestimmt, welche LDAP-Gruppen Zugriff auf die %s-Instanz haben sollen.",
"Test Filter" : "Testfilter",
- "Verify settings and count groups" : "Überprüfe die Einstellungen und zähle Gruppen",
- "LDAP / AD Username:" : "LDAP / AD Benutzername:",
- "LDAP / AD Email Address:" : "LDAP / AD Email Adresse:",
+ "Verify settings and count groups" : "Einstellungen überprüfen und Gruppen zählen",
+ "LDAP / AD Username:" : "LDAP-/AD-Benutzername:",
+ "LDAP / AD Email Address:" : "LDAP-/AD-E-Mail-Adresse:",
"Other Attributes:" : "Andere Attribute:",
"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action. Example: \"uid=%%uid\"" : "Bestimmt den Filter, welcher bei einer Anmeldung angewandt wird. %%uid ersetzt den Benutzernamen bei der Anmeldung. Beispiel: \"uid=%%uid\"",
- "Test Loginname" : "Teste den Benutzernamen",
- "Verify settings" : "Überprüfe Einstellungen",
+ "Test Loginname" : "Loginnamen testen",
+ "Verify settings" : "Einstellungen überprüfen",
"1. Server" : "1. Server",
"%s. Server:" : "%s. Server:",
"Host" : "Host",
"You can omit the protocol, except you require SSL. Then start with ldaps://" : "Sie können das Protokoll auslassen, außer wenn Sie SSL benötigen. Beginnen Sie dann mit ldaps://",
"Port" : "Port",
- "Detect Port" : "Ermittle den Port",
+ "Detect Port" : "Port ermitteln",
"User DN" : "Benutzer-DN",
"The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password empty." : "Der DN des Benutzers, mit dem der LDAP-Bind durchgeführt werden soll, z.B. uid=agent,dc=example,dc=com. Für einen anonymen Zugriff lassen Sie DN und Passwort leer.",
"Password" : "Passwort",
"For anonymous access, leave DN and Password empty." : "Lassen Sie die Felder DN und Passwort für einen anonymen Zugang leer.",
"One Base DN per line" : "Einen Basis-DN pro Zeile",
"You can specify Base DN for users and groups in the Advanced tab" : " Sie können die Basis-DN für Benutzer und Gruppen im Reiter „Fortgeschritten“ angeben",
- "Detect Base DN" : "Ermittle die Base DN",
- "Test Base DN" : "Teste die Base DN",
+ "Detect Base DN" : "Base DN ermitteln",
+ "Test Base DN" : "Base DN testen",
"Avoids automatic LDAP requests. Better for bigger setups, but requires some LDAP knowledge." : "Verhindert automatische LDAP-Anfragen. Besser geeignet für größere Installationen, benötigt aber erweiterte LDAP-Kenntnisse.",
"Manually enter LDAP filters (recommended for large directories)" : "LDAP-Filter manuell eingeben (empfohlen für große Verzeichnisse)",
"Limit %s access to users meeting these criteria:" : "Den %s-Zugriff auf Benutzer, die den folgenden Kriterien entsprechen, beschränken:",
"The filter specifies which LDAP users shall have access to the %s instance." : "Der Filter gibt an, welche LDAP-Benutzer Zugriff auf die %s-Instanz haben sollen.",
- "Verify settings and count users" : "Überprüfe Einstellungen und zähle Benutzer",
+ "Verify settings and count users" : "Einstellungen überprüfen und Benutzer zählen",
"Saving" : "Speichern",
"Back" : "Zurück",
"Continue" : "Fortsetzen",
diff --git a/console.php b/console.php
index 3da87b75c8e..2e55accab21 100644
--- a/console.php
+++ b/console.php
@@ -47,9 +47,9 @@ try {
$user = posix_getpwuid(posix_getuid());
$configUser = posix_getpwuid(fileowner(OC::$SERVERROOT . '/config/config.php'));
if ($user['name'] !== $configUser['name']) {
- echo "Console has to be executed with the same user as the web server is operated" . PHP_EOL;
+ echo "Console has to be executed with the user that owns the file config/config.php" . PHP_EOL;
echo "Current user: " . $user['name'] . PHP_EOL;
- echo "Web server user: " . $configUser['name'] . PHP_EOL;
+ echo "Owner of config.php: " . $configUser['name'] . PHP_EOL;
exit(0);
}
}
diff --git a/core/routes.php b/core/routes.php
index b9af507e486..15554397cc1 100644
--- a/core/routes.php
+++ b/core/routes.php
@@ -109,19 +109,19 @@ $this->create('core_ajax_update', '/core/ajax/update.php')
// Sharing routes
$this->create('files_sharing.sharecontroller.showShare', '/s/{token}')->action(function($urlParams) {
- $app = new \OCA\Files_Sharing\Application($urlParams);
+ $app = new \OCA\Files_Sharing\AppInfo\Application($urlParams);
$app->dispatch('ShareController', 'showShare');
});
$this->create('files_sharing.sharecontroller.authenticate', '/s/{token}/authenticate')->post()->action(function($urlParams) {
- $app = new \OCA\Files_Sharing\Application($urlParams);
+ $app = new \OCA\Files_Sharing\AppInfo\Application($urlParams);
$app->dispatch('ShareController', 'authenticate');
});
$this->create('files_sharing.sharecontroller.showAuthenticate', '/s/{token}/authenticate')->get()->action(function($urlParams) {
- $app = new \OCA\Files_Sharing\Application($urlParams);
+ $app = new \OCA\Files_Sharing\AppInfo\Application($urlParams);
$app->dispatch('ShareController', 'showAuthenticate');
});
$this->create('files_sharing.sharecontroller.downloadShare', '/s/{token}/download')->get()->action(function($urlParams) {
- $app = new \OCA\Files_Sharing\Application($urlParams);
+ $app = new \OCA\Files_Sharing\AppInfo\Application($urlParams);
$app->dispatch('ShareController', 'downloadShare');
});
diff --git a/lib/private/avatar.php b/lib/private/avatar.php
index e3c9eb2bb05..61a179810f2 100644
--- a/lib/private/avatar.php
+++ b/lib/private/avatar.php
@@ -8,6 +8,7 @@
* @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Thomas Müller <thomas.mueller@tmit.eu>
+ * @author Lukas Reschke <lukas@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
@@ -26,23 +27,28 @@
*
*/
- namespace OC;
+namespace OC;
- use OC_Image;
+use OC\Files\Filesystem;
+use OC_Image;
/**
* This class gets and sets users avatars.
*/
class Avatar implements \OCP\IAvatar {
-
+ /** @var Files\View */
private $view;
/**
* constructor
* @param string $user user to do avatar-management with
- */
+ * @throws \Exception In case the username is potentially dangerous
+ */
public function __construct ($user) {
+ if(!Filesystem::isValidPath($user)) {
+ throw new \Exception('Username may not contain slashes');
+ }
$this->view = new \OC\Files\View('/'.$user);
}
diff --git a/lib/private/avatarmanager.php b/lib/private/avatarmanager.php
index 0ff4a3444e2..42f711ee249 100644
--- a/lib/private/avatarmanager.php
+++ b/lib/private/avatarmanager.php
@@ -37,6 +37,7 @@ class AvatarManager implements IAvatarManager {
* @see \OCP\IAvatar
* @param string $user the ownCloud user id
* @return \OCP\IAvatar
+ * @throws \Exception In case the username is potentially dangerous
*/
public function getAvatar($user) {
return new Avatar($user);
diff --git a/settings/l10n/de_DE.js b/settings/l10n/de_DE.js
index 88a688b5cd1..967d352d760 100644
--- a/settings/l10n/de_DE.js
+++ b/settings/l10n/de_DE.js
@@ -28,7 +28,7 @@ OC.L10N.register(
"Unable to change password" : "Passwort konnte nicht geändert werden",
"Enabled" : "Aktiviert",
"Not enabled" : "Nicht aktiviert",
- "A problem occurred, please check your log files (Error: %s)" : "Es ist ein Problem aufgetreten, bitte überprüfe Deine Logdateien (Fehler: %s)",
+ "A problem occurred, please check your log files (Error: %s)" : "Es ist ein Problem aufgetreten, bitte überprüfen Sie Ihre Logdateien (Fehler: %s)",
"Migration Completed" : "Migration abgeschlossen",
"Group already exists." : "Gruppe existiert bereits.",
"Unable to add group." : "Gruppe konnte nicht angelegt werden.",
@@ -76,7 +76,7 @@ OC.L10N.register(
"Strong password" : "Starkes Passwort",
"Valid until {date}" : "Gültig bis {date}",
"Delete" : "Löschen",
- "An error occurred. Please upload an ASCII-encoded PEM certificate." : "Es ist ein Fehler aufgetreten. Bitte laden Sei ein ASCII-kodiertes PEM-Zertifikat hoch.",
+ "An error occurred. Please upload an ASCII-encoded PEM certificate." : "Es ist ein Fehler aufgetreten. Bitte laden Sie ein ASCII-kodiertes PEM-Zertifikat hoch.",
"Groups" : "Gruppen",
"Unable to delete {objName}" : "Löschen von {objName} nicht möglich",
"Error creating group" : "Fehler beim Erstellen der Gruppe",
diff --git a/settings/l10n/de_DE.json b/settings/l10n/de_DE.json
index c4958c78c9a..8522a75dd99 100644
--- a/settings/l10n/de_DE.json
+++ b/settings/l10n/de_DE.json
@@ -26,7 +26,7 @@
"Unable to change password" : "Passwort konnte nicht geändert werden",
"Enabled" : "Aktiviert",
"Not enabled" : "Nicht aktiviert",
- "A problem occurred, please check your log files (Error: %s)" : "Es ist ein Problem aufgetreten, bitte überprüfe Deine Logdateien (Fehler: %s)",
+ "A problem occurred, please check your log files (Error: %s)" : "Es ist ein Problem aufgetreten, bitte überprüfen Sie Ihre Logdateien (Fehler: %s)",
"Migration Completed" : "Migration abgeschlossen",
"Group already exists." : "Gruppe existiert bereits.",
"Unable to add group." : "Gruppe konnte nicht angelegt werden.",
@@ -74,7 +74,7 @@
"Strong password" : "Starkes Passwort",
"Valid until {date}" : "Gültig bis {date}",
"Delete" : "Löschen",
- "An error occurred. Please upload an ASCII-encoded PEM certificate." : "Es ist ein Fehler aufgetreten. Bitte laden Sei ein ASCII-kodiertes PEM-Zertifikat hoch.",
+ "An error occurred. Please upload an ASCII-encoded PEM certificate." : "Es ist ein Fehler aufgetreten. Bitte laden Sie ein ASCII-kodiertes PEM-Zertifikat hoch.",
"Groups" : "Gruppen",
"Unable to delete {objName}" : "Löschen von {objName} nicht möglich",
"Error creating group" : "Fehler beim Erstellen der Gruppe",
diff --git a/settings/l10n/ja.js b/settings/l10n/ja.js
index 11862e37b66..98e86129cbc 100644
--- a/settings/l10n/ja.js
+++ b/settings/l10n/ja.js
@@ -4,7 +4,9 @@ OC.L10N.register(
"Security & setup warnings" : "セキュリティ&セットアップ警告",
"Sharing" : "共有",
"External Storage" : "外部ストレージ",
+ "Server-side encryption" : "サーバー側暗号",
"Cron" : "Cron",
+ "Email server" : "メールサーバー",
"Log" : "ログ",
"Tips & tricks" : "Tips & tricks",
"Updates" : "アップデート",
diff --git a/settings/l10n/ja.json b/settings/l10n/ja.json
index 47243d1c55b..1ee6d8f1b08 100644
--- a/settings/l10n/ja.json
+++ b/settings/l10n/ja.json
@@ -2,7 +2,9 @@
"Security & setup warnings" : "セキュリティ&セットアップ警告",
"Sharing" : "共有",
"External Storage" : "外部ストレージ",
+ "Server-side encryption" : "サーバー側暗号",
"Cron" : "Cron",
+ "Email server" : "メールサーバー",
"Log" : "ログ",
"Tips & tricks" : "Tips & tricks",
"Updates" : "アップデート",
diff --git a/tests/lib/avatar.php b/tests/lib/avatar.php
index 9e1f367108d..badee9f34d1 100644
--- a/tests/lib/avatar.php
+++ b/tests/lib/avatar.php
@@ -34,6 +34,29 @@ class Test_Avatar extends \Test\TestCase {
}
}
+ /**
+ * @return array
+ */
+ public function traversalProvider() {
+ return [
+ ['Pot\..\entiallyDangerousUsername'],
+ ['Pot/..\entiallyDangerousUsername'],
+ ['PotentiallyDangerousUsername/..'],
+ ['PotentiallyDangerousUsername\../'],
+ ['/../PotentiallyDangerousUsername'],
+ ];
+ }
+
+ /**
+ * @dataProvider traversalProvider
+ * @expectedException \Exception
+ * @expectedExceptionMessage Username may not contain slashes
+ * @param string $dangerousUsername
+ */
+ public function testAvatarTraversal($dangerousUsername) {
+ new Avatar($dangerousUsername);
+ }
+
public function testAvatar() {
$avatar = new Avatar($this->user);