From 7190ce9a88fda177eb3cc6b43104ceffd7ac2291 Mon Sep 17 00:00:00 2001 From: Stephen Birarda Date: Tue, 25 Mar 2014 14:33:53 -0700 Subject: [PATCH 1/2] remove loadRandomIdentifier for STUN requests, use UUID --- libraries/shared/src/NodeList.cpp | 5 ++--- libraries/shared/src/SharedUtil.cpp | 9 --------- libraries/shared/src/SharedUtil.h | 2 -- 3 files changed, 2 insertions(+), 14 deletions(-) diff --git a/libraries/shared/src/NodeList.cpp b/libraries/shared/src/NodeList.cpp index 95417f4f71..b2a494aa32 100644 --- a/libraries/shared/src/NodeList.cpp +++ b/libraries/shared/src/NodeList.cpp @@ -413,9 +413,8 @@ void NodeList::sendSTUNRequest() { // transaction ID (random 12-byte unsigned integer) const uint NUM_TRANSACTION_ID_BYTES = 12; - unsigned char transactionID[NUM_TRANSACTION_ID_BYTES]; - loadRandomIdentifier(transactionID, NUM_TRANSACTION_ID_BYTES); - memcpy(stunRequestPacket + packetIndex, &transactionID, sizeof(transactionID)); + QUuid randomUUID = QUuid::createUuid(); + memcpy(stunRequestPacket + packetIndex, randomUUID.toRfc4122().data(), NUM_TRANSACTION_ID_BYTES); // lookup the IP for the STUN server static HifiSockAddr stunSockAddr(STUN_SERVER_HOSTNAME, STUN_SERVER_PORT); diff --git a/libraries/shared/src/SharedUtil.cpp b/libraries/shared/src/SharedUtil.cpp index 882d4719c8..efd5180d03 100644 --- a/libraries/shared/src/SharedUtil.cpp +++ b/libraries/shared/src/SharedUtil.cpp @@ -206,15 +206,6 @@ bool isInEnvironment(const char* environment) { } } -void loadRandomIdentifier(unsigned char* identifierBuffer, int numBytes) { - // seed the the random number generator - srand(time(NULL)); - - for (int i = 0; i < numBytes; i++) { - identifierBuffer[i] = rand() % 256; - } -} - ////////////////////////////////////////////////////////////////////////////////////////// // Function: getCmdOption() // Description: Handy little function to tell you if a command line flag and option was diff --git a/libraries/shared/src/SharedUtil.h b/libraries/shared/src/SharedUtil.h index 439b85aa54..d8d686c63b 100644 --- a/libraries/shared/src/SharedUtil.h +++ b/libraries/shared/src/SharedUtil.h @@ -96,8 +96,6 @@ int getNthBit(unsigned char byte, int ordinal); /// determines the bit placement bool isInEnvironment(const char* environment); -void loadRandomIdentifier(unsigned char* identifierBuffer, int numBytes); - const char* getCmdOption(int argc, const char * argv[],const char* option); bool cmdOptionExists(int argc, const char * argv[],const char* option); From f0f3cf7282d763e8e54b08578462cf739079273b Mon Sep 17 00:00:00 2001 From: Stephen Birarda Date: Tue, 25 Mar 2014 14:36:02 -0700 Subject: [PATCH 2/2] remove seed to random number generator that is no longer needed --- libraries/script-engine/src/ScriptEngine.cpp | 6 ------ 1 file changed, 6 deletions(-) diff --git a/libraries/script-engine/src/ScriptEngine.cpp b/libraries/script-engine/src/ScriptEngine.cpp index e880760a1d..c0834aad9d 100644 --- a/libraries/script-engine/src/ScriptEngine.cpp +++ b/libraries/script-engine/src/ScriptEngine.cpp @@ -235,12 +235,6 @@ void ScriptEngine::init() { // let the VoxelPacketSender know how frequently we plan to call it _voxelsScriptingInterface.getVoxelPacketSender()->setProcessCallIntervalHint(SCRIPT_DATA_CALLBACK_USECS); _particlesScriptingInterface.getParticlePacketSender()->setProcessCallIntervalHint(SCRIPT_DATA_CALLBACK_USECS); - - // call srand to seed the random number generator - srand(QDateTime::currentMSecsSinceEpoch() - + QCoreApplication::applicationPid() - + NodeList::getInstance()->getNodeSocket().localPort()); - } void ScriptEngine::registerGlobalObject(const QString& name, QObject* object) {