diff options
| author | Steven Bennetts <steve@lindenlab.com> | 2009-06-21 08:04:56 +0000 | 
|---|---|---|
| committer | Steven Bennetts <steve@lindenlab.com> | 2009-06-21 08:04:56 +0000 | 
| commit | 9ec432034dc3c45d7ce763eb02dae4cc7f6b8da8 (patch) | |
| tree | 4a505c1e0919af52800b3ffb3eaf135e7d6f9ce6 /indra/llmessage | |
| parent | 351ebe9fcb76f3b99c2957004bb8493a904869ee (diff) | |
merge -r 122421-124917 viewer-2.0.0-2 -> viewer-2.0.0-3
ignore-dead-branch
Diffstat (limited to 'indra/llmessage')
33 files changed, 313 insertions, 223 deletions
| diff --git a/indra/llmessage/llares.h b/indra/llmessage/llares.h index 96d7f6dd31..c709a08499 100644 --- a/indra/llmessage/llares.h +++ b/indra/llmessage/llares.h @@ -45,7 +45,8 @@  # include <ares/ares.h>  #endif -#include "llmemory.h" +#include "llpointer.h" +#include "llrefcount.h"  #include "lluri.h"  class LLQueryResponder; diff --git a/indra/llmessage/llcachename.cpp b/indra/llmessage/llcachename.cpp index 799bc83e20..b42c5237f7 100644 --- a/indra/llmessage/llcachename.cpp +++ b/indra/llmessage/llcachename.cpp @@ -42,11 +42,7 @@  #include "llsdserialize.h"  #include "lluuid.h"  #include "message.h" - -// Constants -static const std::string CN_WAITING("(Loading...)"); // *TODO: translate -static const std::string CN_NOBODY("(nobody)"); // *TODO: translate -static const std::string CN_NONE("(none)"); // *TODO: translate +#include "llmemtype.h"  // llsd serialization constants  static const std::string AGENTS("agents"); @@ -65,6 +61,7 @@ const S32 CN_FILE_VERSION = 2;  // Globals  LLCacheName* gCacheName = NULL; +std::map<std::string, std::string> LLCacheName::sCacheName;  /// ---------------------------------------------------------------------------  /// class LLCacheNameEntry @@ -92,17 +89,19 @@ class PendingReply  {  public:  	LLUUID				mID; -	LLCacheNameCallback mCallback; +	LLCacheNameSignal	mSignal;  	LLHost				mHost; -	void*				mData; -	PendingReply(const LLUUID& id, LLCacheNameCallback callback, void* data = NULL) -		: mID(id), mCallback(callback), mData(data) -	{ } - +	  	PendingReply(const LLUUID& id, const LLHost& host) -		: mID(id), mCallback(0), mHost(host) -	{ } - +		: mID(id), mHost(host) +	{ +	} +	 +	boost::signals::connection setCallback(const LLCacheNameCallback& cb) +	{ +		return mSignal.connect(cb); +	} +	  	void done()			{ mID.setNull(); }  	bool isDone() const	{ return mID.isNull() != FALSE; }  }; @@ -187,10 +186,9 @@ void ReplySender::flush()  typedef std::set<LLUUID>					AskQueue; -typedef std::vector<PendingReply>			ReplyQueue; +typedef std::list<PendingReply*>			ReplyQueue;  typedef std::map<LLUUID,U32>				PendingQueue;  typedef std::map<LLUUID, LLCacheNameEntry*> Cache; -typedef std::vector<LLCacheNameCallback>	Observers;  class LLCacheName::Impl  { @@ -211,13 +209,16 @@ public:  	ReplyQueue			mReplyQueue;  		// requests awaiting replies from us -	Observers			mObservers; +	LLCacheNameSignal	mSignal;  	LLFrameTimer		mProcessTimer;  	Impl(LLMessageSystem* msg);  	~Impl(); - +	 +	boost::signals::connection addPending(const LLUUID& id, const LLCacheNameCallback& callback); +	void addPending(const LLUUID& id, const LLHost& host); +	  	void processPendingAsks();  	void processPendingReplies();  	void sendRequest(const char* msg_name, const AskQueue& queue); @@ -231,8 +232,6 @@ public:  	static void handleUUIDNameReply(LLMessageSystem* msg, void** userdata);  	static void handleUUIDGroupNameRequest(LLMessageSystem* msg, void** userdata);  	static void handleUUIDGroupNameReply(LLMessageSystem* msg, void** userdata); - -	void notifyObservers(const LLUUID& id, const std::string& first, const std::string& last, BOOL group);  }; @@ -247,6 +246,9 @@ LLCacheName::LLCacheName(LLMessageSystem* msg)  LLCacheName::LLCacheName(LLMessageSystem* msg, const LLHost& upstream_host)  	: impl(* new Impl(msg))  { +	sCacheName["waiting"] = "(Loading...)"; +	sCacheName["nobody"] = "(nobody)"; +	sCacheName["none"] = "(none)";  	setUpstream(upstream_host);  } @@ -272,52 +274,31 @@ LLCacheName::Impl::Impl(LLMessageSystem* msg)  LLCacheName::Impl::~Impl()  {  	for_each(mCache.begin(), mCache.end(), DeletePairedPointer()); +	for_each(mReplyQueue.begin(), mReplyQueue.end(), DeletePointer());  } - -void LLCacheName::setUpstream(const LLHost& upstream_host) +boost::signals::connection LLCacheName::Impl::addPending(const LLUUID& id, const LLCacheNameCallback& callback)  { -	impl.mUpstreamHost = upstream_host; +	PendingReply* reply = new PendingReply(id, LLHost()); +	boost::signals::connection res = reply->setCallback(callback); +	mReplyQueue.push_back(reply); +	return res;  } -void LLCacheName::addObserver(LLCacheNameCallback callback) +void LLCacheName::Impl::addPending(const LLUUID& id, const LLHost& host)  { -	impl.mObservers.push_back(callback); +	PendingReply* reply = new PendingReply(id, host); +	mReplyQueue.push_back(reply);  } -void LLCacheName::removeObserver(LLCacheNameCallback callback) +void LLCacheName::setUpstream(const LLHost& upstream_host)  { -	Observers::iterator it = impl.mObservers.begin(); -	Observers::iterator end = impl.mObservers.end(); - -	for ( ; it != end; ++it) -	{ -		const LLCacheNameCallback& cb = (*it); -		if (cb == callback) -		{ -			impl.mObservers.erase(it); -			return; -		} -	} +	impl.mUpstreamHost = upstream_host;  } -void LLCacheName::cancelCallback(const LLUUID& id, LLCacheNameCallback callback, void* user_data) +boost::signals::connection LLCacheName::addObserver(const LLCacheNameCallback& callback)  { -	ReplyQueue::iterator it = impl.mReplyQueue.begin(); -	ReplyQueue::iterator end = impl.mReplyQueue.end(); -	 -	for(; it != end; ++it) -	{ -		const PendingReply& reply = (*it); - -		if ((callback == reply.mCallback) -			&& (id == reply.mID) -			&& (user_data == reply.mData) ) -		{ -			impl.mReplyQueue.erase(it); -			return; -		} -	} +	return impl.mSignal.connect(callback);  }  void LLCacheName::importFile(LLFILE* fp) @@ -493,7 +474,7 @@ BOOL LLCacheName::getName(const LLUUID& id, std::string& first, std::string& las  {  	if(id.isNull())  	{ -		first = CN_NOBODY; +		first = sCacheName["nobody"];  		last.clear();  		return FALSE;  	} @@ -507,7 +488,7 @@ BOOL LLCacheName::getName(const LLUUID& id, std::string& first, std::string& las  	}  	else  	{ -		first = CN_WAITING; +		first = sCacheName["waiting"];  		last.clear();  		if (!impl.isRequestPending(id))  		{ @@ -517,6 +498,14 @@ BOOL LLCacheName::getName(const LLUUID& id, std::string& first, std::string& las  	}  } +// static +void LLCacheName::LocalizeCacheName(std::string key, std::string value) +{ +	if (key!="" && value!= "" ) +		sCacheName[key]=value; +	else +		llwarns<< " Error localizing cache key " << key << " To "<< value<<llendl; +}  BOOL LLCacheName::getFullName(const LLUUID& id, std::string& fullname)  { @@ -530,7 +519,7 @@ BOOL LLCacheName::getGroupName(const LLUUID& id, std::string& group)  {  	if(id.isNull())  	{ -		group = CN_NONE; +		group = sCacheName["none"];  		return FALSE;  	} @@ -551,7 +540,7 @@ BOOL LLCacheName::getGroupName(const LLUUID& id, std::string& group)  	}  	else   	{ -		group = CN_WAITING; +		group = sCacheName["waiting"];  		if (!impl.isRequestPending(id))  		{  			impl.mAskGroupQueue.insert(id); @@ -559,28 +548,38 @@ BOOL LLCacheName::getGroupName(const LLUUID& id, std::string& group)  		return FALSE;  	}  } - -// TODO: Make the cache name callback take a SINGLE std::string, -// not a separate first and last name. -void LLCacheName::get(const LLUUID& id, BOOL is_group, LLCacheNameCallback callback, void* user_data) +// This is a little bit kludgy. LLCacheNameCallback is a slot instead of a function pointer. +//  The reason it is a slot is so that the legacy get() function below can bind an old callback +//  and pass it as a slot. The reason it isn't a boost::function is so that trackable behavior +//  deson't get lost. As a result, we have to bind the slot to a signal to call it, even when +//  we call it immediately. -Steve +// NOTE: Even though passing first and last name is a bit of extra overhead, it eliminates the +//  potential need for any parsing should any code need to handle first and last name independently. +boost::signals::connection LLCacheName::get(const LLUUID& id, BOOL is_group, const LLCacheNameCallback& callback)  { +	boost::signals::connection res; +	  	if(id.isNull())  	{ -		callback(id, CN_NOBODY, "", is_group, user_data); -		return; +		LLCacheNameSignal signal; +		signal.connect(callback); +		signal(id, sCacheName["nobody"], "", is_group); +		return res;  	}  	LLCacheNameEntry* entry = get_ptr_in_map(impl.mCache, id );  	if (entry)  	{ +		LLCacheNameSignal signal; +		signal.connect(callback);  		// id found in map therefore we can call the callback immediately.  		if (entry->mIsGroup)  		{ -			callback(id, entry->mGroupName, "", entry->mIsGroup, user_data); +			signal(id, entry->mGroupName, "", entry->mIsGroup);  		}  		else  		{ -			callback(id, entry->mFirstName, entry->mLastName, entry->mIsGroup, user_data); +			signal(id, entry->mFirstName, entry->mLastName, entry->mIsGroup);  		}  	}  	else @@ -597,12 +596,19 @@ void LLCacheName::get(const LLUUID& id, BOOL is_group, LLCacheNameCallback callb  				impl.mAskNameQueue.insert(id);  			}  		} -		impl.mReplyQueue.push_back(PendingReply(id, callback, user_data)); +		res = impl.addPending(id, callback);  	} +	return res; +} + +boost::signals::connection LLCacheName::get(const LLUUID& id, BOOL is_group, old_callback_t callback, void* user_data) +{ +	return get(id, is_group, boost::bind(callback, _1, _2, _3, _4, user_data));  }  void LLCacheName::processPending()  { +	LLMemType mt_pp(LLMemType::MTYPE_CACHE_PROCESS_PENDING);  	const F32 SECS_BETWEEN_PROCESS = 0.1f;  	if(!impl.mProcessTimer.checkExpirationAndReset(SECS_BETWEEN_PROCESS))  	{ @@ -684,18 +690,19 @@ void LLCacheName::dumpStats()  			<< " AskGroup=" << impl.mAskGroupQueue.size()  			<< " Pending=" << impl.mPendingQueue.size()  			<< " Reply=" << impl.mReplyQueue.size() -			<< " Observers=" << impl.mObservers.size() +// 			<< " Observers=" << impl.mSignal.size()  			<< llendl;  }  //static   std::string LLCacheName::getDefaultName()  { -	return CN_WAITING; +	return sCacheName["waiting"];  }  void LLCacheName::Impl::processPendingAsks()  { +	LLMemType mt_ppa(LLMemType::MTYPE_CACHE_PROCESS_PENDING_ASKS);  	sendRequest(_PREHASH_UUIDNameRequest, mAskNameQueue);  	sendRequest(_PREHASH_UUIDGroupNameRequest, mAskGroupQueue);  	mAskNameQueue.clear(); @@ -704,50 +711,50 @@ void LLCacheName::Impl::processPendingAsks()  void LLCacheName::Impl::processPendingReplies()  { -	ReplyQueue::iterator it = mReplyQueue.begin(); -	ReplyQueue::iterator end = mReplyQueue.end(); -	 +	LLMemType mt_ppr(LLMemType::MTYPE_CACHE_PROCESS_PENDING_REPLIES);  	// First call all the callbacks, because they might send messages. -	for(; it != end; ++it) +	for(ReplyQueue::iterator it = mReplyQueue.begin(); it != mReplyQueue.end(); ++it)  	{ -		LLCacheNameEntry* entry = get_ptr_in_map(mCache, it->mID); +		PendingReply* reply = *it; +		LLCacheNameEntry* entry = get_ptr_in_map(mCache, reply->mID);  		if(!entry) continue; -		if (it->mCallback) +		if (!entry->mIsGroup)  		{ -			if (!entry->mIsGroup) -			{ -				(it->mCallback)(it->mID, -					entry->mFirstName, entry->mLastName, -					FALSE, it->mData); -			} -			else { -				(it->mCallback)(it->mID, -					entry->mGroupName, "", -					TRUE, it->mData); -			} +			(reply->mSignal)(reply->mID, entry->mFirstName, entry->mLastName, FALSE); +		} +		else +		{ +			(reply->mSignal)(reply->mID, entry->mGroupName, "", TRUE);  		}  	}  	// Forward on all replies, if needed.  	ReplySender sender(mMsg); -	for (it = mReplyQueue.begin(); it != end; ++it) +	for(ReplyQueue::iterator it = mReplyQueue.begin(); it != mReplyQueue.end(); ++it)  	{ -		LLCacheNameEntry* entry = get_ptr_in_map(mCache, it->mID); +		PendingReply* reply = *it; +		LLCacheNameEntry* entry = get_ptr_in_map(mCache, reply->mID);  		if(!entry) continue; -		if (it->mHost.isOk()) +		if (reply->mHost.isOk())  		{ -			sender.send(it->mID, *entry, it->mHost); +			sender.send(reply->mID, *entry, reply->mHost);  		} -		it->done(); +		reply->done(); +	} +	 +	for(ReplyQueue::iterator it = mReplyQueue.begin(); it != mReplyQueue.end(); ) +	{ +		ReplyQueue::iterator curit = it++; +		PendingReply* reply = *curit; +		if (reply->isDone()) +		{ +			delete reply; +			mReplyQueue.erase(curit); +		}  	} - -	mReplyQueue.erase( -		remove_if(mReplyQueue.begin(), mReplyQueue.end(), -			std::mem_fun_ref(&PendingReply::isDone)), -		mReplyQueue.end());  } @@ -785,18 +792,6 @@ void LLCacheName::Impl::sendRequest(  	}  } -void LLCacheName::Impl::notifyObservers(const LLUUID& id, -	const std::string& first, const std::string& last, BOOL is_group) -{ -	for (Observers::const_iterator i = mObservers.begin(), -								   end = mObservers.end(); -		i != end; -		++i) -	{ -		(**i)(id, first, last, is_group, NULL); -	} -} -  bool LLCacheName::Impl::isRequestPending(const LLUUID& id)  {  	U32 now = (U32)time(NULL); @@ -863,7 +858,7 @@ void LLCacheName::Impl::processUUIDRequest(LLMessageSystem* msg, bool isGroup)  				}  			} -			mReplyQueue.push_back(PendingReply(id, fromHost)); +			addPending(id, fromHost);  		}  	}  } @@ -901,11 +896,11 @@ void LLCacheName::Impl::processUUIDReply(LLMessageSystem* msg, bool isGroup)  		if (!isGroup)  		{ -			notifyObservers(id, entry->mFirstName, entry->mLastName, FALSE); +			mSignal(id, entry->mFirstName, entry->mLastName, FALSE);  		}  		else  		{ -			notifyObservers(id, entry->mGroupName, "", TRUE); +			mSignal(id, entry->mGroupName, "", TRUE);  		}  	}  } diff --git a/indra/llmessage/llcachename.h b/indra/llmessage/llcachename.h index 2757b86a7c..414b6590f6 100644 --- a/indra/llmessage/llcachename.h +++ b/indra/llmessage/llcachename.h @@ -33,12 +33,22 @@  #ifndef LL_LLCACHENAME_H  #define LL_LLCACHENAME_H +#include <boost/bind.hpp> +#include <boost/signals.hpp> +  class LLMessageSystem;  class LLHost;  class LLUUID; -// agent_id/group_id, first_name, last_name, is_group, user_data -typedef void (*LLCacheNameCallback)(const LLUUID&, const std::string&, const std::string&, BOOL, void*); + +typedef boost::signal<void (const LLUUID& id, +							const std::string& first_name, +							const std::string& last_name, +							BOOL is_group)> LLCacheNameSignal; +typedef LLCacheNameSignal::slot_type LLCacheNameCallback; + +// Old callback with user data for compatability +typedef void (*old_callback_t)(const LLUUID&, const std::string&, const std::string&, BOOL, void*);  // Here's the theory:  // If you request a name that isn't in the cache, it returns "waiting" @@ -59,10 +69,7 @@ public:  	// for simulators, this is the data server  	void setUpstream(const LLHost& upstream_host); -	void addObserver(LLCacheNameCallback callback); -	void removeObserver(LLCacheNameCallback callback); - -	void cancelCallback(const LLUUID& id, LLCacheNameCallback callback, void* user_data = NULL); +	boost::signals::connection addObserver(const LLCacheNameCallback& callback);  	// janky old format. Remove after a while. Phoenix. 2008-01-30  	void importFile(LLFILE* fp); @@ -89,11 +96,10 @@ public:  	// If the data is currently available, may call the callback immediatly  	// otherwise, will request the data, and will call the callback when  	// available.  There is no garuntee the callback will ever be called. -	void get(const LLUUID& id, BOOL is_group, LLCacheNameCallback callback, void* user_data = NULL); +	boost::signals::connection get(const LLUUID& id, BOOL is_group, const LLCacheNameCallback& callback);  	// LEGACY -	void getName(const LLUUID& id, LLCacheNameCallback callback, void* user_data = NULL) -			{ get(id, FALSE, callback, user_data); } +	boost::signals::connection get(const LLUUID& id, BOOL is_group, old_callback_t callback, void* user_data);  	// This method needs to be called from time to time to send out  	// requests. @@ -107,7 +113,8 @@ public:  	void dumpStats();	// Dumps the sizes of the cache and associated queues.  	static std::string getDefaultName(); - +	static void LocalizeCacheName(std::string key, std::string value); +	static std::map<std::string, std::string> sCacheName;  private:  	class Impl; diff --git a/indra/llmessage/llhttpclientadapter.cpp b/indra/llmessage/llhttpclientadapter.cpp index bbb56960df..b6988224ce 100644 --- a/indra/llmessage/llhttpclientadapter.cpp +++ b/indra/llmessage/llhttpclientadapter.cpp @@ -4,7 +4,7 @@   *   * $LicenseInfo:firstyear=2009&license=viewergpl$   *  - * Copyright (c) 2001-2009, Linden Research, Inc. + * Copyright (c) 2009, Linden Research, Inc.   *    * Second Life Viewer Source Code   * The source code in this file ("Source Code") is provided by Linden Lab @@ -12,12 +12,13 @@   * ("GPL"), unless you have obtained a separate licensing agreement   * ("Other License"), formally executed by you and Linden Lab.  Terms of   * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlife.com/developers/opensource/gplv2 + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2   *    * There are special exceptions to the terms and conditions of the GPL as   * it is applied to this Source Code. View the full text of the exception   * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at http://secondlife.com/developers/opensource/flossexception + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception   *    * By copying, modifying or distributing this software, you acknowledge   * that you have read and understood your obligations described above, diff --git a/indra/llmessage/llhttpclientadapter.h b/indra/llmessage/llhttpclientadapter.h index d5f3aeaf2c..7f76390d0c 100644 --- a/indra/llmessage/llhttpclientadapter.h +++ b/indra/llmessage/llhttpclientadapter.h @@ -4,7 +4,7 @@   *   * $LicenseInfo:firstyear=2008&license=viewergpl$   *  - * Copyright (c) 2001-2008, Linden Research, Inc. + * Copyright (c) 2008-2009, Linden Research, Inc.   *    * Second Life Viewer Source Code   * The source code in this file ("Source Code") is provided by Linden Lab @@ -12,12 +12,13 @@   * ("GPL"), unless you have obtained a separate licensing agreement   * ("Other License"), formally executed by you and Linden Lab.  Terms of   * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlife.com/developers/opensource/gplv2 + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2   *    * There are special exceptions to the terms and conditions of the GPL as   * it is applied to this Source Code. View the full text of the exception   * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at http://secondlife.com/developers/opensource/flossexception + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception   *    * By copying, modifying or distributing this software, you acknowledge   * that you have read and understood your obligations described above, @@ -33,7 +34,7 @@  #define LL_HTTPCLIENTADAPTER_H  #include "llhttpclientinterface.h" -#include "llmemory.h"	// LLSingleton<> +#include "llsingleton.h"	// LLSingleton<>  class LLHTTPClientAdapter : public LLHTTPClientInterface, public LLSingleton<LLHTTPClientAdapter>  { diff --git a/indra/llmessage/llhttpclientinterface.h b/indra/llmessage/llhttpclientinterface.h index 1f13d46447..42a8e5cd0a 100644 --- a/indra/llmessage/llhttpclientinterface.h +++ b/indra/llmessage/llhttpclientinterface.h @@ -4,7 +4,7 @@   *   * $LicenseInfo:firstyear=2008&license=viewergpl$   *  - * Copyright (c) 2001-2008, Linden Research, Inc. + * Copyright (c) 2008-2009, Linden Research, Inc.   *    * Second Life Viewer Source Code   * The source code in this file ("Source Code") is provided by Linden Lab @@ -12,12 +12,13 @@   * ("GPL"), unless you have obtained a separate licensing agreement   * ("Other License"), formally executed by you and Linden Lab.  Terms of   * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlife.com/developers/opensource/gplv2 + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2   *    * There are special exceptions to the terms and conditions of the GPL as   * it is applied to this Source Code. View the full text of the exception   * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at http://secondlife.com/developers/opensource/flossexception + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception   *    * By copying, modifying or distributing this software, you acknowledge   * that you have read and understood your obligations described above, diff --git a/indra/llmessage/llhttpnode.h b/indra/llmessage/llhttpnode.h index 17ffd66e8f..3f4da69a1d 100644 --- a/indra/llmessage/llhttpnode.h +++ b/indra/llmessage/llhttpnode.h @@ -33,7 +33,8 @@  #ifndef LL_LLHTTPNODE_H  #define LL_LLHTTPNODE_H -#include "llmemory.h" +#include "llpointer.h" +#include "llrefcount.h"  #include "llsd.h"  class LLChainIOFactory; diff --git a/indra/llmessage/llhttpnodeadapter.h b/indra/llmessage/llhttpnodeadapter.h index 08b5664162..7c3e9d81d1 100644 --- a/indra/llmessage/llhttpnodeadapter.h +++ b/indra/llmessage/llhttpnodeadapter.h @@ -3,26 +3,27 @@   * @brief Declaration of llhttpnode adapter classes   *   * $LicenseInfo:firstyear=2009&license=viewergpl$ - * + *    * Copyright (c) 2009, Linden Research, Inc. - * + *    * Second Life Viewer Source Code   * The source code in this file ("Source Code") is provided by Linden Lab   * to you under the terms of the GNU General Public License, version 2.0   * ("GPL"), unless you have obtained a separate licensing agreement   * ("Other License"), formally executed by you and Linden Lab.  Terms of   * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlife.com/developers/opensource/gplv2 - * + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + *    * There are special exceptions to the terms and conditions of the GPL as   * it is applied to this Source Code. View the full text of the exception   * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at http://secondlife.com/developers/opensource/flossexception - * + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception + *    * By copying, modifying or distributing this software, you acknowledge   * that you have read and understood your obligations described above,   * and agree to abide by those obligations. - * + *    * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO   * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,   * COMPLETENESS OR PERFORMANCE. diff --git a/indra/llmessage/llinstantmessage.cpp b/indra/llmessage/llinstantmessage.cpp index 3205ddfaeb..7c63625004 100644 --- a/indra/llmessage/llinstantmessage.cpp +++ b/indra/llmessage/llinstantmessage.cpp @@ -41,7 +41,7 @@  #include "llsd.h"  #include "llsdserialize.h"  #include "llsdutil.h" -#include "llmemory.h" +#include "llpointer.h"  #include "message.h"  #include "message.h" diff --git a/indra/llmessage/llinstantmessage.h b/indra/llmessage/llinstantmessage.h index 9ce6a10c80..272e753f3c 100644 --- a/indra/llmessage/llinstantmessage.h +++ b/indra/llmessage/llinstantmessage.h @@ -36,7 +36,8 @@  #include "llhost.h"  #include "lluuid.h"  #include "llsd.h" -#include "llmemory.h" +#include "llrefcount.h" +#include "llpointer.h"  #include "v3math.h"  class LLMessageSystem; diff --git a/indra/llmessage/llmessagesenderinterface.h b/indra/llmessage/llmessagesenderinterface.h index 4082666339..119eb1d7f7 100644 --- a/indra/llmessage/llmessagesenderinterface.h +++ b/indra/llmessage/llmessagesenderinterface.h @@ -4,7 +4,7 @@   *   * $LicenseInfo:firstyear=2008&license=viewergpl$   *  - * Copyright (c) 2001-2008, Linden Research, Inc. + * Copyright (c) 2008-2009, Linden Research, Inc.   *    * Second Life Viewer Source Code   * The source code in this file ("Source Code") is provided by Linden Lab @@ -12,12 +12,13 @@   * ("GPL"), unless you have obtained a separate licensing agreement   * ("Other License"), formally executed by you and Linden Lab.  Terms of   * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlife.com/developers/opensource/gplv2 + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2   *    * There are special exceptions to the terms and conditions of the GPL as   * it is applied to this Source Code. View the full text of the exception   * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at http://secondlife.com/developers/opensource/flossexception + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception   *    * By copying, modifying or distributing this software, you acknowledge   * that you have read and understood your obligations described above, diff --git a/indra/llmessage/llregionpresenceverifier.cpp b/indra/llmessage/llregionpresenceverifier.cpp index 552cf4cbdb..0527d5cb8d 100644 --- a/indra/llmessage/llregionpresenceverifier.cpp +++ b/indra/llmessage/llregionpresenceverifier.cpp @@ -4,14 +4,25 @@   *   * $LicenseInfo:firstyear=2008&license=viewergpl$   *  - * Copyright (c) 2008, Linden Research, Inc. + * Copyright (c) 2008-2009, Linden Research, Inc.   *  - * The following source code is PROPRIETARY AND CONFIDENTIAL. Use of - * this source code is governed by the Linden Lab Source Code Disclosure - * Agreement ("Agreement") previously entered between you and Linden - * Lab. By accessing, using, copying, modifying or distributing this - * software, you acknowledge that you have been informed of your - * obligations under the Agreement and agree to abide by those obligations. + * Second Life Viewer Source Code + * The source code in this file ("Source Code") is provided by Linden Lab + * to you under the terms of the GNU General Public License, version 2.0 + * ("GPL"), unless you have obtained a separate licensing agreement + * ("Other License"), formally executed by you and Linden Lab.  Terms of + * the GPL can be found in doc/GPL-license.txt in this distribution, or + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + *  + * There are special exceptions to the terms and conditions of the GPL as + * it is applied to this Source Code. View the full text of the exception + * in the file doc/FLOSS-exception.txt in this software distribution, or + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception + *  + * By copying, modifying or distributing this software, you acknowledge + * that you have read and understood your obligations described above, + * and agree to abide by those obligations.   *    * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO   * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, diff --git a/indra/llmessage/llregionpresenceverifier.h b/indra/llmessage/llregionpresenceverifier.h index d1de608ec6..10602450d8 100644 --- a/indra/llmessage/llregionpresenceverifier.h +++ b/indra/llmessage/llregionpresenceverifier.h @@ -4,14 +4,25 @@   *   * $LicenseInfo:firstyear=2008&license=viewergpl$   *  - * Copyright (c) 2008, Linden Research, Inc. + * Copyright (c) 2008-2009, Linden Research, Inc.   *  - * The following source code is PROPRIETARY AND CONFIDENTIAL. Use of - * this source code is governed by the Linden Lab Source Code Disclosure - * Agreement ("Agreement") previously entered between you and Linden - * Lab. By accessing, using, copying, modifying or distributing this - * software, you acknowledge that you have been informed of your - * obligations under the Agreement and agree to abide by those obligations. + * Second Life Viewer Source Code + * The source code in this file ("Source Code") is provided by Linden Lab + * to you under the terms of the GNU General Public License, version 2.0 + * ("GPL"), unless you have obtained a separate licensing agreement + * ("Other License"), formally executed by you and Linden Lab.  Terms of + * the GPL can be found in doc/GPL-license.txt in this distribution, or + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + *  + * There are special exceptions to the terms and conditions of the GPL as + * it is applied to this Source Code. View the full text of the exception + * in the file doc/FLOSS-exception.txt in this software distribution, or + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception + *  + * By copying, modifying or distributing this software, you acknowledge + * that you have read and understood your obligations described above, + * and agree to abide by those obligations.   *    * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO   * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, diff --git a/indra/llmessage/llstoredmessage.cpp b/indra/llmessage/llstoredmessage.cpp index 615eff405d..32cbb15cb3 100644 --- a/indra/llmessage/llstoredmessage.cpp +++ b/indra/llmessage/llstoredmessage.cpp @@ -4,7 +4,7 @@   *   * $LicenseInfo:firstyear=2009&license=viewergpl$   *  - * Copyright (c) 2001-2009, Linden Research, Inc. + * Copyright (c) 2009, Linden Research, Inc.   *    * Second Life Viewer Source Code   * The source code in this file ("Source Code") is provided by Linden Lab diff --git a/indra/llmessage/llstoredmessage.h b/indra/llmessage/llstoredmessage.h index e817f19bd2..5069c2cb2e 100644 --- a/indra/llmessage/llstoredmessage.h +++ b/indra/llmessage/llstoredmessage.h @@ -4,7 +4,7 @@   *   * $LicenseInfo:firstyear=2009&license=viewergpl$   *  - * Copyright (c) 2001-2009, Linden Research, Inc. + * Copyright (c) 2009, Linden Research, Inc.   *    * Second Life Viewer Source Code   * The source code in this file ("Source Code") is provided by Linden Lab diff --git a/indra/llmessage/lltemplatemessagedispatcher.cpp b/indra/llmessage/lltemplatemessagedispatcher.cpp index 3bbf3a058d..ab1beb362b 100644 --- a/indra/llmessage/lltemplatemessagedispatcher.cpp +++ b/indra/llmessage/lltemplatemessagedispatcher.cpp @@ -3,26 +3,27 @@   * @brief LLTemplateMessageDispatcher class   *   * $LicenseInfo:firstyear=2009&license=viewergpl$ - * - * Copyright (c) 2001-2009, Linden Research, Inc. - * + *  + * Copyright (c) 2009, Linden Research, Inc. + *    * Second Life Viewer Source Code   * The source code in this file ("Source Code") is provided by Linden Lab   * to you under the terms of the GNU General Public License, version 2.0   * ("GPL"), unless you have obtained a separate licensing agreement   * ("Other License"), formally executed by you and Linden Lab.  Terms of   * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlife.com/developers/opensource/gplv2 - * + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + *    * There are special exceptions to the terms and conditions of the GPL as   * it is applied to this Source Code. View the full text of the exception   * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at http://secondlife.com/developers/opensource/flossexception - * + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception + *    * By copying, modifying or distributing this software, you acknowledge   * that you have read and understood your obligations described above,   * and agree to abide by those obligations. - * + *    * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO   * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,   * COMPLETENESS OR PERFORMANCE. diff --git a/indra/llmessage/lltemplatemessagedispatcher.h b/indra/llmessage/lltemplatemessagedispatcher.h index b1e74f47bb..fa861e4e42 100644 --- a/indra/llmessage/lltemplatemessagedispatcher.h +++ b/indra/llmessage/lltemplatemessagedispatcher.h @@ -3,26 +3,27 @@   * @brief LLTemplateMessageDispatcher class   *   * $LicenseInfo:firstyear=2009&license=viewergpl$ - * - * Copyright (c) 2001-2009, Linden Research, Inc. - * + *  + * Copyright (c) 2009, Linden Research, Inc. + *    * Second Life Viewer Source Code   * The source code in this file ("Source Code") is provided by Linden Lab   * to you under the terms of the GNU General Public License, version 2.0   * ("GPL"), unless you have obtained a separate licensing agreement   * ("Other License"), formally executed by you and Linden Lab.  Terms of   * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlife.com/developers/opensource/gplv2 - * + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + *    * There are special exceptions to the terms and conditions of the GPL as   * it is applied to this Source Code. View the full text of the exception   * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at http://secondlife.com/developers/opensource/flossexception - * + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception + *    * By copying, modifying or distributing this software, you acknowledge   * that you have read and understood your obligations described above,   * and agree to abide by those obligations. - * + *    * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO   * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,   * COMPLETENESS OR PERFORMANCE. diff --git a/indra/llmessage/lltransfersourceasset.cpp b/indra/llmessage/lltransfersourceasset.cpp index a4d59275b9..059c1bdfa1 100644 --- a/indra/llmessage/lltransfersourceasset.cpp +++ b/indra/llmessage/lltransfersourceasset.cpp @@ -270,6 +270,7 @@ bool is_asset_fetch_by_id_allowed(LLAssetType::EType type)  	case LLAssetType::AT_BODYPART:  	case LLAssetType::AT_ANIMATION:  	case LLAssetType::AT_GESTURE: +	case LLAssetType::AT_FAVORITE:  		rv = true;  		break;  	default: @@ -292,6 +293,7 @@ bool is_asset_id_knowable(LLAssetType::EType type)  	case LLAssetType::AT_BODYPART:  	case LLAssetType::AT_ANIMATION:  	case LLAssetType::AT_GESTURE: +	case LLAssetType::AT_FAVORITE:  		rv = true;  		break;  	default: diff --git a/indra/llmessage/lltrustedmessageservice.cpp b/indra/llmessage/lltrustedmessageservice.cpp index c1a6c437a7..505ece57b0 100644 --- a/indra/llmessage/lltrustedmessageservice.cpp +++ b/indra/llmessage/lltrustedmessageservice.cpp @@ -3,26 +3,27 @@   * @brief LLTrustedMessageService implementation   *   * $LicenseInfo:firstyear=2009&license=viewergpl$ - * - * Copyright (c) 2001-2009, Linden Research, Inc. - * + *  + * Copyright (c) 2009, Linden Research, Inc. + *    * Second Life Viewer Source Code   * The source code in this file ("Source Code") is provided by Linden Lab   * to you under the terms of the GNU General Public License, version 2.0   * ("GPL"), unless you have obtained a separate licensing agreement   * ("Other License"), formally executed by you and Linden Lab.  Terms of   * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlife.com/developers/opensource/gplv2 - * + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + *    * There are special exceptions to the terms and conditions of the GPL as   * it is applied to this Source Code. View the full text of the exception   * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at http://secondlife.com/developers/opensource/flossexception - * + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception + *    * By copying, modifying or distributing this software, you acknowledge   * that you have read and understood your obligations described above,   * and agree to abide by those obligations. - * + *    * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO   * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,   * COMPLETENESS OR PERFORMANCE. diff --git a/indra/llmessage/lltrustedmessageservice.h b/indra/llmessage/lltrustedmessageservice.h index bc824565f1..dc37702471 100644 --- a/indra/llmessage/lltrustedmessageservice.h +++ b/indra/llmessage/lltrustedmessageservice.h @@ -3,26 +3,27 @@   * @brief LLTrustedMessageService class   *   * $LicenseInfo:firstyear=2009&license=viewergpl$ - * - * Copyright (c) 2001-2009, Linden Research, Inc. - * + *  + * Copyright (c) 2009, Linden Research, Inc. + *    * Second Life Viewer Source Code   * The source code in this file ("Source Code") is provided by Linden Lab   * to you under the terms of the GNU General Public License, version 2.0   * ("GPL"), unless you have obtained a separate licensing agreement   * ("Other License"), formally executed by you and Linden Lab.  Terms of   * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlife.com/developers/opensource/gplv2 - * + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + *    * There are special exceptions to the terms and conditions of the GPL as   * it is applied to this Source Code. View the full text of the exception   * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at http://secondlife.com/developers/opensource/flossexception - * + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception + *    * By copying, modifying or distributing this software, you acknowledge   * that you have read and understood your obligations described above,   * and agree to abide by those obligations. - * + *    * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO   * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,   * COMPLETENESS OR PERFORMANCE. diff --git a/indra/llmessage/message.cpp b/indra/llmessage/message.cpp index 78af35bf65..e56d818d65 100644 --- a/indra/llmessage/message.cpp +++ b/indra/llmessage/message.cpp @@ -86,6 +86,7 @@  #include "v3math.h"  #include "v4math.h"  #include "lltransfertargetvfile.h" +#include "llmemtype.h"  // Constants  //const char* MESSAGE_LOG_FILENAME = "message.log"; @@ -794,6 +795,7 @@ S32	LLMessageSystem::getReceiveBytes() const  void LLMessageSystem::processAcks()  { +	LLMemType mt_pa(LLMemType::MTYPE_MESSAGE_PROCESS_ACKS);  	F64 mt_sec = getMessageTimeSeconds();  	{  		gTransferManager.updateTransfers(); @@ -4020,6 +4022,7 @@ void LLMessageSystem::setTimeDecodesSpamThreshold( F32 seconds )  // TODO: babbage: move gServicePump in to LLMessageSystem?  bool LLMessageSystem::checkAllMessages(S64 frame_count, LLPumpIO* http_pump)  { +	LLMemType mt_cam(LLMemType::MTYPE_MESSAGE_CHECK_ALL);  	if(checkMessages(frame_count))  	{  		return true; diff --git a/indra/llmessage/message.h b/indra/llmessage/message.h index 0f3576732d..27482ca1af 100644 --- a/indra/llmessage/message.h +++ b/indra/llmessage/message.h @@ -59,10 +59,10 @@  #include "llhttpclient.h"  #include "llhttpnode.h"  #include "llpacketack.h" +#include "llsingleton.h"  #include "message_prehash.h"  #include "llstl.h"  #include "llmsgvariabletype.h" -#include "llmsgvariabletype.h"  #include "llmessagesenderinterface.h"  #include "llstoredmessage.h" diff --git a/indra/llmessage/message_prehash.cpp b/indra/llmessage/message_prehash.cpp index 43b5f8e224..4e657067cd 100644 --- a/indra/llmessage/message_prehash.cpp +++ b/indra/llmessage/message_prehash.cpp @@ -405,7 +405,7 @@ char* _PREHASH_GlobalX = LLMessageStringTable::getInstance()->getString("GlobalX  char* _PREHASH_GlobalY = LLMessageStringTable::getInstance()->getString("GlobalY");  char* _PREHASH_CopyRotates = LLMessageStringTable::getInstance()->getString("CopyRotates");  char* _PREHASH_KickUserAck = LLMessageStringTable::getInstance()->getString("KickUserAck"); -char* _PREHASH_TopPick = LLMessageStringTable::getInstance()->getString("TopPick"); +char* _PREHASH_TopPick = LLMessageStringTable::getInstance()->getString("TopPick"); 	//legacy var  need to be deleted -angela  char* _PREHASH_SessionID = LLMessageStringTable::getInstance()->getString("SessionID");  char* _PREHASH_GlobalZ = LLMessageStringTable::getInstance()->getString("GlobalZ");  char* _PREHASH_DeclineFriendship = LLMessageStringTable::getInstance()->getString("DeclineFriendship"); diff --git a/indra/llmessage/tests/commtest.h b/indra/llmessage/tests/commtest.h index 7360230451..cf1461ed2b 100644 --- a/indra/llmessage/tests/commtest.h +++ b/indra/llmessage/tests/commtest.h @@ -5,7 +5,30 @@   * @brief     *    * $LicenseInfo:firstyear=2009&license=viewergpl$ + *    * Copyright (c) 2009, Linden Research, Inc. + *  + * Second Life Viewer Source Code + * The source code in this file ("Source Code") is provided by Linden Lab + * to you under the terms of the GNU General Public License, version 2.0 + * ("GPL"), unless you have obtained a separate licensing agreement + * ("Other License"), formally executed by you and Linden Lab.  Terms of + * the GPL can be found in doc/GPL-license.txt in this distribution, or + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + *  + * There are special exceptions to the terms and conditions of the GPL as + * it is applied to this Source Code. View the full text of the exception + * in the file doc/FLOSS-exception.txt in this software distribution, or + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception + *  + * By copying, modifying or distributing this software, you acknowledge + * that you have read and understood your obligations described above, + * and agree to abide by those obligations. + *  + * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO + * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, + * COMPLETENESS OR PERFORMANCE.   * $/LicenseInfo$   */ diff --git a/indra/llmessage/tests/llcurl_stub.cpp b/indra/llmessage/tests/llcurl_stub.cpp index 93653e345e..d6be54336a 100644 --- a/indra/llmessage/tests/llcurl_stub.cpp +++ b/indra/llmessage/tests/llcurl_stub.cpp @@ -3,16 +3,16 @@   * @brief stub class to allow unit testing   *   * $LicenseInfo:firstyear=2008&license=viewergpl$ - * - * Copyright (c) 2008, Linden Research, Inc. - * + *  + * Copyright (c) 2008-2009, Linden Research, Inc. + *    * The following source code is PROPRIETARY AND CONFIDENTIAL. Use of   * this source code is governed by the Linden Lab Source Code Disclosure - * Agreement ("Agreement") { } + * Agreement ("Agreement") previously entered between you and Linden   * Lab. By accessing, using, copying, modifying or distributing this   * software, you acknowledge that you have been informed of your   * obligations under the Agreement and agree to abide by those obligations. - * + *    * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO   * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,   * COMPLETENESS OR PERFORMANCE. diff --git a/indra/llmessage/tests/llhttpclientadapter_test.cpp b/indra/llmessage/tests/llhttpclientadapter_test.cpp index bde76db08b..250fa100b6 100644 --- a/indra/llmessage/tests/llhttpclientadapter_test.cpp +++ b/indra/llmessage/tests/llhttpclientadapter_test.cpp @@ -4,7 +4,7 @@   *   * $LicenseInfo:firstyear=2008&license=viewergpl$   *  - * Copyright (c) 2001-2008, Linden Research, Inc. + * Copyright (c) 2008-2009, Linden Research, Inc.   *    * Second Life Viewer Source Code   * The source code in this file ("Source Code") is provided by Linden Lab @@ -12,12 +12,13 @@   * ("GPL"), unless you have obtained a separate licensing agreement   * ("Other License"), formally executed by you and Linden Lab.  Terms of   * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlife.com/developers/opensource/gplv2 + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2   *    * There are special exceptions to the terms and conditions of the GPL as   * it is applied to this Source Code. View the full text of the exception   * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at http://secondlife.com/developers/opensource/flossexception + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception   *    * By copying, modifying or distributing this software, you acknowledge   * that you have read and understood your obligations described above, diff --git a/indra/llmessage/tests/lltemplatemessagedispatcher_test.cpp b/indra/llmessage/tests/lltemplatemessagedispatcher_test.cpp index a6f5659352..d57f17f270 100644 --- a/indra/llmessage/tests/lltemplatemessagedispatcher_test.cpp +++ b/indra/llmessage/tests/lltemplatemessagedispatcher_test.cpp @@ -3,26 +3,27 @@   * @brief LLTrustedMessageService unit tests   *   * $LicenseInfo:firstyear=2009&license=viewergpl$ - * - * Copyright (c) 2001-2009, Linden Research, Inc. - * + *  + * Copyright (c) 2009, Linden Research, Inc. + *    * Second Life Viewer Source Code   * The source code in this file ("Source Code") is provided by Linden Lab   * to you under the terms of the GNU General Public License, version 2.0   * ("GPL"), unless you have obtained a separate licensing agreement   * ("Other License"), formally executed by you and Linden Lab.  Terms of   * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlife.com/developers/opensource/gplv2 - * + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + *    * There are special exceptions to the terms and conditions of the GPL as   * it is applied to this Source Code. View the full text of the exception   * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at http://secondlife.com/developers/opensource/flossexception - * + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception + *    * By copying, modifying or distributing this software, you acknowledge   * that you have read and understood your obligations described above,   * and agree to abide by those obligations. - * + *    * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO   * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,   * COMPLETENESS OR PERFORMANCE. diff --git a/indra/llmessage/tests/lltesthttpclientadapter.cpp b/indra/llmessage/tests/lltesthttpclientadapter.cpp index 41ce36f345..0cea4b57c2 100644 --- a/indra/llmessage/tests/lltesthttpclientadapter.cpp +++ b/indra/llmessage/tests/lltesthttpclientadapter.cpp @@ -4,7 +4,7 @@   *   * $LicenseInfo:firstyear=2008&license=viewergpl$   *  - * Copyright (c) 2008, Linden Research, Inc. + * Copyright (c) 2008-2009, Linden Research, Inc.   *    * The following source code is PROPRIETARY AND CONFIDENTIAL. Use of   * this source code is governed by the Linden Lab Source Code Disclosure diff --git a/indra/llmessage/tests/lltesthttpclientadapter.h b/indra/llmessage/tests/lltesthttpclientadapter.h index cd93bcc8c1..6f252e8510 100644 --- a/indra/llmessage/tests/lltesthttpclientadapter.h +++ b/indra/llmessage/tests/lltesthttpclientadapter.h @@ -4,7 +4,7 @@   *   * $LicenseInfo:firstyear=2008&license=viewergpl$   *  - * Copyright (c) 2008, Linden Research, Inc. + * Copyright (c) 2008-2009, Linden Research, Inc.   *    * The following source code is PROPRIETARY AND CONFIDENTIAL. Use of   * this source code is governed by the Linden Lab Source Code Disclosure diff --git a/indra/llmessage/tests/lltestmessagesender.cpp b/indra/llmessage/tests/lltestmessagesender.cpp index 240813a4a3..3d1876ec36 100644 --- a/indra/llmessage/tests/lltestmessagesender.cpp +++ b/indra/llmessage/tests/lltestmessagesender.cpp @@ -4,7 +4,7 @@   *   * $LicenseInfo:firstyear=2008&license=viewergpl$   *  - * Copyright (c) 2008, Linden Research, Inc. + * Copyright (c) 2008-2009, Linden Research, Inc.   *    * The following source code is PROPRIETARY AND CONFIDENTIAL. Use of   * this source code is governed by the Linden Lab Source Code Disclosure diff --git a/indra/llmessage/tests/lltestmessagesender.h b/indra/llmessage/tests/lltestmessagesender.h index 00641d1913..d3aaee8f69 100644 --- a/indra/llmessage/tests/lltestmessagesender.h +++ b/indra/llmessage/tests/lltestmessagesender.h @@ -4,7 +4,7 @@   *   * $LicenseInfo:firstyear=2008&license=viewergpl$   *  - * Copyright (c) 2008, Linden Research, Inc. + * Copyright (c) 2008-2009, Linden Research, Inc.   *    * The following source code is PROPRIETARY AND CONFIDENTIAL. Use of   * this source code is governed by the Linden Lab Source Code Disclosure diff --git a/indra/llmessage/tests/lltrustedmessageservice_test.cpp b/indra/llmessage/tests/lltrustedmessageservice_test.cpp index 44595391df..0a3da4b467 100644 --- a/indra/llmessage/tests/lltrustedmessageservice_test.cpp +++ b/indra/llmessage/tests/lltrustedmessageservice_test.cpp @@ -3,26 +3,27 @@   * @brief LLTrustedMessageService unit tests   *   * $LicenseInfo:firstyear=2009&license=viewergpl$ - * - * Copyright (c) 2001-2009, Linden Research, Inc. - * + *  + * Copyright (c) 2009, Linden Research, Inc. + *    * Second Life Viewer Source Code   * The source code in this file ("Source Code") is provided by Linden Lab   * to you under the terms of the GNU General Public License, version 2.0   * ("GPL"), unless you have obtained a separate licensing agreement   * ("Other License"), formally executed by you and Linden Lab.  Terms of   * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlife.com/developers/opensource/gplv2 - * + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + *    * There are special exceptions to the terms and conditions of the GPL as   * it is applied to this Source Code. View the full text of the exception   * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at http://secondlife.com/developers/opensource/flossexception - * + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception + *    * By copying, modifying or distributing this software, you acknowledge   * that you have read and understood your obligations described above,   * and agree to abide by those obligations. - * + *    * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO   * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,   * COMPLETENESS OR PERFORMANCE. diff --git a/indra/llmessage/tests/networkio.h b/indra/llmessage/tests/networkio.h index 11c5cc07fc..0ebe369ea2 100644 --- a/indra/llmessage/tests/networkio.h +++ b/indra/llmessage/tests/networkio.h @@ -5,7 +5,30 @@   * @brief     *    * $LicenseInfo:firstyear=2009&license=viewergpl$ + *    * Copyright (c) 2009, Linden Research, Inc. + *  + * Second Life Viewer Source Code + * The source code in this file ("Source Code") is provided by Linden Lab + * to you under the terms of the GNU General Public License, version 2.0 + * ("GPL"), unless you have obtained a separate licensing agreement + * ("Other License"), formally executed by you and Linden Lab.  Terms of + * the GPL can be found in doc/GPL-license.txt in this distribution, or + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + *  + * There are special exceptions to the terms and conditions of the GPL as + * it is applied to this Source Code. View the full text of the exception + * in the file doc/FLOSS-exception.txt in this software distribution, or + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception + *  + * By copying, modifying or distributing this software, you acknowledge + * that you have read and understood your obligations described above, + * and agree to abide by those obligations. + *  + * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO + * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, + * COMPLETENESS OR PERFORMANCE.   * $/LicenseInfo$   */ | 
