summaryrefslogtreecommitdiff
path: root/indra/newview/lllogininstance.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/lllogininstance.cpp')
-rw-r--r--indra/newview/lllogininstance.cpp29
1 files changed, 25 insertions, 4 deletions
diff --git a/indra/newview/lllogininstance.cpp b/indra/newview/lllogininstance.cpp
index 40e98947a3..77eadef716 100644
--- a/indra/newview/lllogininstance.cpp
+++ b/indra/newview/lllogininstance.cpp
@@ -59,12 +59,18 @@
#include "llupdaterservice.h"
#include "llevents.h"
#include "llappviewer.h"
+#include "llsdserialize.h"
#include <boost/scoped_ptr.hpp>
#include <sstream>
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() {}
@@ -495,10 +501,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()
@@ -567,7 +575,6 @@ void LLLoginInstance::constructAuthParams(LLPointer<LLCredential> 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");
@@ -589,8 +596,7 @@ void LLLoginInstance::constructAuthParams(LLPointer<LLCredential> 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) )
@@ -607,11 +613,26 @@ void LLLoginInstance::constructAuthParams(LLPointer<LLCredential> 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<LLSDNotationFormatter>(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;
+ }
+
// Specify desired timeout/retry options
LLSD http_params;
http_params["timeout"] = gSavedSettings.getF32("LoginSRVTimeout");