summaryrefslogtreecommitdiff
path: root/indra/llmessage/message.cpp
diff options
context:
space:
mode:
authorRobert Knop <prospero@lindenlab.com>2009-01-22 23:53:36 +0000
committerRobert Knop <prospero@lindenlab.com>2009-01-22 23:53:36 +0000
commit00b0498362a4fcbd12ed0cf4b5b80bfd9510edd5 (patch)
tree6da919f837c048b222d1318eb143289f41e06396 /indra/llmessage/message.cpp
parent6a2fa3da87c438ccadebe461c1f320950789251c (diff)
Merging from production branch to trunk
svn merge -r108266:108604 svn+ssh://svn.lindenlab.com/svn/linden/branches/server/server-1.25 One merge conflict, in indra/backbone/agent_linden_dollar.py, which was very small, and resolved by Kartic & Prospero.
Diffstat (limited to 'indra/llmessage/message.cpp')
-rw-r--r--indra/llmessage/message.cpp22
1 files changed, 20 insertions, 2 deletions
diff --git a/indra/llmessage/message.cpp b/indra/llmessage/message.cpp
index d5f362d780..4e6cda2880 100644
--- a/indra/llmessage/message.cpp
+++ b/indra/llmessage/message.cpp
@@ -2366,13 +2366,13 @@ void process_create_trusted_circuit(LLMessageSystem *msg, void **)
{
if( msg->getBlockUntrustedInterface() )
{
- LL_WARNS("Messaging") << "Refusing trust on public interface from host: "
+ LL_WARNS("Messaging") << "Ignoring CreateTrustedCircuit on public interface from host: "
<< msg->getSender() << llendl;
return;
}
else
{
- LL_WARNS("Messaging") << "Establishing trust on public interface from host: "
+ LL_WARNS("Messaging") << "Processing CreateTrustedCircuit on public interface from host: "
<< msg->getSender() << llendl;
}
}
@@ -2433,6 +2433,24 @@ void process_deny_trusted_circuit(LLMessageSystem *msg, void **)
// Don't respond to requests that use the same end point ID
return;
}
+
+ U32 untrusted_interface = msg->getUntrustedInterface().getAddress();
+ U32 last_interface = msg->getReceivingInterface().getAddress();
+ if ( ( untrusted_interface != INVALID_HOST_IP_ADDRESS ) && ( untrusted_interface == last_interface ) )
+ {
+ if( msg->getBlockUntrustedInterface() )
+ {
+ LL_WARNS("Messaging") << "Ignoring DenyTrustedCircuit on public interface from host: "
+ << msg->getSender() << llendl;
+ return;
+ }
+ else
+ {
+ LL_WARNS("Messaging") << "Processing DenyTrustedCircuit on public interface from host: "
+ << msg->getSender() << llendl;
+ }
+ }
+
// Assume that we require trust to proceed, so resend.
// This catches the case where a circuit that was trusted