diff options
| author | Richard Linden <none@none> | 2013-07-30 19:13:45 -0700 | 
|---|---|---|
| committer | Richard Linden <none@none> | 2013-07-30 19:13:45 -0700 | 
| commit | a2e22732f195dc075a733c79f15156752f522a43 (patch) | |
| tree | c708db3a28ae578b3b6d8f1cc94935937efd9a1e /indra/llmessage | |
| parent | 19f7fb6ccce52224cc067e496d1480191badb165 (diff) | |
Summer cleaning - removed a lot of llcommon dependencies to speed up build times
consolidated most indra-specific constants in llcommon under indra_constants.h
fixed issues with operations on mixed unit types (implicit and explicit)
made LL_INFOS() style macros variadic in order to subsume other logging methods
such as ll_infos
added optional tag output to error recorders
Diffstat (limited to 'indra/llmessage')
| -rwxr-xr-x | indra/llmessage/CMakeLists.txt | 3 | ||||
| -rwxr-xr-x | indra/llmessage/llassetstorage.h | 11 | ||||
| -rwxr-xr-x | indra/llmessage/llavatarname.cpp | 239 | ||||
| -rwxr-xr-x | indra/llmessage/llavatarname.h | 133 | ||||
| -rwxr-xr-x | indra/llmessage/llcircuit.h | 3 | ||||
| -rwxr-xr-x | indra/llmessage/llextendedstatus.h | 67 | ||||
| -rwxr-xr-x | indra/llmessage/llhttpassetstorage.cpp | 3 | ||||
| -rwxr-xr-x | indra/llmessage/llmessagetemplate.h | 8 | ||||
| -rwxr-xr-x | indra/llmessage/llnamevalue.cpp | 2 | ||||
| -rwxr-xr-x | indra/llmessage/llnamevalue.h | 2 | ||||
| -rwxr-xr-x | indra/llmessage/llpacketbuffer.cpp | 2 | ||||
| -rwxr-xr-x | indra/llmessage/llpacketring.cpp | 1 | ||||
| -rwxr-xr-x | indra/llmessage/llxfer.h | 4 | ||||
| -rwxr-xr-x | indra/llmessage/llxfermanager.cpp | 10 | ||||
| -rwxr-xr-x | indra/llmessage/llxfermanager.h | 4 | ||||
| -rwxr-xr-x | indra/llmessage/message.cpp | 235 | ||||
| -rwxr-xr-x | indra/llmessage/message.h | 2 | ||||
| -rwxr-xr-x | indra/llmessage/net.h | 3 | ||||
| -rwxr-xr-x | indra/llmessage/partsyspacket.cpp | 2 | ||||
| -rwxr-xr-x | indra/llmessage/patch_code.cpp | 2 | 
20 files changed, 597 insertions, 139 deletions
| diff --git a/indra/llmessage/CMakeLists.txt b/indra/llmessage/CMakeLists.txt index d193e367eb..ca48e613d2 100755 --- a/indra/llmessage/CMakeLists.txt +++ b/indra/llmessage/CMakeLists.txt @@ -27,6 +27,7 @@ set(llmessage_SOURCE_FILES      llares.cpp      llareslistener.cpp      llassetstorage.cpp +    llavatarname.cpp      llavatarnamecache.cpp      llblowfishcipher.cpp      llbuffer.cpp @@ -114,6 +115,7 @@ set(llmessage_HEADER_FILES      llares.h      llareslistener.h      llassetstorage.h +    llavatarname.h      llavatarnamecache.h      llblowfishcipher.h      llbuffer.h @@ -128,6 +130,7 @@ set(llmessage_HEADER_FILES      lldbstrings.h      lldispatcher.h      lleventflags.h +    llextendedstatus.h      llfiltersd2xmlrpc.h      llfollowcamparams.h      llhost.h diff --git a/indra/llmessage/llassetstorage.h b/indra/llmessage/llassetstorage.h index 563ff9e077..6ffd7ad309 100755 --- a/indra/llmessage/llassetstorage.h +++ b/indra/llmessage/llassetstorage.h @@ -34,11 +34,11 @@  #include "lltimer.h"  #include "llnamevalue.h"  #include "llhost.h" -#include "stdenums.h" 	// for EDragAndDropType  #include "lltransfermanager.h" // For LLTSCode enum  #include "llassettype.h"  #include "llstring.h"  #include "llextendedstatus.h" +#include "llxfer.h"  // Forward declarations  class LLMessageSystem; @@ -51,6 +51,15 @@ class LLSD;  // HTTP Uploads also timeout if they take longer than this.  const F32 LL_ASSET_STORAGE_TIMEOUT = 5 * 60.0f;   + +// Specific error codes +const int LL_ERR_ASSET_REQUEST_FAILED = -1; +//const int LL_ERR_ASSET_REQUEST_INVALID = -2; +const int LL_ERR_ASSET_REQUEST_NONEXISTENT_FILE = -3; +const int LL_ERR_ASSET_REQUEST_NOT_IN_DATABASE = -4; +const int LL_ERR_INSUFFICIENT_PERMISSIONS = -5; +const int LL_ERR_PRICE_MISMATCH = -23018; +  class LLAssetInfo  {  protected: diff --git a/indra/llmessage/llavatarname.cpp b/indra/llmessage/llavatarname.cpp new file mode 100755 index 0000000000..642bd82e90 --- /dev/null +++ b/indra/llmessage/llavatarname.cpp @@ -0,0 +1,239 @@ +/**  + * @file llavatarname.cpp + * @brief Represents name-related data for an avatar, such as the + * username/SLID ("bobsmith123" or "james.linden") and the display + * name ("James Cook") + * + * $LicenseInfo:firstyear=2010&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + *  + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + *  + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU + * Lesser General Public License for more details. + *  + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA + *  + * Linden Research, Inc., 945 Battery Street, San Francisco, CA  94111  USA + * $/LicenseInfo$ + */ +#include "linden_common.h" + +#include "llavatarname.h" + +#include "lldate.h" +#include "llframetimer.h" +#include "llsd.h" + +// Store these in pre-built std::strings to avoid memory allocations in +// LLSD map lookups +static const std::string USERNAME("username"); +static const std::string DISPLAY_NAME("display_name"); +static const std::string LEGACY_FIRST_NAME("legacy_first_name"); +static const std::string LEGACY_LAST_NAME("legacy_last_name"); +static const std::string IS_DISPLAY_NAME_DEFAULT("is_display_name_default"); +static const std::string DISPLAY_NAME_EXPIRES("display_name_expires"); +static const std::string DISPLAY_NAME_NEXT_UPDATE("display_name_next_update"); + +bool LLAvatarName::sUseDisplayNames = true; + +// Minimum time-to-live (in seconds) for a name entry. +// Avatar name should always guarantee to expire reasonably soon by default +// so if the failure to get a valid expiration time was due to something temporary  +// we will eventually request and get the right data. +const F64 MIN_ENTRY_LIFETIME = 60.0; + +LLAvatarName::LLAvatarName() +:	mUsername(), +	mDisplayName(), +	mLegacyFirstName(), +	mLegacyLastName(), +	mIsDisplayNameDefault(false), +	mIsTemporaryName(false), +	mExpires(F64_MAX), +	mNextUpdate(0.0) +{ } + +bool LLAvatarName::operator<(const LLAvatarName& rhs) const +{ +	if (mUsername == rhs.mUsername) +		return mDisplayName < rhs.mDisplayName; +	else +		return mUsername < rhs.mUsername; +} + +//static  +void LLAvatarName::setUseDisplayNames(bool use) +{ +	sUseDisplayNames = use; +} +//static  +bool LLAvatarName::useDisplayNames()  +{  +	return sUseDisplayNames;  +} + +LLSD LLAvatarName::asLLSD() const +{ +	LLSD sd; +	sd[USERNAME] = mUsername; +	sd[DISPLAY_NAME] = mDisplayName; +	sd[LEGACY_FIRST_NAME] = mLegacyFirstName; +	sd[LEGACY_LAST_NAME] = mLegacyLastName; +	sd[IS_DISPLAY_NAME_DEFAULT] = mIsDisplayNameDefault; +	sd[DISPLAY_NAME_EXPIRES] = LLDate(mExpires); +	sd[DISPLAY_NAME_NEXT_UPDATE] = LLDate(mNextUpdate); +	return sd; +} + +void LLAvatarName::fromLLSD(const LLSD& sd) +{ +	mUsername = sd[USERNAME].asString(); +	mDisplayName = sd[DISPLAY_NAME].asString(); +	mLegacyFirstName = sd[LEGACY_FIRST_NAME].asString(); +	mLegacyLastName = sd[LEGACY_LAST_NAME].asString(); +	mIsDisplayNameDefault = sd[IS_DISPLAY_NAME_DEFAULT].asBoolean(); +	LLDate expires = sd[DISPLAY_NAME_EXPIRES]; +	mExpires = expires.secondsSinceEpoch(); +	LLDate next_update = sd[DISPLAY_NAME_NEXT_UPDATE]; +	mNextUpdate = next_update.secondsSinceEpoch(); +	 +	// Some avatars don't have explicit display names set. Force a legible display name here. +	if (mDisplayName.empty()) +	{ +		mDisplayName = mUsername; +	} +} + +// Transform a string (typically provided by the legacy service) into a decent +// avatar name instance. +void LLAvatarName::fromString(const std::string& full_name) +{ +	mDisplayName = full_name; +	std::string::size_type index = full_name.find(' '); +	if (index != std::string::npos) +	{ +		// The name is in 2 parts (first last) +		mLegacyFirstName = full_name.substr(0, index); +		mLegacyLastName = full_name.substr(index+1); +		if (mLegacyLastName != "Resident") +		{ +			mUsername = mLegacyFirstName + "." + mLegacyLastName; +			mDisplayName = full_name; +			LLStringUtil::toLower(mUsername); +		} +		else +		{ +			// Very old names do have a dummy "Resident" last name  +			// that we choose to hide from users. +			mUsername = mLegacyFirstName; +			mDisplayName = mLegacyFirstName; +		} +	} +	else +	{ +		mLegacyFirstName = full_name; +		mLegacyLastName = ""; +		mUsername = full_name; +		mDisplayName = full_name; +	} +	mIsDisplayNameDefault = true; +	mIsTemporaryName = true; +	setExpires(MIN_ENTRY_LIFETIME); +} + +void LLAvatarName::setExpires(F64 expires) +{ +	mExpires = LLFrameTimer::getTotalSeconds() + expires; +} + +std::string LLAvatarName::getCompleteName() const +{ +	std::string name; +	if (sUseDisplayNames) +	{ +		if (mUsername.empty() || mIsDisplayNameDefault) +		{ +			// If this particular display name is defaulted (i.e. based on user name), +			// then display only the easier to read instance of the person's name. +			name = mDisplayName; +		} +		else +		{ +			name = mDisplayName + " (" + mUsername + ")"; +		} +	} +	else +	{ +		name = getUserName(); +	} +	return name; +} + +std::string LLAvatarName::getLegacyName() const +{ +	if (mLegacyFirstName.empty() && mLegacyLastName.empty()) // display names disabled? +	{ +		return mDisplayName; +	} + +	std::string name; +	name.reserve( mLegacyFirstName.size() + 1 + mLegacyLastName.size() ); +	name = mLegacyFirstName; +	name += " "; +	name += mLegacyLastName; +	return name; +} + +std::string LLAvatarName::getDisplayName() const +{ +	if (sUseDisplayNames) +	{ +		return mDisplayName; +	} +	else +	{ +		return getUserName(); +	} +} + +std::string LLAvatarName::getUserName() const +{ +	std::string name; +	if (mLegacyLastName.empty() || (mLegacyLastName == "Resident")) +	{ +		if (mLegacyFirstName.empty()) +		{ +			// If we cannot create a user name from the legacy strings, use the display name +			name = mDisplayName; +		} +		else +		{ +			// The last name might be empty if it defaulted to "Resident" +			name = mLegacyFirstName; +		} +	} +	else +	{ +		name = mLegacyFirstName + " " + mLegacyLastName; +	} +	return name; +} + +void LLAvatarName::dump() const +{ +	LL_DEBUGS("AvNameCache") << "LLAvatarName: " +	                         << "user '" << mUsername << "' " +							 << "display '" << mDisplayName << "' " +	                         << "expires in " << mExpires - LLFrameTimer::getTotalSeconds() << " seconds" +							 << LL_ENDL; +} + diff --git a/indra/llmessage/llavatarname.h b/indra/llmessage/llavatarname.h new file mode 100755 index 0000000000..5d2fccc5ba --- /dev/null +++ b/indra/llmessage/llavatarname.h @@ -0,0 +1,133 @@ +/**  + * @file llavatarname.h + * @brief Represents name-related data for an avatar, such as the + * username/SLID ("bobsmith123" or "james.linden") and the display + * name ("James Cook") + * + * $LicenseInfo:firstyear=2010&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + *  + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + *  + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU + * Lesser General Public License for more details. + *  + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA + *  + * Linden Research, Inc., 945 Battery Street, San Francisco, CA  94111  USA + * $/LicenseInfo$ + */ +#ifndef LLAVATARNAME_H +#define LLAVATARNAME_H + +#include <string> + +class LLSD; + +class LL_COMMON_API LLAvatarName +{ +public: +	LLAvatarName(); +	 +	bool operator<(const LLAvatarName& rhs) const; + +	// Conversion to and from LLSD (cache file or server response) +	LLSD asLLSD() const; +	void fromLLSD(const LLSD& sd); + +	// Used only in legacy mode when the display name capability is not provided server side +	// or to otherwise create a temporary valid item. +	void fromString(const std::string& full_name); +	 +	// Set the name object to become invalid in "expires" seconds from now +	void setExpires(F64 expires); + +	// Set and get the display name flag set by the user in preferences. +	static void setUseDisplayNames(bool use); +	static bool useDisplayNames(); +	 +	// A name object is valid if not temporary and not yet expired (default is expiration not checked) +	bool isValidName(F64 max_unrefreshed = 0.0f) const { return !mIsTemporaryName && (mExpires >= max_unrefreshed); } +	 +	// Return true if the name is made up from legacy or temporary data +	bool isDisplayNameDefault() const { return mIsDisplayNameDefault; } +	 +	// For normal names, returns "James Linden (james.linden)" +	// When display names are disabled returns just "James Linden" +	std::string getCompleteName() const; +	 +	// Returns "James Linden" or "bobsmith123 Resident" for backwards +	// compatibility with systems like voice and muting +	// *TODO: Eliminate this in favor of username only +	std::string getLegacyName() const; +	 +	// "José Sanchez" or "James Linden", UTF-8 encoded Unicode +	// Takes the display name preference into account. This is truly the name that should  +	// be used for all UI where an avatar name has to be used unless we truly want something else (rare) +	std::string getDisplayName() const; +	 +	// Returns "James Linden" or "bobsmith123 Resident" +	// Used where we explicitely prefer or need a non UTF-8 legacy (ASCII) name +	// Also used for backwards compatibility with systems like voice and muting +	std::string getUserName() const; +	 +	// Returns "james.linden" or the legacy name for very old names +	std::string getAccountName() const { return mUsername; } + +	// Debug print of the object +	void dump() const; +	 +	// Names can change, so need to keep track of when name was +	// last checked. +	// Unix time-from-epoch seconds for efficiency +	F64 mExpires; +	 +	// You can only change your name every N hours, so record +	// when the next update is allowed +	// Unix time-from-epoch seconds +	F64 mNextUpdate; +	 +private: +	// "bobsmith123" or "james.linden", US-ASCII only +	std::string mUsername; + +	// "José Sanchez" or "James Linden", UTF-8 encoded Unicode +	// Contains data whether or not user has explicitly set +	// a display name; may duplicate their username. +	std::string mDisplayName; + +	// For "James Linden", "James" +	// For "bobsmith123", "bobsmith123" +	// Used to communicate with legacy systems like voice and muting which +	// rely on old-style names. +	// *TODO: Eliminate this in favor of username only +	std::string mLegacyFirstName; + +	// For "James Linden", "Linden" +	// For "bobsmith123", "Resident" +	// see above for rationale +	std::string mLegacyLastName; + +	// If true, both display name and SLID were generated from +	// a legacy first and last name, like "James Linden (james.linden)" +	bool mIsDisplayNameDefault; + +	// Under error conditions, we may insert "dummy" records with +	// names like "???" into caches as placeholders.  These can be +	// shown in UI, but are not serialized. +	bool mIsTemporaryName; + +	// Global flag indicating if display name should be used or not +	// This will affect the output of the high level "get" methods +	static bool sUseDisplayNames; +}; + +#endif diff --git a/indra/llmessage/llcircuit.h b/indra/llmessage/llcircuit.h index 430d6358f7..11d4e1b11c 100755 --- a/indra/llmessage/llcircuit.h +++ b/indra/llmessage/llcircuit.h @@ -34,7 +34,6 @@  #include "llerror.h"  #include "lltimer.h" -#include "timing.h"  #include "net.h"  #include "llhost.h"  #include "llpacketack.h" @@ -51,6 +50,8 @@ const F32 LL_AVERAGED_PING_MIN =  100;    // msec  // IW: increased to avoid ret  const U32 INITIAL_PING_VALUE_MSEC = 1000; // initial value for the ping delay, or for ping delay for an unknown circuit  const TPACKETID LL_MAX_OUT_PACKET_ID = 0x01000000; +const int LL_ERR_CIRCUIT_GONE   = -23017; +const int LL_ERR_TCP_TIMEOUT    = -23016;  // 0 - flags  // [1,4] - packetid diff --git a/indra/llmessage/llextendedstatus.h b/indra/llmessage/llextendedstatus.h new file mode 100755 index 0000000000..8ce173d1ff --- /dev/null +++ b/indra/llmessage/llextendedstatus.h @@ -0,0 +1,67 @@ +/**  + * @file llextendedstatus.h + * @date   August 2007 + * @brief extended status codes for curl/vfs/resident asset storage and delivery + * + * $LicenseInfo:firstyear=2007&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + *  + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + *  + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU + * Lesser General Public License for more details. + *  + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA + *  + * Linden Research, Inc., 945 Battery Street, San Francisco, CA  94111  USA + * $/LicenseInfo$ + */ + +#ifndef LL_LLEXTENDEDSTATUS_H +#define LL_LLEXTENDEDSTATUS_H + + +typedef S32 LLExtStat; + + +// Status provider groups - Top bits indicate which status type it is +// Zero is common status code (next section) +const LLExtStat LL_EXSTAT_CURL_RESULT	= 1L<<30; // serviced by curl - use 1L if we really implement the below +const LLExtStat LL_EXSTAT_RES_RESULT	= 2L<<30; // serviced by resident copy +const LLExtStat LL_EXSTAT_VFS_RESULT	= 3L<<30; // serviced by vfs + + +// Common Status Codes +// +const LLExtStat LL_EXSTAT_NONE				= 0x00000; // No extra info here - sorry! +const LLExtStat LL_EXSTAT_NULL_UUID			= 0x10001; // null asset ID +const LLExtStat LL_EXSTAT_NO_UPSTREAM		= 0x10002; // attempt to upload without a valid upstream method/provider +const LLExtStat LL_EXSTAT_REQUEST_DROPPED	= 0x10003; // request was dropped unserviced +const LLExtStat LL_EXSTAT_NONEXISTENT_FILE	= 0x10004; // trying to upload a file that doesn't exist +const LLExtStat LL_EXSTAT_BLOCKED_FILE		= 0x10005; // trying to upload a file that we can't open + + +// curl status codes: +// +// Mask off LL_EXSTAT_CURL_RESULT for original result and +// see: libraries/include/curl/curl.h + + +// Memory-Resident status codes: +// None at present + + +// VFS status codes: +const LLExtStat LL_EXSTAT_VFS_CACHED	= LL_EXSTAT_VFS_RESULT | 0x0001; +const LLExtStat LL_EXSTAT_VFS_CORRUPT	= LL_EXSTAT_VFS_RESULT | 0x0002; + + +#endif // LL_LLEXTENDEDSTATUS_H diff --git a/indra/llmessage/llhttpassetstorage.cpp b/indra/llmessage/llhttpassetstorage.cpp index 7dcf160c9b..9a4d22ab0b 100755 --- a/indra/llmessage/llhttpassetstorage.cpp +++ b/indra/llmessage/llhttpassetstorage.cpp @@ -36,6 +36,7 @@  #include "llproxy.h"  #include "llvfile.h"  #include "llvfs.h" +#include "llxfer.h"  #ifdef LL_STANDALONE  # include <zlib.h> @@ -43,6 +44,8 @@  # include "zlib/zlib.h"  #endif +const	char* const	LOCAL_ASSET_URL_FORMAT		= "http://%s:12041/asset"; +  const U32 MAX_RUNNING_REQUESTS = 1;  const F32 MAX_PROCESSING_TIME = 0.005f;  const S32 CURL_XFER_BUFFER_SIZE = 65536; diff --git a/indra/llmessage/llmessagetemplate.h b/indra/llmessage/llmessagetemplate.h index ae8e0087c1..70a91d8a6f 100755 --- a/indra/llmessage/llmessagetemplate.h +++ b/indra/llmessage/llmessagetemplate.h @@ -27,9 +27,9 @@  #ifndef LL_LLMESSAGETEMPLATE_H  #define LL_LLMESSAGETEMPLATE_H -#include "lldarray.h"  #include "message.h" // TODO: babbage: Remove...  #include "llstl.h" +#include "llindexedvector.h"  class LLMsgVarData  { @@ -102,7 +102,7 @@ public:  	}  	S32									mBlockNumber; -	typedef LLDynamicArrayIndexed<LLMsgVarData, const char *, 8> msg_var_data_map_t; +	typedef LLIndexedVector<LLMsgVarData, const char *, 8> msg_var_data_map_t;  	msg_var_data_map_t					mMemberVarData;  	char								*mName;  	S32									mTotalSize; @@ -225,7 +225,7 @@ public:  	friend std::ostream&	 operator<<(std::ostream& s, LLMessageBlock &msg); -	typedef LLDynamicArrayIndexed<LLMessageVariable*, const char *, 8> message_variable_map_t; +	typedef LLIndexedVector<LLMessageVariable*, const char *, 8> message_variable_map_t;  	message_variable_map_t 					mMemberVariables;  	char									*mName;  	EMsgBlockType							mType; @@ -391,7 +391,7 @@ public:  	}  public: -	typedef LLDynamicArrayIndexed<LLMessageBlock*, char*, 8> message_block_map_t; +	typedef LLIndexedVector<LLMessageBlock*, char*, 8> message_block_map_t;  	message_block_map_t						mMemberBlocks;  	char									*mName;  	EMsgFrequency							mFrequency; diff --git a/indra/llmessage/llnamevalue.cpp b/indra/llmessage/llnamevalue.cpp index d799403029..f2bdcfad53 100755 --- a/indra/llmessage/llnamevalue.cpp +++ b/indra/llmessage/llnamevalue.cpp @@ -33,7 +33,7 @@  #include "u64.h"  #include "llstring.h" -#include "string_table.h" +#include "llstringtable.h"  // Anonymous enumeration to provide constants in this file.  // *NOTE: These values may be used in sscanf statements below as their diff --git a/indra/llmessage/llnamevalue.h b/indra/llmessage/llnamevalue.h index 273de475f8..f8b556b5fe 100755 --- a/indra/llmessage/llnamevalue.h +++ b/indra/llmessage/llnamevalue.h @@ -41,7 +41,7 @@  // SitObject STRING  // SitPosition VEC3 -#include "string_table.h" +#include "llstringtable.h"  #include "llmath.h"  #include "v3math.h"  #include "lldbstrings.h" diff --git a/indra/llmessage/llpacketbuffer.cpp b/indra/llmessage/llpacketbuffer.cpp index e69631eb3b..22e4dc1e8d 100755 --- a/indra/llmessage/llpacketbuffer.cpp +++ b/indra/llmessage/llpacketbuffer.cpp @@ -29,7 +29,7 @@  #include "llpacketbuffer.h"  #include "net.h" -#include "timing.h" +#include "lltimer.h"  #include "llhost.h"  /////////////////////////////////////////////////////////// diff --git a/indra/llmessage/llpacketring.cpp b/indra/llmessage/llpacketring.cpp index fc6e9c5193..a8c568a365 100755 --- a/indra/llmessage/llpacketring.cpp +++ b/indra/llmessage/llpacketring.cpp @@ -41,7 +41,6 @@  #include "llproxy.h"  #include "llrand.h"  #include "message.h" -#include "timing.h"  #include "u64.h"  /////////////////////////////////////////////////////////// diff --git a/indra/llmessage/llxfer.h b/indra/llmessage/llxfer.h index f9348eb11f..edf5eeb82d 100755 --- a/indra/llmessage/llxfer.h +++ b/indra/llmessage/llxfer.h @@ -32,6 +32,10 @@  #include "llextendedstatus.h"  const S32 LL_XFER_LARGE_PAYLOAD = 7680; +const S32 LL_ERR_FILE_EMPTY     = -44; +const int LL_ERR_FILE_NOT_FOUND = -43; +const int LL_ERR_CANNOT_OPEN_FILE = -42; +const int LL_ERR_EOF = -39;  typedef enum ELLXferStatus {  	e_LL_XFER_UNINITIALIZED, diff --git a/indra/llmessage/llxfermanager.cpp b/indra/llmessage/llxfermanager.cpp index 00b9d81611..e74eb74763 100755 --- a/indra/llmessage/llxfermanager.cpp +++ b/indra/llmessage/llxfermanager.cpp @@ -677,7 +677,7 @@ void LLXferManager::processReceiveData (LLMessageSystem *mesgsys, void ** /*user  		ack_info.mID = id;  		ack_info.mPacketNum = decodePacketNum(packetnum);  		ack_info.mRemoteHost = mesgsys->getSender(); -		mXferAckQueue.push(ack_info); +		mXferAckQueue.push_back(ack_info);  	}  	if (isLastPacket(packetnum)) @@ -1088,15 +1088,15 @@ void LLXferManager::retransmitUnackedPackets ()  	// so we don't blow through bandwidth.  	// -	while (mXferAckQueue.getLength()) +	while (mXferAckQueue.size())  	{  		if (mAckThrottle.checkOverflow(1000.0f*8.0f))  		{  			break;  		} -		//llinfos << "Confirm packet queue length:" << mXferAckQueue.getLength() << llendl; -		LLXferAckInfo ack_info; -		mXferAckQueue.pop(ack_info); +		//llinfos << "Confirm packet queue length:" << mXferAckQueue.size() << llendl; +		LLXferAckInfo ack_info = mXferAckQueue.front(); +		mXferAckQueue.pop_front();  		//llinfos << "Sending confirm packet" << llendl;  		sendConfirmPacket(gMessageSystem, ack_info.mID, ack_info.mPacketNum, ack_info.mRemoteHost);  		mAckThrottle.throttleOverflow(1000.f*8.f); // Assume 1000 bytes/packet diff --git a/indra/llmessage/llxfermanager.h b/indra/llmessage/llxfermanager.h index b84bccb5b7..b3d110e7a1 100755 --- a/indra/llmessage/llxfermanager.h +++ b/indra/llmessage/llxfermanager.h @@ -41,7 +41,7 @@ class LLVFS;  #include "message.h"  #include "llassetstorage.h"  #include "lldir.h" -#include "lllinkedqueue.h" +#include <deque>  #include "llthrottle.h"  class LLHostStatus @@ -80,7 +80,7 @@ class LLXferManager  	S32    mMaxIncomingXfers;  	BOOL	mUseAckThrottling; // Use ack throttling to cap file xfer bandwidth -	LLLinkedQueue<LLXferAckInfo> mXferAckQueue; +	std::deque<LLXferAckInfo> mXferAckQueue;  	LLThrottle mAckThrottle;   public: diff --git a/indra/llmessage/message.cpp b/indra/llmessage/message.cpp index ae95087377..4a4cc57e20 100755 --- a/indra/llmessage/message.cpp +++ b/indra/llmessage/message.cpp @@ -47,10 +47,8 @@  // linden library headers  #include "indra_constants.h" -#include "lldarray.h"  #include "lldir.h"  #include "llerror.h" -#include "llerrorlegacy.h"  #include "llfasttimer.h"  #include "llhttpclient.h"  #include "llhttpnodeadapter.h" @@ -73,7 +71,6 @@  #include "lltransfermanager.h"  #include "lluuid.h"  #include "llxfermanager.h" -#include "timing.h"  #include "llquaternion.h"  #include "u64.h"  #include "v3dmath.h" @@ -120,7 +117,7 @@ namespace  			{  				LL_WARNS("Messaging") << "error status " << status  						<< " for message " << mMessageName -						<< " reason " << reason << llendl; +						<< " reason " << reason << LL_ENDL;  			}  			// TODO: Map status in to useful error code.  			if(NULL != mCallback) mCallback(mCallbackData, LL_ERR_TCP_TIMEOUT); @@ -155,7 +152,7 @@ void LLMessageHandlerBridge::post(LLHTTPNode::ResponsePtr response,  	std::string name = context["request"]["wildcard"]["message-name"];  	char* namePtr = LLMessageStringTable::getInstance()->getString(name.c_str()); -	lldebugs << "Setting mLastSender " << input["sender"].asString() << llendl; +	lldebugs << "Setting mLastSender " << input["sender"].asString() << LL_ENDL;  	gMessageSystem->mLastSender = LLHost(input["sender"].asString());  	gMessageSystem->mPacketsIn += 1;  	gMessageSystem->mLLSDMessageReader->setMessage(namePtr, input["body"]); @@ -284,14 +281,14 @@ LLMessageSystem::LLMessageSystem(const std::string& filename, U32 port,  		mbError = TRUE;  		mErrorCode = error;  	} -//	LL_DEBUGS("Messaging") <<  << "*** port: " << mPort << llendl; +//	LL_DEBUGS("Messaging") <<  << "*** port: " << mPort << LL_ENDL;  	//  	// Create the data structure that we can poll on  	//  	if (!gAPRPoolp)  	{ -		LL_ERRS("Messaging") << "No APR pool before message system initialization!" << llendl; +		LL_ERRS("Messaging") << "No APR pool before message system initialization!" << LL_ENDL;  		ll_init_apr();  	}  	apr_socket_t *aprSocketp = NULL; @@ -329,7 +326,7 @@ void LLMessageSystem::loadTemplateFile(const std::string& filename, bool failure  {  	if(filename.empty())  	{ -		LL_ERRS("Messaging") << "No template filename specified" << llendl; +		LL_ERRS("Messaging") << "No template filename specified" << LL_ENDL;  		mbError = TRUE;  		return;  	} @@ -338,9 +335,9 @@ void LLMessageSystem::loadTemplateFile(const std::string& filename, bool failure  	if(!_read_file_into_string(template_body, filename))  	{  		if (failure_is_fatal) { -			LL_ERRS("Messaging") << "Failed to open template: " << filename << llendl; +			LL_ERRS("Messaging") << "Failed to open template: " << filename << LL_ENDL;  		} else { -			LL_WARNS("Messaging") << "Failed to open template: " << filename << llendl; +			LL_WARNS("Messaging") << "Failed to open template: " << filename << LL_ENDL;  		}  		mbError = TRUE;  		return; @@ -566,7 +563,7 @@ BOOL LLMessageSystem::checkMessages( S64 frame_count )  			// Ones that are non-zero but below the minimum packet size are worrisome.  			if (receive_size > 0)  			{ -				LL_WARNS("Messaging") << "Invalid (too short) packet discarded " << receive_size << llendl; +				LL_WARNS("Messaging") << "Invalid (too short) packet discarded " << receive_size << LL_ENDL;  				callExceptionFunc(MX_PACKET_TOO_SHORT);  			}  			// no data in packet receive buffer @@ -592,7 +589,7 @@ BOOL LLMessageSystem::checkMessages( S64 frame_count )  					// the next one  					LL_WARNS("Messaging") << "Malformed packet received. Packet size "  						<< receive_size << " with invalid no. of acks " << acks -						<< llendl; +						<< LL_ENDL;  					valid_packet = FALSE;  					continue;  				} @@ -620,7 +617,7 @@ BOOL LLMessageSystem::checkMessages( S64 frame_count )  					memcpy(&mem_id, &mTrueReceiveBuffer[true_rcv_size], /* Flawfinder: ignore*/  					     sizeof(TPACKETID));  					packet_id = ntohl(mem_id); -					//LL_INFOS("Messaging") << "got ack: " << packet_id << llendl; +					//LL_INFOS("Messaging") << "got ack: " << packet_id << LL_ENDL;  					cdp->ackReliablePacket(packet_id);  				}  				if (!cdp->getUnackedPacketCount()) @@ -652,14 +649,14 @@ BOOL LLMessageSystem::checkMessages( S64 frame_count )  						//	LL_WARNS("Messaging") << "DISCARDED PACKET HOST MISMATCH! HOST: "  						//			<< host << " CIRCUIT: "  						//			<< mCircuitInfo.mCurrentCircuit->mHost -						//			<< llendl; +						//			<< LL_ENDL;  						//}  						// ***************************************  						//mCircuitInfo.mCurrentCircuit->mAcks.put(mCurrentRecvPacketID);  						cdp->collectRAck(mCurrentRecvPacketID);  					} -					LL_DEBUGS("Messaging") << "Discarding duplicate resend from " << host << llendl; +					LL_DEBUGS("Messaging") << "Discarding duplicate resend from " << host << LL_ENDL;  					if(mVerboseLog)  					{  						std::ostringstream str; @@ -671,7 +668,7 @@ BOOL LLMessageSystem::checkMessages( S64 frame_count )  							<< " resent "  							<< ((acks > 0) ? "acks" : "")  							<< " DISCARD DUPLICATE"; -						LL_INFOS("Messaging") << str.str() << llendl; +						LL_INFOS("Messaging") << str.str() << LL_ENDL;  					}  					mPacketsIn++;  					valid_packet = FALSE; @@ -750,7 +747,7 @@ BOOL LLMessageSystem::checkMessages( S64 frame_count )  			{  				if (mbProtected  && (!cdp))  				{ -					LL_WARNS("Messaging") << "Invalid Packet from invalid circuit " << host << llendl; +					LL_WARNS("Messaging") << "Invalid Packet from invalid circuit " << host << LL_ENDL;  					mOffCircuitPackets++;  				}  				else @@ -820,7 +817,7 @@ void LLMessageSystem::processAcks()  		if (!mDenyTrustedCircuitSet.empty())  		{ -			LL_INFOS("Messaging") << "Sending queued DenyTrustedCircuit messages." << llendl; +			LL_INFOS("Messaging") << "Sending queued DenyTrustedCircuit messages." << LL_ENDL;  			for (host_set_t::iterator hostit = mDenyTrustedCircuitSet.begin(); hostit != mDenyTrustedCircuitSet.end(); ++hostit)  			{  				reallySendDenyTrustedCircuit(*hostit); @@ -894,7 +891,7 @@ LLSD LLMessageSystem::getBuiltMessageLLSD() const  	else  	{  		// TODO: implement as below? -		llerrs << "Message not built as LLSD." << llendl;  +		llerrs << "Message not built as LLSD." << LL_ENDL;   	}  	return result;  } @@ -1147,7 +1144,7 @@ LLHTTPClient::ResponderPtr LLMessageSystem::createResponder(const std::string& n  		// explicitly sent as reliable, so they don't have a callback  //		LL_WARNS("Messaging") << "LLMessageSystem::sendMessage: Sending unreliable "  //				<< mMessageBuilder->getMessageName() << " message via HTTP" -//				<< llendl; +//				<< LL_ENDL;  		return new LLFnPtrResponder(  			NULL,  			NULL, @@ -1183,11 +1180,11 @@ S32 LLMessageSystem::sendMessage(const LLHost &host)  			if(mVerboseLog)  			{  				LL_INFOS_ONCE("Messaging") << "MSG: -> " << host << "\tUNKNOWN CIRCUIT:\t" -						<< mMessageBuilder->getMessageName() << llendl; +						<< mMessageBuilder->getMessageName() << LL_ENDL;  			}  			LL_WARNS_ONCE("Messaging") << "sendMessage - Trying to send "  					<< mMessageBuilder->getMessageName() << " on unknown circuit " -					<< host << llendl; +					<< host << LL_ENDL;  			return 0;  		}  		else @@ -1206,11 +1203,11 @@ S32 LLMessageSystem::sendMessage(const LLHost &host)  			if(mVerboseLog)  			{  				LL_INFOS("Messaging") << "MSG: -> " << host << "\tDEAD CIRCUIT\t\t" -						<< mMessageBuilder->getMessageName() << llendl; +						<< mMessageBuilder->getMessageName() << LL_ENDL;  			}  			LL_WARNS("Messaging") << "sendMessage - Trying to send message "  					<< mMessageBuilder->getMessageName() << " to dead circuit " -					<< host << llendl; +					<< host << LL_ENDL;  			return 0;  		}  	} @@ -1255,7 +1252,7 @@ S32 LLMessageSystem::sendMessage(const LLHost &host)  			LL_WARNS("Messaging") << "sendMessage - Trying to send "  					<< ((buffer_length > 4000) ? "EXTRA " : "")  					<< "BIG message " << mMessageBuilder->getMessageName() << " - " -					<< buffer_length << llendl; +					<< buffer_length << LL_ENDL;  		}  	}  	if (mSendReliable) @@ -1317,7 +1314,7 @@ S32 LLMessageSystem::sendMessage(const LLHost &host)  				// append_acout_count is incorrect or that  				// MAX_BUFFER_SIZE has fallen below MTU which is bad  				// and probably programmer error. -			    LL_ERRS("Messaging") << "Buffer packing failed due to size.." << llendl; +			    LL_ERRS("Messaging") << "Buffer packing failed due to size.." << LL_ENDL;  			}  		} @@ -1358,7 +1355,7 @@ S32 LLMessageSystem::sendMessage(const LLHost &host)  			std::ostream_iterator<TPACKETID> append(str, " ");  			std::copy(acks.begin(), acks.end(), append);  		} -		LL_INFOS("Messaging") << str.str() << llendl; +		LL_INFOS("Messaging") << str.str() << LL_ENDL;  	} @@ -1382,7 +1379,7 @@ void LLMessageSystem::logMsgFromInvalidCircuit( const LLHost& host, BOOL recv_re  			<< nullToEmpty(mMessageReader->getMessageName())  			<< (recv_reliable ? " reliable" : "")   			<< " REJECTED"; -		LL_INFOS("Messaging") << str.str() << llendl; +		LL_INFOS("Messaging") << str.str() << LL_ENDL;  	}  	// nope!  	// cout << "Rejecting unexpected message " << mCurrentMessageTemplate->mName << " from " << hex << ip << " , " << dec << port << endl; @@ -1390,7 +1387,7 @@ void LLMessageSystem::logMsgFromInvalidCircuit( const LLHost& host, BOOL recv_re  	// Keep track of rejected messages as well  	if (mNumMessageCounts >= MAX_MESSAGE_COUNT_NUM)  	{ -		LL_WARNS("Messaging") << "Got more than " << MAX_MESSAGE_COUNT_NUM << " packets without clearing counts" << llendl; +		LL_WARNS("Messaging") << "Got more than " << MAX_MESSAGE_COUNT_NUM << " packets without clearing counts" << LL_ENDL;  	}  	else  	{ @@ -1409,7 +1406,7 @@ S32 LLMessageSystem::sendMessage(  {  	if (!(host.isOk()))  	{ -		LL_WARNS("Messaging") << "trying to send message to invalid host"	<< llendl; +		LL_WARNS("Messaging") << "trying to send message to invalid host"	<< LL_ENDL;  		return 0;  	} @@ -1427,14 +1424,14 @@ void LLMessageSystem::logTrustedMsgFromUntrustedCircuit( const LLHost& host )  		LL_WARNS("Messaging") << "Received trusted message on untrusted circuit. "  				<< "Will reply with deny. "  				<< "Message: " << nullToEmpty(mMessageReader->getMessageName()) -				<< " Host: " << host << llendl; +				<< " Host: " << host << LL_ENDL;  	}  	if (mNumMessageCounts >= MAX_MESSAGE_COUNT_NUM)  	{  		LL_WARNS("Messaging") << "got more than " << MAX_MESSAGE_COUNT_NUM  			<< " packets without clearing counts" -			<< llendl; +			<< LL_ENDL;  	}  	else  	{ @@ -1452,7 +1449,7 @@ void LLMessageSystem::logValidMsg(LLCircuitData *cdp, const LLHost& host, BOOL r  {  	if (mNumMessageCounts >= MAX_MESSAGE_COUNT_NUM)  	{ -		LL_WARNS("Messaging") << "Got more than " << MAX_MESSAGE_COUNT_NUM << " packets without clearing counts" << llendl; +		LL_WARNS("Messaging") << "Got more than " << MAX_MESSAGE_COUNT_NUM << " packets without clearing counts" << LL_ENDL;  	}  	else  	{ @@ -1481,7 +1478,7 @@ void LLMessageSystem::logValidMsg(LLCircuitData *cdp, const LLHost& host, BOOL r  			<< (recv_reliable ? " reliable" : "")  			<< (recv_resent ? " resent" : "")  			<< (recv_acks ? " acks" : ""); -		LL_INFOS("Messaging") << str.str() << llendl; +		LL_INFOS("Messaging") << str.str() << LL_ENDL;  	}  } @@ -1491,54 +1488,54 @@ void LLMessageSystem::sanityCheck()  //	if (!mCurrentRMessageData)  //	{ -//		LL_ERRS("Messaging") << "mCurrentRMessageData is NULL" << llendl; +//		LL_ERRS("Messaging") << "mCurrentRMessageData is NULL" << LL_ENDL;  //	}  //	if (!mCurrentRMessageTemplate)  //	{ -//		LL_ERRS("Messaging") << "mCurrentRMessageTemplate is NULL" << llendl; +//		LL_ERRS("Messaging") << "mCurrentRMessageTemplate is NULL" << LL_ENDL;  //	}  //	if (!mCurrentRTemplateBlock)  //	{ -//		LL_ERRS("Messaging") << "mCurrentRTemplateBlock is NULL" << llendl; +//		LL_ERRS("Messaging") << "mCurrentRTemplateBlock is NULL" << LL_ENDL;  //	}  //	if (!mCurrentRDataBlock)  //	{ -//		LL_ERRS("Messaging") << "mCurrentRDataBlock is NULL" << llendl; +//		LL_ERRS("Messaging") << "mCurrentRDataBlock is NULL" << LL_ENDL;  //	}  //	if (!mCurrentSMessageData)  //	{ -//		LL_ERRS("Messaging") << "mCurrentSMessageData is NULL" << llendl; +//		LL_ERRS("Messaging") << "mCurrentSMessageData is NULL" << LL_ENDL;  //	}  //	if (!mCurrentSMessageTemplate)  //	{ -//		LL_ERRS("Messaging") << "mCurrentSMessageTemplate is NULL" << llendl; +//		LL_ERRS("Messaging") << "mCurrentSMessageTemplate is NULL" << LL_ENDL;  //	}  //	if (!mCurrentSTemplateBlock)  //	{ -//		LL_ERRS("Messaging") << "mCurrentSTemplateBlock is NULL" << llendl; +//		LL_ERRS("Messaging") << "mCurrentSTemplateBlock is NULL" << LL_ENDL;  //	}  //	if (!mCurrentSDataBlock)  //	{ -//		LL_ERRS("Messaging") << "mCurrentSDataBlock is NULL" << llendl; +//		LL_ERRS("Messaging") << "mCurrentSDataBlock is NULL" << LL_ENDL;  //	}  }  void LLMessageSystem::showCircuitInfo()  { -	LL_INFOS("Messaging") << mCircuitInfo << llendl; +	LL_INFOS("Messaging") << mCircuitInfo << LL_ENDL;  }  void LLMessageSystem::dumpCircuitInfo()  { -	lldebugst(LLERR_CIRCUIT_INFO) << mCircuitInfo << llendl; +	LL_DEBUGS("Messaging") << mCircuitInfo << LL_ENDL;  }  /* virtual */ @@ -1582,7 +1579,7 @@ void LLMessageSystem::enableCircuit(const LLHost &host, BOOL trusted)  void LLMessageSystem::disableCircuit(const LLHost &host)  { -	LL_INFOS("Messaging") << "LLMessageSystem::disableCircuit for " << host << llendl; +	LL_INFOS("Messaging") << "LLMessageSystem::disableCircuit for " << host << LL_ENDL;  	U32 code = gMessageSystem->findCircuitCode( host );  	// Don't need to do this, as we're removing the circuit info anyway - djs 01/28/03 @@ -1595,7 +1592,7 @@ void LLMessageSystem::disableCircuit(const LLHost &host)  		code_session_map_t::iterator it = mCircuitCodes.find(code);  		if(it != mCircuitCodes.end())  		{ -			LL_INFOS("Messaging") << "Circuit " << code << " removed from list" << llendl; +			LL_INFOS("Messaging") << "Circuit " << code << " removed from list" << LL_ENDL;  			//mCircuitCodes.removeData(code);  			mCircuitCodes.erase(it);  		} @@ -1611,7 +1608,7 @@ void LLMessageSystem::disableCircuit(const LLHost &host)  			U32 old_port = (U32)(ip_port & (U64)0xFFFFFFFF);  			U32 old_ip = (U32)(ip_port >> 32); -			LL_INFOS("Messaging") << "Host " << LLHost(old_ip, old_port) << " circuit " << code << " removed from lookup table" << llendl; +			LL_INFOS("Messaging") << "Host " << LLHost(old_ip, old_port) << " circuit " << code << " removed from lookup table" << LL_ENDL;  			gMessageSystem->mIPPortToCircuitCode.erase(ip_port);  		}  		mCircuitInfo.removeCircuitData(host); @@ -1621,7 +1618,7 @@ void LLMessageSystem::disableCircuit(const LLHost &host)  		// Sigh, since we can open circuits which don't have circuit  		// codes, it's possible for this to happen... -		LL_WARNS("Messaging") << "Couldn't find circuit code for " << host << llendl; +		LL_WARNS("Messaging") << "Couldn't find circuit code for " << host << LL_ENDL;  	}  } @@ -1652,7 +1649,7 @@ BOOL LLMessageSystem::checkCircuitBlocked(const U32 circuit)  	if (!host.isOk())  	{ -		LL_DEBUGS("Messaging") << "checkCircuitBlocked: Unknown circuit " << circuit << llendl; +		LL_DEBUGS("Messaging") << "checkCircuitBlocked: Unknown circuit " << circuit << LL_ENDL;  		return TRUE;  	} @@ -1663,7 +1660,7 @@ BOOL LLMessageSystem::checkCircuitBlocked(const U32 circuit)  	}  	else  	{ -		LL_INFOS("Messaging") << "checkCircuitBlocked(circuit): Unknown host - " << host << llendl; +		LL_INFOS("Messaging") << "checkCircuitBlocked(circuit): Unknown host - " << host << LL_ENDL;  		return FALSE;  	}  } @@ -1674,7 +1671,7 @@ BOOL LLMessageSystem::checkCircuitAlive(const U32 circuit)  	if (!host.isOk())  	{ -		LL_DEBUGS("Messaging") << "checkCircuitAlive: Unknown circuit " << circuit << llendl; +		LL_DEBUGS("Messaging") << "checkCircuitAlive: Unknown circuit " << circuit << LL_ENDL;  		return FALSE;  	} @@ -1685,7 +1682,7 @@ BOOL LLMessageSystem::checkCircuitAlive(const U32 circuit)  	}  	else  	{ -		LL_INFOS("Messaging") << "checkCircuitAlive(circuit): Unknown host - " << host << llendl; +		LL_INFOS("Messaging") << "checkCircuitAlive(circuit): Unknown host - " << host << LL_ENDL;  		return FALSE;  	}  } @@ -1699,7 +1696,7 @@ BOOL LLMessageSystem::checkCircuitAlive(const LLHost &host)  	}  	else  	{ -		LL_DEBUGS("Messaging") << "checkCircuitAlive(host): Unknown host - " << host << llendl; +		LL_DEBUGS("Messaging") << "checkCircuitAlive(host): Unknown host - " << host << LL_ENDL;  		return FALSE;  	}  } @@ -1851,18 +1848,18 @@ void LLMessageSystem::processAssignCircuitCode(LLMessageSystem* msg, void**)  	{  		LL_WARNS("Messaging") << "AssignCircuitCode, bad session id. Expecting "  				<< msg->getMySessionID() << " but got " << session_id -				<< llendl; +				<< LL_ENDL;  		return;  	}  	U32 code;  	msg->getU32Fast(_PREHASH_CircuitCode, _PREHASH_Code, code);  	if (!code)  	{ -		LL_ERRS("Messaging") << "Assigning circuit code of zero!" << llendl; +		LL_ERRS("Messaging") << "Assigning circuit code of zero!" << LL_ENDL;  	}  	msg->mOurCircuitCode = code; -	LL_INFOS("Messaging") << "Circuit code " << code << " assigned." << llendl; +	LL_INFOS("Messaging") << "Circuit code " << code << " assigned." << LL_ENDL;  }  */ @@ -1886,20 +1883,20 @@ bool LLMessageSystem::addCircuitCode(U32 code, const LLUUID& session_id)  {  	if(!code)  	{ -		LL_WARNS("Messaging") << "addCircuitCode: zero circuit code" << llendl; +		LL_WARNS("Messaging") << "addCircuitCode: zero circuit code" << LL_ENDL;  		return false;  	}  	code_session_map_t::iterator it = mCircuitCodes.find(code);  	if(it == mCircuitCodes.end())  	{ -		LL_INFOS("Messaging") << "New circuit code " << code << " added" << llendl; +		LL_INFOS("Messaging") << "New circuit code " << code << " added" << LL_ENDL;  		//msg->mCircuitCodes[circuit_code] = circuit_code;  		mCircuitCodes.insert(code_session_map_t::value_type(code, session_id));  	}  	else  	{ -		LL_INFOS("Messaging") << "Duplicate circuit code " << code << " added" << llendl; +		LL_INFOS("Messaging") << "Duplicate circuit code " << code << " added" << LL_ENDL;  	}  	return true;  } @@ -1933,7 +1930,7 @@ void LLMessageSystem::processUseCircuitCode(LLMessageSystem* msg,  			// Whoah, abort!  We don't know anything about this circuit code.  			LL_WARNS("Messaging") << "UseCircuitCode for " << circuit_code_in  					<< " received without AddCircuitCode message - aborting" -					<< llendl; +					<< LL_ENDL;  			return;  		} @@ -1945,7 +1942,7 @@ void LLMessageSystem::processUseCircuitCode(LLMessageSystem* msg,  		{  			LL_WARNS("Messaging") << "UseCircuitCode unmatched session id. Got "  					<< session_id << " but expected " << (*it).second -					<< llendl; +					<< LL_ENDL;  			return;  		} @@ -1958,7 +1955,7 @@ void LLMessageSystem::processUseCircuitCode(LLMessageSystem* msg,  			if ((ip_port_old == ip_port_in) && (circuit_code_old == circuit_code_in))  			{  				// Current information is the same as incoming info, ignore -				LL_INFOS("Messaging") << "Got duplicate UseCircuitCode for circuit " << circuit_code_in << " to " << msg->getSender() << llendl; +				LL_INFOS("Messaging") << "Got duplicate UseCircuitCode for circuit " << circuit_code_in << " to " << msg->getSender() << LL_ENDL;  				return;  			} @@ -1968,27 +1965,27 @@ void LLMessageSystem::processUseCircuitCode(LLMessageSystem* msg,  			msg->mIPPortToCircuitCode.erase(ip_port_old);  			U32 old_port = (U32)(ip_port_old & (U64)0xFFFFFFFF);  			U32 old_ip = (U32)(ip_port_old >> 32); -			LL_INFOS("Messaging") << "Removing derelict lookup entry for circuit " << circuit_code_old << " to " << LLHost(old_ip, old_port) << llendl; +			LL_INFOS("Messaging") << "Removing derelict lookup entry for circuit " << circuit_code_old << " to " << LLHost(old_ip, old_port) << LL_ENDL;  		}  		if (circuit_code_old)  		{  			LLHost cur_host(ip, port); -			LL_WARNS("Messaging") << "Disabling existing circuit for " << cur_host << llendl; +			LL_WARNS("Messaging") << "Disabling existing circuit for " << cur_host << LL_ENDL;  			msg->disableCircuit(cur_host);  			if (circuit_code_old == circuit_code_in)  			{ -				LL_WARNS("Messaging") << "Asymmetrical circuit to ip/port lookup!" << llendl; -				LL_WARNS("Messaging") << "Multiple circuit codes for " << cur_host << " probably!" << llendl; -				LL_WARNS("Messaging") << "Permanently disabling circuit" << llendl; +				LL_WARNS("Messaging") << "Asymmetrical circuit to ip/port lookup!" << LL_ENDL; +				LL_WARNS("Messaging") << "Multiple circuit codes for " << cur_host << " probably!" << LL_ENDL; +				LL_WARNS("Messaging") << "Permanently disabling circuit" << LL_ENDL;  				return;  			}  			else  			{  				LL_WARNS("Messaging") << "Circuit code changed for " << msg->getSender()  						<< " from " << circuit_code_old << " to " -						<< circuit_code_in << llendl; +						<< circuit_code_in << LL_ENDL;  			}  		} @@ -2030,7 +2027,7 @@ void LLMessageSystem::processUseCircuitCode(LLMessageSystem* msg,  		LL_INFOS("Messaging") << "Circuit code " << circuit_code_in << " from "  				<< msg->getSender() << " for agent " << id << " in session " -				<< session_id << llendl; +				<< session_id << LL_ENDL;  		const LLUseCircuitCodeResponder* responder =  			(const LLUseCircuitCodeResponder*) user; @@ -2041,7 +2038,7 @@ void LLMessageSystem::processUseCircuitCode(LLMessageSystem* msg,  	}  	else  	{ -		LL_WARNS("Messaging") << "Got zero circuit code in use_circuit_code" << llendl; +		LL_WARNS("Messaging") << "Got zero circuit code in use_circuit_code" << LL_ENDL;  	}  } @@ -2063,7 +2060,7 @@ void LLMessageSystem::processError(LLMessageSystem* msg, void**)  	LL_WARNS("Messaging") << "Message error from " << msg->getSender() << " - "  		<< error_code << " " << error_token << " " << error_id << " \"" -		<< error_system << "\" \"" << error_message << "\"" << llendl; +		<< error_system << "\" \"" << error_message << "\"" << LL_ENDL;  } @@ -2099,7 +2096,7 @@ void LLMessageSystem::dispatch(  				gMessageSystem->mMessageTemplates.end()) &&  		!LLMessageConfig::isValidMessage(msg_name))  	{ -		LL_WARNS("Messaging") << "Ignoring unknown message " << msg_name << llendl; +		LL_WARNS("Messaging") << "Ignoring unknown message " << msg_name << LL_ENDL;  		responsep->notFound("Invalid message name");  		return;  	} @@ -2110,12 +2107,12 @@ void LLMessageSystem::dispatch(  	if (!handler)  	{  		LL_WARNS("Messaging")	<< "LLMessageService::dispatch > no handler for " -				<< path << llendl; +				<< path << LL_ENDL;  		return;  	}  	// enable this for output of message names -	//LL_INFOS("Messaging") << "< \"" << msg_name << "\"" << llendl; -	//lldebugs << "data: " << LLSDNotationStreamer(message) << llendl;	    +	//LL_INFOS("Messaging") << "< \"" << msg_name << "\"" << LL_ENDL; +	//LL_DEBUGS() << "data: " << LLSDNotationStreamer(message) << LL_ENDL;	     	handler->post(responsep, context, message);  } @@ -2233,7 +2230,7 @@ S32 LLMessageSystem::sendError(  	else  	{  		LL_WARNS("Messaging") << "Data and message were too large -- data removed." -			<< llendl; +			<< LL_ENDL;  		addBinaryData("Data", NULL, 0);  	}  	return sendReliable(host); @@ -2253,7 +2250,7 @@ void	process_packet_ack(LLMessageSystem *msgsystem, void** /*user_data*/)  		for (S32 i = 0; i < ack_count; i++)  		{  			msgsystem->getU32Fast(_PREHASH_Packets, _PREHASH_ID, packet_id, i); -//			LL_DEBUGS("Messaging") << "ack recvd' from " << host << " for packet " << (TPACKETID)packet_id << llendl; +//			LL_DEBUGS("Messaging") << "ack recvd' from " << host << " for packet " << (TPACKETID)packet_id << LL_ENDL;  			cdp->ackReliablePacket(packet_id);  		}  		if (!cdp->getUnackedPacketCount()) @@ -2274,12 +2271,12 @@ void process_log_messages(LLMessageSystem* msg, void**)  	if (log_message)  	{ -		LL_INFOS("Messaging") << "Starting logging via message" << llendl; +		LL_INFOS("Messaging") << "Starting logging via message" << LL_ENDL;  		msg->startLogging();  	}  	else  	{ -		LL_INFOS("Messaging") << "Stopping logging via message" << llendl; +		LL_INFOS("Messaging") << "Stopping logging via message" << LL_ENDL;  		msg->stopLogging();  	}  }*/ @@ -2299,7 +2296,7 @@ void process_create_trusted_circuit(LLMessageSystem *msg, void **)  	if (!cdp)  	{  		LL_WARNS("Messaging") << "Attempt to create trusted circuit without circuit data: " -				<< msg->getSender() << llendl; +				<< msg->getSender() << LL_ENDL;  		return;  	} @@ -2318,13 +2315,13 @@ void process_create_trusted_circuit(LLMessageSystem *msg, void **)  		if( msg->getBlockUntrustedInterface() )  		{  			LL_WARNS("Messaging") << "Ignoring CreateTrustedCircuit on public interface from host: " -				<< msg->getSender() << llendl; +				<< msg->getSender() << LL_ENDL;  			return;  		}  		else  		{  			LL_WARNS("Messaging") << "Processing CreateTrustedCircuit on public interface from host: " -				<< msg->getSender() << llendl; +				<< msg->getSender() << LL_ENDL;  		}  	} @@ -2340,7 +2337,7 @@ void process_create_trusted_circuit(LLMessageSystem *msg, void **)  	if(msg->isMatchingDigestForWindowAndUUIDs(their_digest, TRUST_TIME_WINDOW, local_id, remote_id))  	{  		cdp->setTrusted(TRUE); -		LL_INFOS("Messaging") << "Trusted digest from " << msg->getSender() << llendl; +		LL_INFOS("Messaging") << "Trusted digest from " << msg->getSender() << LL_ENDL;  		return;  	}  	else if (cdp->getTrusted()) @@ -2350,13 +2347,13 @@ void process_create_trusted_circuit(LLMessageSystem *msg, void **)  		// the message system is being slow.  Don't bother sending the deny, as it may continually  		// ping-pong back and forth on a very hosed circuit.  		LL_WARNS("Messaging") << "Ignoring bad digest from known trusted circuit: " << their_digest -			<< " host: " << msg->getSender() << llendl; +			<< " host: " << msg->getSender() << LL_ENDL;  		return;  	}  	else  	{  		LL_WARNS("Messaging") << "Bad digest from known circuit: " << their_digest -				<< " host: " << msg->getSender() << llendl; +				<< " host: " << msg->getSender() << LL_ENDL;  		msg->sendDenyTrustedCircuit(msg->getSender());  		return;  	} @@ -2392,13 +2389,13 @@ void process_deny_trusted_circuit(LLMessageSystem *msg, void **)  		if( msg->getBlockUntrustedInterface() )  		{  			LL_WARNS("Messaging") << "Ignoring DenyTrustedCircuit on public interface from host: " -				<< msg->getSender() << llendl; +				<< msg->getSender() << LL_ENDL;  			return;  		}  		else  		{  			LL_WARNS("Messaging") << "Processing DenyTrustedCircuit on public interface from host: " -				<< msg->getSender() << llendl; +				<< msg->getSender() << LL_ENDL;  		}  	} @@ -2411,7 +2408,7 @@ void process_deny_trusted_circuit(LLMessageSystem *msg, void **)  	// *TODO: probably should keep a count of number of resends  	// per circuit, and stop resending after a while.  	LL_INFOS("Messaging") << "Got DenyTrustedCircuit. Sending CreateTrustedCircuit to " -			<< msg->getSender() << llendl; +			<< msg->getSender() << LL_ENDL;  	msg->sendCreateTrustedCircuit(msg->getSender(), local_id, remote_id);  } @@ -2527,11 +2524,11 @@ bool start_messaging_system(  		if (gMessageSystem->mMessageFileVersionNumber != gPrehashVersionNumber)  		{  			LL_INFOS("AppInit") << "Message template version does not match prehash version number" << LL_ENDL; -			LL_INFOS("AppInit") << "Run simulator with -prehash command line option to rebuild prehash data" << llendl; +			LL_INFOS("AppInit") << "Run simulator with -prehash command line option to rebuild prehash data" << LL_ENDL;  		}  		else  		{ -			LL_DEBUGS("AppInit") << "Message template version matches prehash version number" << llendl; +			LL_DEBUGS("AppInit") << "Message template version matches prehash version number" << LL_ENDL;  		}  	} @@ -2577,7 +2574,7 @@ void LLMessageSystem::startLogging()  	str << "\t<-\tincoming message" <<std::endl;  	str << "\t->\toutgoing message" << std::endl;  	str << "     <>        host           size    zero      id name"; -	LL_INFOS("Messaging") << str.str() << llendl; +	LL_INFOS("Messaging") << str.str() << LL_ENDL;  }  void LLMessageSystem::stopLogging() @@ -2585,7 +2582,7 @@ void LLMessageSystem::stopLogging()  	if(mVerboseLog)  	{  		mVerboseLog = FALSE; -		LL_INFOS("Messaging") << "END MESSAGE LOG" << llendl; +		LL_INFOS("Messaging") << "END MESSAGE LOG" << LL_ENDL;  	}  } @@ -2693,7 +2690,7 @@ void end_messaging_system(bool print_summary)  		{  			std::ostringstream str;  			gMessageSystem->summarizeLogs(str); -			LL_INFOS("Messaging") << str.str().c_str() << llendl; +			LL_INFOS("Messaging") << str.str().c_str() << LL_ENDL;  		}  		delete gMessageSystem; @@ -2746,7 +2743,7 @@ void LLMessageSystem::dumpReceiveCounts()  	if(mNumMessageCounts > 0)  	{ -		LL_DEBUGS("Messaging") << "Dump: " << mNumMessageCounts << " messages processed in " << mReceiveTime << " seconds" << llendl; +		LL_DEBUGS("Messaging") << "Dump: " << mNumMessageCounts << " messages processed in " << mReceiveTime << " seconds" << LL_ENDL;  		for (message_template_name_map_t::const_iterator iter = mMessageTemplates.begin(),  				 end = mMessageTemplates.end();  			 iter != end; iter++) @@ -2755,7 +2752,7 @@ void LLMessageSystem::dumpReceiveCounts()  			if (mt->mReceiveCount > 0)  			{  				LL_INFOS("Messaging") << "Num: " << std::setw(3) << mt->mReceiveCount << " Bytes: " << std::setw(6) << mt->mReceiveBytes -						<< " Invalid: " << std::setw(3) << mt->mReceiveInvalid << " " << mt->mName << " " << llround(100 * mt->mDecodeTimeThisFrame / mReceiveTime) << "%" << llendl; +						<< " Invalid: " << std::setw(3) << mt->mReceiveInvalid << " " << mt->mName << " " << llround(100 * mt->mDecodeTimeThisFrame / mReceiveTime) << "%" << LL_ENDL;  			}  		}  	} @@ -2872,7 +2869,7 @@ S32 LLMessageSystem::zeroCodeExpand(U8** data, S32* data_size)  	if ((*data_size ) < LL_MINIMUM_VALID_PACKET_SIZE)  	{  		LL_WARNS("Messaging") << "zeroCodeExpand() called with data_size of " << *data_size -			<< llendl; +			<< LL_ENDL;  	}  	mTotalBytesIn += *data_size; @@ -2911,7 +2908,7 @@ S32 LLMessageSystem::zeroCodeExpand(U8** data, S32* data_size)  	{  		if (outptr > (&mEncodedRecvBuffer[MAX_BUFFER_SIZE-1]))  		{ -			LL_WARNS("Messaging") << "attempt to write past reasonable encoded buffer size 1" << llendl; +			LL_WARNS("Messaging") << "attempt to write past reasonable encoded buffer size 1" << LL_ENDL;  			callExceptionFunc(MX_WROTE_PAST_BUFFER_SIZE);  			outptr = mEncodedRecvBuffer;					  			break; @@ -2923,7 +2920,7 @@ S32 LLMessageSystem::zeroCodeExpand(U8** data, S32* data_size)  				*outptr++ = *inptr++;    				if (outptr > (&mEncodedRecvBuffer[MAX_BUFFER_SIZE-256]))    				{ -  					LL_WARNS("Messaging") << "attempt to write past reasonable encoded buffer size 2" << llendl; +  					LL_WARNS("Messaging") << "attempt to write past reasonable encoded buffer size 2" << LL_ENDL;  					callExceptionFunc(MX_WROTE_PAST_BUFFER_SIZE);  					outptr = mEncodedRecvBuffer;  					count = -1; @@ -2942,7 +2939,7 @@ S32 LLMessageSystem::zeroCodeExpand(U8** data, S32* data_size)  			{    				if (outptr > (&mEncodedRecvBuffer[MAX_BUFFER_SIZE-(*inptr)]))  				{ -  					LL_WARNS("Messaging") << "attempt to write past reasonable encoded buffer size 3" << llendl; +  					LL_WARNS("Messaging") << "attempt to write past reasonable encoded buffer size 3" << LL_ENDL;  					callExceptionFunc(MX_WROTE_PAST_BUFFER_SIZE);  					outptr = mEncodedRecvBuffer;					  				} @@ -2966,7 +2963,7 @@ void LLMessageSystem::addTemplate(LLMessageTemplate *templatep)  	if (mMessageTemplates.count(templatep->mName) > 0)  	{	  		LL_ERRS("Messaging") << templatep->mName << " already  used as a template name!" -			<< llendl; +			<< LL_ENDL;  	}  	mMessageTemplates[templatep->mName] = templatep;  	mMessageNumbers[templatep->mMessageNumber] = templatep; @@ -2982,7 +2979,7 @@ void LLMessageSystem::setHandlerFuncFast(const char *name, void (*handler_func)(  	}  	else  	{ -		LL_ERRS("Messaging") << name << " is not a known message name!" << llendl; +		LL_ERRS("Messaging") << name << " is not a known message name!" << LL_ENDL;  	}  } @@ -2995,7 +2992,7 @@ bool LLMessageSystem::callHandler(const char *name,  	if(iter == mMessageTemplates.end())  	{  		LL_WARNS("Messaging") << "LLMessageSystem::callHandler: unknown message "  -			<< name << llendl; +			<< name << LL_ENDL;  		return false;  	} @@ -3006,7 +3003,7 @@ bool LLMessageSystem::callHandler(const char *name,  			<< name   			<< " from "  			<< (trustedSource ? "trusted " : "untrusted ") -			<< "source" << llendl; +			<< "source" << LL_ENDL;  		return false;  	} @@ -3142,7 +3139,7 @@ bool LLMessageSystem::generateDigestForWindowAndUUIDs(char* digest, const S32 wi  	std::string shared_secret = get_shared_secret();  	if(shared_secret.empty())  	{ -		LL_ERRS("Messaging") << "Trying to generate complex digest on a machine without a shared secret!" << llendl; +		LL_ERRS("Messaging") << "Trying to generate complex digest on a machine without a shared secret!" << LL_ENDL;  	}  	U32 now = (U32)time(NULL); @@ -3161,7 +3158,7 @@ bool LLMessageSystem::isMatchingDigestForWindowAndUUIDs(const char* digest, cons  	std::string shared_secret = get_shared_secret();  	if(shared_secret.empty())  	{ -		LL_ERRS("Messaging") << "Trying to compare complex digests on a machine without a shared secret!" << llendl; +		LL_ERRS("Messaging") << "Trying to compare complex digests on a machine without a shared secret!" << LL_ENDL;  	}  	char our_digest[MD5HEX_STR_SIZE];	/* Flawfinder: ignore */ @@ -3208,7 +3205,7 @@ bool LLMessageSystem::generateDigestForWindow(char* digest, const S32 window) co  	std::string shared_secret = get_shared_secret();  	if(shared_secret.empty())  	{ -		LL_ERRS("Messaging") << "Trying to generate simple digest on a machine without a shared secret!" << llendl; +		LL_ERRS("Messaging") << "Trying to generate simple digest on a machine without a shared secret!" << LL_ENDL;  	}  	U32 now = (U32)time(NULL); @@ -3227,7 +3224,7 @@ bool LLMessageSystem::isMatchingDigestForWindow(const char* digest, S32 const wi  	std::string shared_secret = get_shared_secret();  	if(shared_secret.empty())  	{ -		LL_ERRS("Messaging") << "Trying to compare simple digests on a machine without a shared secret!" << llendl; +		LL_ERRS("Messaging") << "Trying to compare simple digests on a machine without a shared secret!" << LL_ENDL;  	}  	char our_digest[MD5HEX_STR_SIZE];	/* Flawfinder: ignore */ @@ -3261,12 +3258,12 @@ void LLMessageSystem::sendCreateTrustedCircuit(const LLHost &host, const LLUUID  	char digest[MD5HEX_STR_SIZE];	/* Flawfinder: ignore */  	if (id1.isNull())  	{ -		LL_WARNS("Messaging") << "Can't send CreateTrustedCircuit to " << host << " because we don't have the local end point ID" << llendl; +		LL_WARNS("Messaging") << "Can't send CreateTrustedCircuit to " << host << " because we don't have the local end point ID" << LL_ENDL;  		return;  	}  	if (id2.isNull())  	{ -		LL_WARNS("Messaging") << "Can't send CreateTrustedCircuit to " << host << " because we don't have the remote end point ID" << llendl; +		LL_WARNS("Messaging") << "Can't send CreateTrustedCircuit to " << host << " because we don't have the remote end point ID" << LL_ENDL;  		return;  	}  	generateDigestForWindowAndUUIDs(digest, TRUST_TIME_WINDOW, id1, id2); @@ -3274,7 +3271,7 @@ void LLMessageSystem::sendCreateTrustedCircuit(const LLHost &host, const LLUUID  	nextBlockFast(_PREHASH_DataBlock);  	addUUIDFast(_PREHASH_EndPointID, id1);  	addBinaryDataFast(_PREHASH_Digest, digest, MD5HEX_STR_BYTES); -	LL_INFOS("Messaging") << "xmitting digest: " << digest << " Host: " << host << llendl; +	LL_INFOS("Messaging") << "xmitting digest: " << digest << " Host: " << host << LL_ENDL;  	sendMessage(host);  } @@ -3288,10 +3285,10 @@ void LLMessageSystem::reallySendDenyTrustedCircuit(const LLHost &host)  	LLCircuitData *cdp = mCircuitInfo.findCircuit(host);  	if (!cdp)  	{ -		LL_WARNS("Messaging") << "Not sending DenyTrustedCircuit to host without a circuit." << llendl; +		LL_WARNS("Messaging") << "Not sending DenyTrustedCircuit to host without a circuit." << LL_ENDL;  		return;  	} -	LL_INFOS("Messaging") << "Sending DenyTrustedCircuit to " << host << llendl; +	LL_INFOS("Messaging") << "Sending DenyTrustedCircuit to " << host << LL_ENDL;  	newMessageFast(_PREHASH_DenyTrustedCircuit);  	nextBlockFast(_PREHASH_DataBlock);  	addUUIDFast(_PREHASH_EndPointID, cdp->getLocalEndPointID()); @@ -3312,7 +3309,7 @@ void LLMessageSystem::establishBidirectionalTrust(const LLHost &host, S64 frame_  	std::string shared_secret = get_shared_secret();  	if(shared_secret.empty())  	{ -		LL_ERRS("Messaging") << "Trying to establish bidirectional trust on a machine without a shared secret!" << llendl; +		LL_ERRS("Messaging") << "Trying to establish bidirectional trust on a machine without a shared secret!" << LL_ENDL;  	}  	LLTimer timeout; @@ -3364,8 +3361,8 @@ void LLMessageSystem::establishBidirectionalTrust(const LLHost &host, S64 frame_  void LLMessageSystem::dumpPacketToLog()  { -	LL_WARNS("Messaging") << "Packet Dump from:" << mPacketRing.getLastSender() << llendl; -	LL_WARNS("Messaging") << "Packet Size:" << mTrueReceiveSize << llendl; +	LL_WARNS("Messaging") << "Packet Dump from:" << mPacketRing.getLastSender() << LL_ENDL; +	LL_WARNS("Messaging") << "Packet Size:" << mTrueReceiveSize << LL_ENDL;  	char line_buffer[256];		/* Flawfinder: ignore */  	S32 i;  	S32 cur_line_pos = 0; @@ -3380,13 +3377,13 @@ void LLMessageSystem::dumpPacketToLog()  		if (cur_line_pos >= 16)  		{  			cur_line_pos = 0; -			LL_WARNS("Messaging") << "PD:" << cur_line << "PD:" << line_buffer << llendl; +			LL_WARNS("Messaging") << "PD:" << cur_line << "PD:" << line_buffer << LL_ENDL;  			cur_line++;  		}  	}  	if (cur_line_pos)  	{ -		LL_WARNS("Messaging") << "PD:" << cur_line << "PD:" << line_buffer << llendl; +		LL_WARNS("Messaging") << "PD:" << cur_line << "PD:" << line_buffer << LL_ENDL;  	}  } @@ -3930,7 +3927,7 @@ void LLMessageSystem::getStringFast(const char *block, const char *var,  {  	if(buffer_size <= 0)  	{ -		LL_WARNS("Messaging") << "buffer_size <= 0" << llendl; +		LL_WARNS("Messaging") << "buffer_size <= 0" << LL_ENDL;  	}  	mMessageReader->getString(block, var, buffer_size, s, blocknum);  } @@ -4039,7 +4036,7 @@ void LLMessageSystem::banUdpMessage(const std::string& name)  	}  	else  	{ -		llwarns << "Attempted to ban an unknown message: " << name << "." << llendl; +		LL_WARNS() << "Attempted to ban an unknown message: " << name << "." << LL_ENDL;  	}  }  const LLHost& LLMessageSystem::getSender() const diff --git a/indra/llmessage/message.h b/indra/llmessage/message.h index e94e2282a0..05e384d939 100755 --- a/indra/llmessage/message.h +++ b/indra/llmessage/message.h @@ -45,7 +45,7 @@  #include "llerror.h"  #include "net.h" -#include "string_table.h" +#include "llstringtable.h"  #include "llcircuit.h"  #include "lltimer.h"  #include "llpacketring.h" diff --git a/indra/llmessage/net.h b/indra/llmessage/net.h index 0f2437479d..beb67bae4e 100755 --- a/indra/llmessage/net.h +++ b/indra/llmessage/net.h @@ -67,5 +67,8 @@ const S32	ETHERNET_MTU_BYTES = 1500;  const S32	MTUBITS = MTUBYTES*8;  const S32	MTUU32S = MTUBITS/32; +// For automatic port discovery when running multiple viewers on one host +const	U32		PORT_DISCOVERY_RANGE_MIN		= 13000; +const	U32		PORT_DISCOVERY_RANGE_MAX		= PORT_DISCOVERY_RANGE_MIN + 50;  #endif diff --git a/indra/llmessage/partsyspacket.cpp b/indra/llmessage/partsyspacket.cpp index ad21614258..b07a050617 100755 --- a/indra/llmessage/partsyspacket.cpp +++ b/indra/llmessage/partsyspacket.cpp @@ -28,7 +28,7 @@  #include "linden_common.h"  #include "partsyspacket.h" -#include "imageids.h" +#include "indra_constants.h"  // this function is global  void gSetInitDataDefaults(LLPartInitData *setMe) diff --git a/indra/llmessage/patch_code.cpp b/indra/llmessage/patch_code.cpp index e5d7f19448..cdf5fdb3c6 100755 --- a/indra/llmessage/patch_code.cpp +++ b/indra/llmessage/patch_code.cpp @@ -31,7 +31,7 @@  #include "v3math.h"  #include "patch_dct.h"  #include "patch_code.h" -#include "bitpack.h" +#include "llbitpack.h"  U32 gPatchSize, gWordBits; | 
