diff options
21 files changed, 31 insertions, 19 deletions
diff --git a/indra/newview/icons/release/secondlife.icns b/indra/newview/icons/release/secondlife.icns Binary files differindex a30b51b67a..00d9867814 100644 --- a/indra/newview/icons/release/secondlife.icns +++ b/indra/newview/icons/release/secondlife.icns diff --git a/indra/newview/icons/release/secondlife.iconset/icon_128x128.png b/indra/newview/icons/release/secondlife.iconset/icon_128x128.png Binary files differnew file mode 100644 index 0000000000..4c519db265 --- /dev/null +++ b/indra/newview/icons/release/secondlife.iconset/icon_128x128.png diff --git a/indra/newview/icons/release/secondlife.iconset/icon_128x128@2x.png b/indra/newview/icons/release/secondlife.iconset/icon_128x128@2x.png Binary files differnew file mode 100644 index 0000000000..2a3a0092b2 --- /dev/null +++ b/indra/newview/icons/release/secondlife.iconset/icon_128x128@2x.png diff --git a/indra/newview/icons/release/secondlife.iconset/icon_16x16.png b/indra/newview/icons/release/secondlife.iconset/icon_16x16.png Binary files differnew file mode 100644 index 0000000000..fda2f276ee --- /dev/null +++ b/indra/newview/icons/release/secondlife.iconset/icon_16x16.png diff --git a/indra/newview/icons/release/secondlife.iconset/icon_16x16@2x.png b/indra/newview/icons/release/secondlife.iconset/icon_16x16@2x.png Binary files differnew file mode 100644 index 0000000000..aa4a74f204 --- /dev/null +++ b/indra/newview/icons/release/secondlife.iconset/icon_16x16@2x.png diff --git a/indra/newview/icons/release/secondlife.iconset/icon_256x256.png b/indra/newview/icons/release/secondlife.iconset/icon_256x256.png Binary files differnew file mode 100644 index 0000000000..2a3a0092b2 --- /dev/null +++ b/indra/newview/icons/release/secondlife.iconset/icon_256x256.png diff --git a/indra/newview/icons/release/secondlife.iconset/icon_256x256@2x.png b/indra/newview/icons/release/secondlife.iconset/icon_256x256@2x.png Binary files differnew file mode 100644 index 0000000000..4c28add76c --- /dev/null +++ b/indra/newview/icons/release/secondlife.iconset/icon_256x256@2x.png diff --git a/indra/newview/icons/release/secondlife.iconset/icon_32x32.png b/indra/newview/icons/release/secondlife.iconset/icon_32x32.png Binary files differnew file mode 100644 index 0000000000..aa4a74f204 --- /dev/null +++ b/indra/newview/icons/release/secondlife.iconset/icon_32x32.png diff --git a/indra/newview/icons/release/secondlife.iconset/icon_32x32@2x.png b/indra/newview/icons/release/secondlife.iconset/icon_32x32@2x.png Binary files differnew file mode 100644 index 0000000000..23a36f66cb --- /dev/null +++ b/indra/newview/icons/release/secondlife.iconset/icon_32x32@2x.png diff --git a/indra/newview/icons/release/secondlife.iconset/icon_512x512.png b/indra/newview/icons/release/secondlife.iconset/icon_512x512.png Binary files differnew file mode 100644 index 0000000000..4c28add76c --- /dev/null +++ b/indra/newview/icons/release/secondlife.iconset/icon_512x512.png diff --git a/indra/newview/icons/release/secondlife.iconset/icon_512x512@2x.png b/indra/newview/icons/release/secondlife.iconset/icon_512x512@2x.png Binary files differnew file mode 100644 index 0000000000..a53a6697f1 --- /dev/null +++ b/indra/newview/icons/release/secondlife.iconset/icon_512x512@2x.png diff --git a/indra/newview/icons/release/secondlife_1024.png b/indra/newview/icons/release/secondlife_1024.png Binary files differnew file mode 100644 index 0000000000..a53a6697f1 --- /dev/null +++ b/indra/newview/icons/release/secondlife_1024.png diff --git a/indra/newview/icons/release/secondlife_128.png b/indra/newview/icons/release/secondlife_128.png Binary files differdeleted file mode 100644 index 2f21c1c7fc..0000000000 --- a/indra/newview/icons/release/secondlife_128.png +++ /dev/null diff --git a/indra/newview/icons/release/secondlife_16.png b/indra/newview/icons/release/secondlife_16.png Binary files differdeleted file mode 100644 index 68f1427309..0000000000 --- a/indra/newview/icons/release/secondlife_16.png +++ /dev/null diff --git a/indra/newview/icons/release/secondlife_256.png b/indra/newview/icons/release/secondlife_256.png Binary files differdeleted file mode 100644 index 8f324910e7..0000000000 --- a/indra/newview/icons/release/secondlife_256.png +++ /dev/null diff --git a/indra/newview/icons/release/secondlife_32.png b/indra/newview/icons/release/secondlife_32.png Binary files differdeleted file mode 100644 index 2b7cdef03d..0000000000 --- a/indra/newview/icons/release/secondlife_32.png +++ /dev/null diff --git a/indra/newview/icons/release/secondlife_48.png b/indra/newview/icons/release/secondlife_48.png Binary files differdeleted file mode 100644 index c2ef372dd7..0000000000 --- a/indra/newview/icons/release/secondlife_48.png +++ /dev/null diff --git a/indra/newview/lllogininstance.cpp b/indra/newview/lllogininstance.cpp index cbc3744aa3..4bffe7feac 100644 --- a/indra/newview/lllogininstance.cpp +++ b/indra/newview/lllogininstance.cpp @@ -329,6 +329,15 @@ void LLLoginInstance::handleLoginFailure(const LLSD& event) LL_DEBUGS("LLLogin") << "reason " << reason_response << " message " << message_response << LL_ENDL; + + if (response.has("mfa_hash")) + { + mRequestData["params"]["mfa_hash"] = response["mfa_hash"]; + mRequestData["params"]["token"] = ""; + + saveMFAHash(response); + } + // For the cases of critical message or TOS agreement, // start the TOS dialog. The dialog response will be handled // by the LLLoginInstance::handleTOSResponse() callback. @@ -593,6 +602,24 @@ bool LLLoginInstance::handleMFAChallenge(LLSD const & notif, LLSD const & respon return true; } +void LLLoginInstance::saveMFAHash(LLSD const& response) +{ + std::string grid(LLGridManager::getInstance()->getGridId()); + std::string user_id(LLStartUp::getUserId()); + + // Only save mfa_hash for future logins if the user wants their info remembered. + if (response.has("mfa_hash") && gSavedSettings.getBOOL("RememberUser") && LLLoginInstance::getInstance()->saveMFA()) + { + gSecAPIHandler->addToProtectedMap("mfa_hash", grid, user_id, response["mfa_hash"]); + } + else if (!LLLoginInstance::getInstance()->saveMFA()) + { + gSecAPIHandler->removeFromProtectedMap("mfa_hash", grid, user_id); + } + // TODO(brad) - related to SL-17223 consider building a better interface that sync's automatically + gSecAPIHandler->syncProtectedMap(); +} + std::string construct_start_string() { std::string start; diff --git a/indra/newview/lllogininstance.h b/indra/newview/lllogininstance.h index 748909c069..941b378b14 100644 --- a/indra/newview/lllogininstance.h +++ b/indra/newview/lllogininstance.h @@ -70,6 +70,8 @@ public: void setNotificationsInterface(LLNotificationsInterface* ni) { mNotifications = ni; } LLNotificationsInterface& getNotificationsInterface() const { return *mNotifications; } + void saveMFAHash(LLSD const& response); + private: typedef std::shared_ptr<LLEventAPI::Response> ResponsePtr; void constructAuthParams(LLPointer<LLCredential> user_credentials); diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp index 4f60f98b49..cc4f49c0b4 100644 --- a/indra/newview/llstartup.cpp +++ b/indra/newview/llstartup.cpp @@ -3884,25 +3884,7 @@ bool process_login_success_response() LLViewerMedia::getInstance()->openIDSetup(openid_url, openid_token); } - - // Only save mfa_hash for future logins if the user wants their info remembered. - if(response.has("mfa_hash") - && gSavedSettings.getBOOL("RememberUser") - && LLLoginInstance::getInstance()->saveMFA()) - { - std::string grid(LLGridManager::getInstance()->getGridId()); - std::string user_id(gUserCredential->userID()); - gSecAPIHandler->addToProtectedMap("mfa_hash", grid, user_id, response["mfa_hash"]); - // 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(); - } + LLLoginInstance::getInstance()->saveMFAHash(response); bool success = false; // JC: gesture loading done below, when we have an asset system diff --git a/indra/newview/tests/lllogininstance_test.cpp b/indra/newview/tests/lllogininstance_test.cpp index bff2289a7c..29ca903256 100644 --- a/indra/newview/tests/lllogininstance_test.cpp +++ b/indra/newview/tests/lllogininstance_test.cpp @@ -66,6 +66,7 @@ static LLEventStream gTestPump("test_pump"); #include "../llstartup.h" LLSLURL LLStartUp::sStartSLURL; LLSLURL& LLStartUp::getStartSLURL() { return sStartSLURL; } +std::string LLStartUp::getUserId() { return ""; }; #include "lllogin.h" |