diff options
Diffstat (limited to 'OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs')
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs | 26 |
1 files changed, 10 insertions, 16 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs index f2388cd..d5b061b 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs | |||
@@ -929,25 +929,17 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
929 | UUID sessionID = useCircuitCode.CircuitCode.SessionID; | 929 | UUID sessionID = useCircuitCode.CircuitCode.SessionID; |
930 | uint circuitCode = useCircuitCode.CircuitCode.Code; | 930 | uint circuitCode = useCircuitCode.CircuitCode.Code; |
931 | 931 | ||
932 | if (m_scene.RegionStatus != RegionStatus.SlaveScene) | 932 | AuthenticateResponse sessionInfo; |
933 | if (IsClientAuthorized(useCircuitCode, out sessionInfo)) | ||
933 | { | 934 | { |
934 | AuthenticateResponse sessionInfo; | 935 | AddClient(circuitCode, agentID, sessionID, remoteEndPoint, sessionInfo); |
935 | if (IsClientAuthorized(useCircuitCode, out sessionInfo)) | ||
936 | { | ||
937 | AddClient(circuitCode, agentID, sessionID, remoteEndPoint, sessionInfo); | ||
938 | } | ||
939 | else | ||
940 | { | ||
941 | // Don't create circuits for unauthorized clients | ||
942 | m_log.WarnFormat( | ||
943 | "[LLUDPSERVER]: Connection request for client {0} connecting with unnotified circuit code {1} from {2}", | ||
944 | useCircuitCode.CircuitCode.ID, useCircuitCode.CircuitCode.Code, remoteEndPoint); | ||
945 | } | ||
946 | } | 936 | } |
947 | else | 937 | else |
948 | { | 938 | { |
949 | // Slave regions don't accept new clients | 939 | // Don't create circuits for unauthorized clients |
950 | m_log.Debug("[LLUDPSERVER]: Slave region " + m_scene.RegionInfo.RegionName + " ignoring UseCircuitCode packet"); | 940 | m_log.WarnFormat( |
941 | "[LLUDPSERVER]: Connection request for client {0} connecting with unnotified circuit code {1} from {2}", | ||
942 | useCircuitCode.CircuitCode.ID, useCircuitCode.CircuitCode.Code, remoteEndPoint); | ||
951 | } | 943 | } |
952 | } | 944 | } |
953 | 945 | ||
@@ -989,7 +981,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
989 | if (m_scene.TryGetClient(udpClient.AgentID, out client)) | 981 | if (m_scene.TryGetClient(udpClient.AgentID, out client)) |
990 | { | 982 | { |
991 | client.IsLoggingOut = true; | 983 | client.IsLoggingOut = true; |
992 | client.Close(); | 984 | client.Close(false); |
993 | } | 985 | } |
994 | } | 986 | } |
995 | 987 | ||
@@ -1001,6 +993,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
1001 | 993 | ||
1002 | while (base.IsRunning) | 994 | while (base.IsRunning) |
1003 | { | 995 | { |
996 | m_scene.ThreadAlive(1); | ||
1004 | try | 997 | try |
1005 | { | 998 | { |
1006 | IncomingPacket incomingPacket = null; | 999 | IncomingPacket incomingPacket = null; |
@@ -1043,6 +1036,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
1043 | 1036 | ||
1044 | while (base.IsRunning) | 1037 | while (base.IsRunning) |
1045 | { | 1038 | { |
1039 | m_scene.ThreadAlive(2); | ||
1046 | try | 1040 | try |
1047 | { | 1041 | { |
1048 | m_packetSent = false; | 1042 | m_packetSent = false; |