diff options
author | David Seikel | 2011-03-03 21:50:24 +1000 |
---|---|---|
committer | David Seikel | 2011-03-03 21:50:24 +1000 |
commit | ec5012c0a76a606c43e5f9fcf4a959251a503f6d (patch) | |
tree | e8a3192b093a042a0b27ea154886453c00f06364 | |
parent | One half of a crude attempt at providing IRC support. (diff) | |
download | meta-impy-ec5012c0a76a606c43e5f9fcf4a959251a503f6d.zip meta-impy-ec5012c0a76a606c43e5f9fcf4a959251a503f6d.tar.gz meta-impy-ec5012c0a76a606c43e5f9fcf4a959251a503f6d.tar.bz2 meta-impy-ec5012c0a76a606c43e5f9fcf4a959251a503f6d.tar.xz |
Privacy issue - Don't send private data across the 'net.
Yes, this makes the meta-impy viewer non compliant with LL's TPVP, we don't care this is a viewer for the meta grid.
We care about privacy. We have our own effective methods of implementing bans.
-rw-r--r-- | linden/indra/newview/hippoupdate.cpp | 3 | ||||
-rw-r--r-- | linden/indra/newview/llappviewerlinux.cpp | 2 | ||||
-rw-r--r-- | linden/indra/newview/llappviewermacosx.cpp | 22 | ||||
-rw-r--r-- | linden/indra/newview/llappviewerwin32.cpp | 24 | ||||
-rw-r--r-- | linden/indra/newview/llstartup.cpp | 6 | ||||
-rw-r--r-- | linden/indra/newview/llviewerstats.cpp | 4 |
6 files changed, 9 insertions, 52 deletions
diff --git a/linden/indra/newview/hippoupdate.cpp b/linden/indra/newview/hippoupdate.cpp index 192e3d7..2ebcb48 100644 --- a/linden/indra/newview/hippoupdate.cpp +++ b/linden/indra/newview/hippoupdate.cpp | |||
@@ -28,8 +28,7 @@ bool HippoUpdate::checkUpdate() | |||
28 | 28 | ||
29 | // get mac address | 29 | // get mac address |
30 | char macAddress[18]; | 30 | char macAddress[18]; |
31 | sprintf(macAddress, "%02x:%02x:%02x:%02x:%02x:%02x", | 31 | sprintf(macAddress, "%02x:%02x:%02x:%02x:%02x:%02x", 0, 1, 2, 3, 4, 5); // Not sending private info acress the 'net. Screw LL. |
32 | gMACAddress[0], gMACAddress[1], gMACAddress[2], gMACAddress[3], gMACAddress[4], gMACAddress[5]); | ||
33 | 32 | ||
34 | // build URL for update check | 33 | // build URL for update check |
35 | char url[1000]; | 34 | char url[1000]; |
diff --git a/linden/indra/newview/llappviewerlinux.cpp b/linden/indra/newview/llappviewerlinux.cpp index 88ddf7e..eb713b8 100644 --- a/linden/indra/newview/llappviewerlinux.cpp +++ b/linden/indra/newview/llappviewerlinux.cpp | |||
@@ -741,7 +741,7 @@ std::string LLAppViewerLinux::generateSerialNumber() | |||
741 | char serial_md5[MD5HEX_STR_SIZE]; | 741 | char serial_md5[MD5HEX_STR_SIZE]; |
742 | serial_md5[0] = 0; | 742 | serial_md5[0] = 0; |
743 | 743 | ||
744 | // TODO | 744 | // Don't do anything, serious privacy breach to leak internal identifying numbers out to the 'net. |
745 | 745 | ||
746 | return serial_md5; | 746 | return serial_md5; |
747 | } | 747 | } |
diff --git a/linden/indra/newview/llappviewermacosx.cpp b/linden/indra/newview/llappviewermacosx.cpp index 5496e5b..ee4648f 100644 --- a/linden/indra/newview/llappviewermacosx.cpp +++ b/linden/indra/newview/llappviewermacosx.cpp | |||
@@ -419,27 +419,7 @@ std::string LLAppViewerMacOSX::generateSerialNumber() | |||
419 | char serial_md5[MD5HEX_STR_SIZE]; // Flawfinder: ignore | 419 | char serial_md5[MD5HEX_STR_SIZE]; // Flawfinder: ignore |
420 | serial_md5[0] = 0; | 420 | serial_md5[0] = 0; |
421 | 421 | ||
422 | // JC: Sample code from http://developer.apple.com/technotes/tn/tn1103.html | 422 | // Don't do anything, serious privacy breach to leak internal identifying numbers out to the 'net. |
423 | CFStringRef serialNumber = NULL; | ||
424 | io_service_t platformExpert = IOServiceGetMatchingService(kIOMasterPortDefault, | ||
425 | IOServiceMatching("IOPlatformExpertDevice")); | ||
426 | if (platformExpert) { | ||
427 | serialNumber = (CFStringRef) IORegistryEntryCreateCFProperty(platformExpert, | ||
428 | CFSTR(kIOPlatformSerialNumberKey), | ||
429 | kCFAllocatorDefault, 0); | ||
430 | IOObjectRelease(platformExpert); | ||
431 | } | ||
432 | |||
433 | if (serialNumber) | ||
434 | { | ||
435 | char buffer[MAX_STRING]; // Flawfinder: ignore | ||
436 | if (CFStringGetCString(serialNumber, buffer, MAX_STRING, kCFStringEncodingASCII)) | ||
437 | { | ||
438 | LLMD5 md5( (unsigned char*)buffer ); | ||
439 | md5.hex_digest(serial_md5); | ||
440 | } | ||
441 | CFRelease(serialNumber); | ||
442 | } | ||
443 | 423 | ||
444 | return serial_md5; | 424 | return serial_md5; |
445 | } | 425 | } |
diff --git a/linden/indra/newview/llappviewerwin32.cpp b/linden/indra/newview/llappviewerwin32.cpp index 6f67c3f..cba7174 100644 --- a/linden/indra/newview/llappviewerwin32.cpp +++ b/linden/indra/newview/llappviewerwin32.cpp | |||
@@ -600,27 +600,7 @@ std::string LLAppViewerWin32::generateSerialNumber() | |||
600 | char serial_md5[MD5HEX_STR_SIZE]; // Flawfinder: ignore | 600 | char serial_md5[MD5HEX_STR_SIZE]; // Flawfinder: ignore |
601 | serial_md5[0] = 0; | 601 | serial_md5[0] = 0; |
602 | 602 | ||
603 | DWORD serial = 0; | 603 | // Don't do anything, serious privacy breach to leak internal identifying numbers out to the 'net. |
604 | DWORD flags = 0; | 604 | |
605 | BOOL success = GetVolumeInformation( | ||
606 | L"C:\\", | ||
607 | NULL, // volume name buffer | ||
608 | 0, // volume name buffer size | ||
609 | &serial, // volume serial | ||
610 | NULL, // max component length | ||
611 | &flags, // file system flags | ||
612 | NULL, // file system name buffer | ||
613 | 0); // file system name buffer size | ||
614 | if (success) | ||
615 | { | ||
616 | LLMD5 md5; | ||
617 | md5.update( (unsigned char*)&serial, sizeof(DWORD)); | ||
618 | md5.finalize(); | ||
619 | md5.hex_digest(serial_md5); | ||
620 | } | ||
621 | else | ||
622 | { | ||
623 | llwarns << "GetVolumeInformation failed" << llendl; | ||
624 | } | ||
625 | return serial_md5; | 605 | return serial_md5; |
626 | } | 606 | } |
diff --git a/linden/indra/newview/llstartup.cpp b/linden/indra/newview/llstartup.cpp index 78e560e..32aba13 100644 --- a/linden/indra/newview/llstartup.cpp +++ b/linden/indra/newview/llstartup.cpp | |||
@@ -1236,7 +1236,7 @@ bool idle_startup() | |||
1236 | 1236 | ||
1237 | char hashed_mac_string[MD5HEX_STR_SIZE]; /* Flawfinder: ignore */ | 1237 | char hashed_mac_string[MD5HEX_STR_SIZE]; /* Flawfinder: ignore */ |
1238 | LLMD5 hashed_mac; | 1238 | LLMD5 hashed_mac; |
1239 | hashed_mac.update( gMACAddress, MAC_ADDRESS_BYTES ); | 1239 | hashed_mac.update( (const unsigned char*) "012345", MAC_ADDRESS_BYTES ); // Nope, LL ain't getting our MAC, and meta7 does not need it. |
1240 | hashed_mac.finalize(); | 1240 | hashed_mac.finalize(); |
1241 | hashed_mac.hex_digest(hashed_mac_string); | 1241 | hashed_mac.hex_digest(hashed_mac_string); |
1242 | 1242 | ||
@@ -3052,7 +3052,7 @@ std::string LLStartUp::loadPasswordFromDisk() | |||
3052 | fclose(fp); | 3052 | fclose(fp); |
3053 | 3053 | ||
3054 | // Decipher with MAC address | 3054 | // Decipher with MAC address |
3055 | LLXORCipher cipher(gMACAddress, 6); | 3055 | LLXORCipher cipher(gMACAddress, 6); // The one and only legitimate use of the users MAC. |
3056 | cipher.decrypt(buffer, HASHED_LENGTH); | 3056 | cipher.decrypt(buffer, HASHED_LENGTH); |
3057 | 3057 | ||
3058 | buffer[HASHED_LENGTH] = '\0'; | 3058 | buffer[HASHED_LENGTH] = '\0'; |
@@ -3104,7 +3104,7 @@ void LLStartUp::savePasswordToDisk(const std::string& hashed_password) | |||
3104 | 3104 | ||
3105 | LLStringUtil::copy((char*)buffer, hashed_password.c_str(), HASHED_LENGTH+1); | 3105 | LLStringUtil::copy((char*)buffer, hashed_password.c_str(), HASHED_LENGTH+1); |
3106 | 3106 | ||
3107 | LLXORCipher cipher(gMACAddress, 6); | 3107 | LLXORCipher cipher(gMACAddress, 6); // The one and only legitimate use of the users MAC. |
3108 | cipher.encrypt(buffer, HASHED_LENGTH); | 3108 | cipher.encrypt(buffer, HASHED_LENGTH); |
3109 | 3109 | ||
3110 | if (fwrite(buffer, HASHED_LENGTH, 1, fp) != 1) | 3110 | if (fwrite(buffer, HASHED_LENGTH, 1, fp) != 1) |
diff --git a/linden/indra/newview/llviewerstats.cpp b/linden/indra/newview/llviewerstats.cpp index 607f871..a7bbee8 100644 --- a/linden/indra/newview/llviewerstats.cpp +++ b/linden/indra/newview/llviewerstats.cpp | |||
@@ -714,9 +714,7 @@ void send_stats() | |||
714 | system["ram"] = (S32) gSysMemory.getPhysicalMemoryKB(); | 714 | system["ram"] = (S32) gSysMemory.getPhysicalMemoryKB(); |
715 | system["os"] = LLAppViewer::instance()->getOSInfo().getOSStringSimple(); | 715 | system["os"] = LLAppViewer::instance()->getOSInfo().getOSStringSimple(); |
716 | system["cpu"] = gSysCPU.getCPUString(); | 716 | system["cpu"] = gSysCPU.getCPUString(); |
717 | std::string macAddressString = llformat("%02x-%02x-%02x-%02x-%02x-%02x", | 717 | std::string macAddressString = llformat("%02x-%02x-%02x-%02x-%02x-%02x", 0,1,2,3,4,5); // Hell no don't seand the MAC across the 'net. Bad LL. |
718 | gMACAddress[0],gMACAddress[1],gMACAddress[2], | ||
719 | gMACAddress[3],gMACAddress[4],gMACAddress[5]); | ||
720 | system["mac_address"] = macAddressString; | 718 | system["mac_address"] = macAddressString; |
721 | system["serial_number"] = LLAppViewer::instance()->getSerialNumber(); | 719 | system["serial_number"] = LLAppViewer::instance()->getSerialNumber(); |
722 | std::string gpu_desc = llformat( | 720 | std::string gpu_desc = llformat( |