summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorLukas Reschke <lukas@statuscode.ch>2016-08-30 18:43:01 +0200
committerGitHub <noreply@github.com>2016-08-30 18:43:01 +0200
commit57f9117843afe403b8324a9e73c83c4849b3143b (patch)
tree095d3ab9c9257727d4cfb7d45ea5d442ef2dc24d /lib
parent2a6193e7aadbf41d454f4002773191cc503696b4 (diff)
parent6c93fe08f53bff474921d150edabb27ca630edd7 (diff)
downloadnextcloud-server-57f9117843afe403b8324a9e73c83c4849b3143b.tar.gz
nextcloud-server-57f9117843afe403b8324a9e73c83c4849b3143b.zip
Merge pull request #1087 from nextcloud/get-delay-twice
dont get bruteforce delay twice
Diffstat (limited to 'lib')
-rw-r--r--lib/private/Security/Bruteforce/Throttler.php5
-rw-r--r--lib/private/User/Session.php3
2 files changed, 5 insertions, 3 deletions
diff --git a/lib/private/Security/Bruteforce/Throttler.php b/lib/private/Security/Bruteforce/Throttler.php
index 11a343918c6..031c5ffd411 100644
--- a/lib/private/Security/Bruteforce/Throttler.php
+++ b/lib/private/Security/Bruteforce/Throttler.php
@@ -225,8 +225,11 @@ class Throttler {
* Will sleep for the defined amount of time
*
* @param string $ip
+ * @return int the time spent sleeping
*/
public function sleepDelay($ip) {
- usleep($this->getDelay($ip) * 1000);
+ $delay = $this->getDelay($ip);
+ usleep($delay * 1000);
+ return $delay;
}
}
diff --git a/lib/private/User/Session.php b/lib/private/User/Session.php
index 3b357b69bcf..dec959820f8 100644
--- a/lib/private/User/Session.php
+++ b/lib/private/User/Session.php
@@ -309,8 +309,7 @@ class Session implements IUserSession, Emitter {
$password,
IRequest $request,
OC\Security\Bruteforce\Throttler $throttler) {
- $currentDelay = $throttler->getDelay($request->getRemoteAddress());
- $throttler->sleepDelay($request->getRemoteAddress());
+ $currentDelay = $throttler->sleepDelay($request->getRemoteAddress());
$isTokenPassword = $this->isTokenPassword($password);
if (!$isTokenPassword && $this->isTokenAuthEnforced()) {