summaryrefslogtreecommitdiff
path: root/indra/newview/llstartup.cpp
diff options
context:
space:
mode:
authorAndrey Kleshchev <andreykproductengine@lindenlab.com>2023-09-13 18:50:42 +0300
committerakleshchev <117672381+akleshchev@users.noreply.github.com>2023-09-15 03:07:29 +0300
commit69a98a8465f910d58911456dfe840a7b829ccc65 (patch)
treef4ccde3382f4dd13e8cc31a84a7bad4cafb09f3a /indra/newview/llstartup.cpp
parent76c6dc025d39adba54cff2c112337274efaddd10 (diff)
SL-20278 Disconnect saving MFA from saving password
Diffstat (limited to 'indra/newview/llstartup.cpp')
-rw-r--r--indra/newview/llstartup.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp
index ced6ffa32e..ad87fca25b 100644
--- a/indra/newview/llstartup.cpp
+++ b/indra/newview/llstartup.cpp
@@ -3795,7 +3795,9 @@ bool process_login_success_response()
// Only save mfa_hash for future logins if the user wants their info remembered.
- if(response.has("mfa_hash") && gSavedSettings.getBOOL("RememberUser") && gSavedSettings.getBOOL("RememberPassword"))
+ if(response.has("mfa_hash")
+ && gSavedSettings.getBOOL("RememberUser")
+ && LLLoginInstance::getInstance()->saveMFA())
{
std::string grid(LLGridManager::getInstance()->getGridId());
std::string user_id(gUserCredential->userID());
@@ -3803,6 +3805,13 @@ bool process_login_success_response()
// TODO(brad) - related to SL-17223 consider building a better interface that sync's automatically
gSecAPIHandler->syncProtectedMap();
}
+ else if (!LLLoginInstance::getInstance()->saveMFA())
+ {
+ std::string grid(LLGridManager::getInstance()->getGridId());
+ std::string user_id(gUserCredential->userID());
+ gSecAPIHandler->removeFromProtectedMap("mfa_hash", grid, user_id);
+ gSecAPIHandler->syncProtectedMap();
+ }
bool success = false;
// JC: gesture loading done below, when we have an asset system