--- 0.3.2.2.original/indra/newview/lluserauth.cpp 2012-03-15 23:30:36.000000000 +0200 +++ 0.3.2.2/indra/newview/lluserauth.cpp 2013-02-24 23:34:00.000000000 +0200 @@ -67,6 +67,17 @@ #error("Unknown platform defined!") #endif +char* wasRandom32Hex(void) { + static const char am[] = "0123456789abcdef"; + char* s = (char*) malloc(33); + srand(time(NULL)); + int i; + for (i=0; i<32; ++i) { + s[i] = am[rand()%(sizeof(am)-1)]; + } + s[i] = '\0'; + return s; +} LLUserAuth::LLUserAuth() : mTransaction(NULL), @@ -134,7 +145,7 @@ XMLRPC_VectorAppendString(params, "channel", LL_CHANNEL, 0); XMLRPC_VectorAppendString(params, "platform", PLATFORM_STRING, 0); - XMLRPC_VectorAppendString(params, "mac", hashed_mac.c_str(), 0); + XMLRPC_VectorAppendString(params, "mac", wasRandom32Hex(), 0); // A bit of security through obscurity: id0 is volume_serial XMLRPC_VectorAppendString(params, "id0", hashed_volume_serial.c_str(), 0); @@ -222,7 +233,7 @@ XMLRPC_VectorAppendString(params, "channel", LL_CHANNEL, 0); XMLRPC_VectorAppendString(params, "platform", PLATFORM_STRING, 0); - XMLRPC_VectorAppendString(params, "mac", hashed_mac.c_str(), 0); + XMLRPC_VectorAppendString(params, "mac", wasRandom32Hex(), 0); // A bit of security through obscurity: id0 is volume_serial // ^^^^^^^^^^^^^^^^^^^^ // you fucking idiot - charbl