From 1a5fa01fb894d8e7da575d313fd5270fe4289ca7 Mon Sep 17 00:00:00 2001 From: andreykproductengine Date: Mon, 24 Jul 2017 17:06:12 +0300 Subject: MAINT-7495 Viewer retries too many time apon 504 from login.cgi --- indra/newview/lllogininstance.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'indra/newview/lllogininstance.cpp') diff --git a/indra/newview/lllogininstance.cpp b/indra/newview/lllogininstance.cpp index b4d0bb6823..40e98947a3 100644 --- a/indra/newview/lllogininstance.cpp +++ b/indra/newview/lllogininstance.cpp @@ -63,6 +63,8 @@ #include #include +const S32 LOGIN_MAX_RETRIES = 3; + class LLLoginInstance::Disposable { public: virtual ~Disposable() {} @@ -610,13 +612,16 @@ void LLLoginInstance::constructAuthParams(LLPointer user_credentia request_params["host_id"] = gSavedSettings.getString("HostID"); request_params["extended_errors"] = true; // request message_id and message_args + // Specify desired timeout/retry options + LLSD http_params; + http_params["timeout"] = gSavedSettings.getF32("LoginSRVTimeout"); + http_params["retries"] = LOGIN_MAX_RETRIES; + mRequestData.clear(); mRequestData["method"] = "login_to_simulator"; mRequestData["params"] = request_params; mRequestData["options"] = requested_options; - - mRequestData["cfg_srv_timeout"] = gSavedSettings.getF32("LoginSRVTimeout"); - mRequestData["cfg_srv_pump"] = gSavedSettings.getString("LoginSRVPump"); + mRequestData["http_params"] = http_params; } bool LLLoginInstance::handleLoginEvent(const LLSD& event) -- cgit v1.2.3 From b3ceeb6d9cf92613a06337b5985e225c612e53d5 Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Thu, 24 Aug 2017 10:37:59 -0400 Subject: MAINT-7594: add platform name string and address size to login request for crash stats (and add request parameter logging at DEBUG) --- indra/newview/lllogininstance.cpp | 29 +++++++++++++++++++++++++---- 1 file changed, 25 insertions(+), 4 deletions(-) (limited to 'indra/newview/lllogininstance.cpp') diff --git a/indra/newview/lllogininstance.cpp b/indra/newview/lllogininstance.cpp index b4d0bb6823..bacd88e0e0 100644 --- a/indra/newview/lllogininstance.cpp +++ b/indra/newview/lllogininstance.cpp @@ -59,10 +59,16 @@ #include "llupdaterservice.h" #include "llevents.h" #include "llappviewer.h" +#include "llsdserialize.h" #include #include +// this can be removed once it is defined by the build for all forks +#ifndef ADDRESS_SIZE +# define ADDRESS_SIZE 32 +#endif + class LLLoginInstance::Disposable { public: virtual ~Disposable() {} @@ -493,10 +499,12 @@ LLLoginInstance::LLLoginInstance() : } void LLLoginInstance::setPlatformInfo(const std::string platform, - const std::string platform_version) + const std::string platform_version, + const std::string platform_name) { mPlatform = platform; mPlatformVersion = platform_version; + mPlatformVersionName = platform_name; } LLLoginInstance::~LLLoginInstance() @@ -565,7 +573,6 @@ void LLLoginInstance::constructAuthParams(LLPointer user_credentia requested_options.append("event_notifications"); requested_options.append("classified_categories"); requested_options.append("adult_compliant"); - //requested_options.append("inventory-targets"); requested_options.append("buddy-list"); requested_options.append("newuser-config"); requested_options.append("ui-config"); @@ -587,8 +594,7 @@ void LLLoginInstance::constructAuthParams(LLPointer user_credentia requested_options.append("god-connect"); } - // (re)initialize the request params with creds. - LLSD request_params = user_credential->getLoginParams(); + LLSD request_params; unsigned char hashed_unique_id_string[MD5HEX_STR_SIZE]; if ( ! llHashedUniqueID(hashed_unique_id_string) ) @@ -605,11 +611,26 @@ void LLLoginInstance::constructAuthParams(LLPointer user_credentia request_params["version"] = LLVersionInfo::getVersion(); request_params["channel"] = LLVersionInfo::getChannel(); request_params["platform"] = mPlatform; + request_params["address_size"] = ADDRESS_SIZE; request_params["platform_version"] = mPlatformVersion; + request_params["platform_string"] = mPlatformVersionName; request_params["id0"] = mSerialNumber; request_params["host_id"] = gSavedSettings.getString("HostID"); request_params["extended_errors"] = true; // request message_id and message_args + // log request_params _before_ adding the credentials + LL_DEBUGS("LLLogin") << "Login parameters: " << LLSDOStreamer(request_params) << LL_ENDL; + + // Copy the credentials into the request after logging the rest + LLSD credentials(user_credential->getLoginParams()); + for (LLSD::map_const_iterator it = credentials.beginMap(); + it != credentials.endMap(); + it++ + ) + { + request_params[it->first] = it->second; + } + mRequestData.clear(); mRequestData["method"] = "login_to_simulator"; mRequestData["params"] = request_params; -- cgit v1.2.3 From 545b03da7110b9b37f0275bb34e8089f10770e0d Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Fri, 22 Sep 2017 15:33:33 -0400 Subject: MAINT-7827: suppress doubled notices on various login problems --- indra/newview/lllogininstance.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'indra/newview/lllogininstance.cpp') diff --git a/indra/newview/lllogininstance.cpp b/indra/newview/lllogininstance.cpp index bb55a3a6c0..242a845abe 100644 --- a/indra/newview/lllogininstance.cpp +++ b/indra/newview/lllogininstance.cpp @@ -330,10 +330,12 @@ void LLLoginInstance::handleLoginFailure(const LLSD& event) data["VERSION"] = required_version; LLNotificationsUtil::add("RequiredUpdate", data, LLSD::emptyMap(), boost::bind(&LLLoginInstance::handleLoginDisallowed, this, _1, _2)); } - else if(reason_response == "key") + else if( reason_response == "key" + || reason_response == "presence" + || reason_response == "connect" + ) { - // this is a password problem or other restriction - // an appropriate message has already been displayed + // these are events that have already been communicated elsewhere attemptComplete(); } else -- cgit v1.2.3 From eafb0a32e3be68c0a4282cae46faf16d458e3877 Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Thu, 12 Oct 2017 08:25:12 -0400 Subject: DRTVWR-418: Remove redundant assignment per Ansariel Hiller. --- indra/newview/lllogininstance.cpp | 6 ------ 1 file changed, 6 deletions(-) (limited to 'indra/newview/lllogininstance.cpp') diff --git a/indra/newview/lllogininstance.cpp b/indra/newview/lllogininstance.cpp index c28755b12e..8d361d3161 100644 --- a/indra/newview/lllogininstance.cpp +++ b/indra/newview/lllogininstance.cpp @@ -64,11 +64,6 @@ const S32 LOGIN_MAX_RETRIES = 3; -// this can be removed once it is defined by the build for all forks -#ifndef ADDRESS_SIZE -# define ADDRESS_SIZE 32 -#endif - class LLLoginInstance::Disposable { public: virtual ~Disposable() {} @@ -217,7 +212,6 @@ void LLLoginInstance::constructAuthParams(LLPointer user_credentia request_params["platform"] = mPlatform; request_params["address_size"] = ADDRESS_SIZE; request_params["platform_version"] = mPlatformVersion; - request_params["address_size"] = ADDRESS_SIZE; request_params["platform_string"] = mPlatformVersionName; request_params["id0"] = mSerialNumber; request_params["host_id"] = gSavedSettings.getString("HostID"); -- cgit v1.2.3