From d36b563e4bd86ee382c0248a4a6773d5a2abe0fa Mon Sep 17 00:00:00 2001 From: RainLoop Team Date: Wed, 5 Jul 2017 22:28:17 +0300 Subject: [PATCH] Fix TFA auth --- .../0.0.0/app/libraries/RainLoop/Actions.php | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/rainloop/v/0.0.0/app/libraries/RainLoop/Actions.php b/rainloop/v/0.0.0/app/libraries/RainLoop/Actions.php index b6aaa4ffc..7a47f42ab 100644 --- a/rainloop/v/0.0.0/app/libraries/RainLoop/Actions.php +++ b/rainloop/v/0.0.0/app/libraries/RainLoop/Actions.php @@ -2291,25 +2291,19 @@ NewThemeLink IncludeCss LoadingDescriptionEsc TemplatesLink LangLink IncludeBack { $this->Logger()->Write('TFA: Verify Code for '.$oAccount->ParentEmailHelper().' account.'); - $bGood = false; + $bUseBackupCode = false; if (6 < \strlen($sAdditionalCode) && !empty($aData['BackupCodes'])) { $aBackupCodes = \explode(' ', \trim(\preg_replace('/[^\d]+/', ' ', $aData['BackupCodes']))); - $bGood = \in_array($sAdditionalCode, $aBackupCodes); + $bUseBackupCode = \in_array($sAdditionalCode, $aBackupCodes); - if ($bGood) + if ($bUseBackupCode) { $this->removeBackupCodeFromTwoFactorInfo($oAccount->ParentEmailHelper(), $sAdditionalCode); } } - if ($bAdditionalCodeSignMe) - { - \RainLoop\Utils::SetCookie(self::AUTH_TFA_SIGN_ME_TOKEN_KEY, $sSecretHash, - \time() + 60 * 60 * 24 * 14); - } - - if (!$bGood && !$this->TwoFactorAuthProvider()->VerifyCode($aData['Secret'], $sAdditionalCode)) + if (!$bUseBackupCode && !$this->TwoFactorAuthProvider()->VerifyCode($aData['Secret'], $sAdditionalCode)) { $this->loginErrorDelay(); @@ -2317,6 +2311,12 @@ NewThemeLink IncludeCss LoadingDescriptionEsc TemplatesLink LangLink IncludeBack throw new \RainLoop\Exceptions\ClientException(\RainLoop\Notifications::AccountTwoFactorAuthError); } + + if ($bAdditionalCodeSignMe) + { + \RainLoop\Utils::SetCookie(self::AUTH_TFA_SIGN_ME_TOKEN_KEY, $sSecretHash, + \time() + 60 * 60 * 24 * 14); + } } } }