aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/Scene.cs
diff options
context:
space:
mode:
authorMW2009-03-03 15:41:21 +0000
committerMW2009-03-03 15:41:21 +0000
commit171015f65fc2226b92b0f881a49e0110445e5045 (patch)
treee4d1dcbb4739cc61057dd3d89dc278ed67e56c29 /OpenSim/Region/Framework/Scenes/Scene.cs
parentRefactoring of CreateCommsManagerPlugin. (diff)
downloadopensim-SC_OLD-171015f65fc2226b92b0f881a49e0110445e5045.zip
opensim-SC_OLD-171015f65fc2226b92b0f881a49e0110445e5045.tar.gz
opensim-SC_OLD-171015f65fc2226b92b0f881a49e0110445e5045.tar.bz2
opensim-SC_OLD-171015f65fc2226b92b0f881a49e0110445e5045.tar.xz
Moved Linden protocol login handling to modules in OpenSim.Client.Linden. There are two region modules in there LLStandaloneLoginModule (for standalone mode) and LLProxyLoginModule (for grid mode which just handles incoming expect_user and logoff_user messages from the remote login server)
Changed OpenSim.Framework.Communications.Tests.LoginServiceTests to use the LLStandaloneLoginService (from the LLStandaloneLoginModule) rather than LocalLoginService. Really these login tests should most likely be somewhere else as they are testing specific implementations of login services. Commented out the old LocalLoginService as its no longer used, but want to check there are no problems before it gets deleted.
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/Scene.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.cs27
1 files changed, 22 insertions, 5 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index 2006c2b..b1a79c2 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -2296,7 +2296,7 @@ namespace OpenSim.Region.Framework.Scenes
2296 /// </summary> 2296 /// </summary>
2297 public void RegisterCommsEvents() 2297 public void RegisterCommsEvents()
2298 { 2298 {
2299 m_sceneGridService.OnExpectUser += NewUserConnection; 2299 m_sceneGridService.OnExpectUser += HandleNewUserConnection;
2300 m_sceneGridService.OnAvatarCrossingIntoRegion += AgentCrossing; 2300 m_sceneGridService.OnAvatarCrossingIntoRegion += AgentCrossing;
2301 m_sceneGridService.OnCloseAgentConnection += IncomingCloseAgent; 2301 m_sceneGridService.OnCloseAgentConnection += IncomingCloseAgent;
2302 m_sceneGridService.OnRegionUp += OtherRegionUp; 2302 m_sceneGridService.OnRegionUp += OtherRegionUp;
@@ -2328,7 +2328,7 @@ namespace OpenSim.Region.Framework.Scenes
2328 m_sceneGridService.OnExpectPrim -= IncomingInterRegionPrimGroup; 2328 m_sceneGridService.OnExpectPrim -= IncomingInterRegionPrimGroup;
2329 //m_sceneGridService.OnChildAgentUpdate -= IncomingChildAgentDataUpdate; 2329 //m_sceneGridService.OnChildAgentUpdate -= IncomingChildAgentDataUpdate;
2330 m_sceneGridService.OnRegionUp -= OtherRegionUp; 2330 m_sceneGridService.OnRegionUp -= OtherRegionUp;
2331 m_sceneGridService.OnExpectUser -= NewUserConnection; 2331 m_sceneGridService.OnExpectUser -= HandleNewUserConnection;
2332 m_sceneGridService.OnAvatarCrossingIntoRegion -= AgentCrossing; 2332 m_sceneGridService.OnAvatarCrossingIntoRegion -= AgentCrossing;
2333 m_sceneGridService.OnCloseAgentConnection -= IncomingCloseAgent; 2333 m_sceneGridService.OnCloseAgentConnection -= IncomingCloseAgent;
2334 m_sceneGridService.OnGetLandData -= GetLandData; 2334 m_sceneGridService.OnGetLandData -= GetLandData;
@@ -2340,12 +2340,26 @@ namespace OpenSim.Region.Framework.Scenes
2340 } 2340 }
2341 2341
2342 /// <summary> 2342 /// <summary>
2343 /// A handler for the SceneCommunicationService event, to match that events return type of void.
2344 /// Use NewUserConnection() directly if possible so the return type can refuse connections.
2345 /// At the moment nothing actually seems to use this event,
2346 /// as everything is switching to calling the NewUserConnection method directly.
2347 /// </summary>
2348 /// <param name="agent"></param>
2349 public void HandleNewUserConnection(AgentCircuitData agent)
2350 {
2351 NewUserConnection(agent);
2352 }
2353
2354 /// <summary>
2343 /// Do the work necessary to initiate a new user connection for a particular scene. 2355 /// Do the work necessary to initiate a new user connection for a particular scene.
2344 /// At the moment, this consists of setting up the caps infrastructure 2356 /// At the moment, this consists of setting up the caps infrastructure
2357 /// The return bool should allow for connections to be refused, but as not all calling paths
2358 /// take proper notice of it let, we allowed banned users in still.
2345 /// </summary> 2359 /// </summary>
2346 /// <param name="regionHandle"></param> 2360 /// <param name="regionHandle"></param>
2347 /// <param name="agent"></param> 2361 /// <param name="agent"></param>
2348 public void NewUserConnection(AgentCircuitData agent) 2362 public bool NewUserConnection(AgentCircuitData agent)
2349 { 2363 {
2350 CapsModule.NewUserConnection(agent); 2364 CapsModule.NewUserConnection(agent);
2351 2365
@@ -2358,7 +2372,7 @@ namespace OpenSim.Region.Framework.Scenes
2358 2372
2359 sp.AdjustKnownSeeds(); 2373 sp.AdjustKnownSeeds();
2360 2374
2361 return; 2375 return true;
2362 } 2376 }
2363 2377
2364 // Don't disable this log message - it's too helpful 2378 // Don't disable this log message - it's too helpful
@@ -2371,6 +2385,7 @@ namespace OpenSim.Region.Framework.Scenes
2371 m_log.WarnFormat( 2385 m_log.WarnFormat(
2372 "[CONNECTION BEGIN]: Incoming user {0} at {1} is on the region banlist", 2386 "[CONNECTION BEGIN]: Incoming user {0} at {1} is on the region banlist",
2373 agent.AgentID, RegionInfo.RegionName); 2387 agent.AgentID, RegionInfo.RegionName);
2388 //return false;
2374 } 2389 }
2375 2390
2376 CapsModule.AddCapsHandler(agent.AgentID); 2391 CapsModule.AddCapsHandler(agent.AgentID);
@@ -2402,6 +2417,8 @@ namespace OpenSim.Region.Framework.Scenes
2402 m_log.WarnFormat( 2417 m_log.WarnFormat(
2403 "[CONNECTION BEGIN]: We couldn't find a User Info record for {0}. This is usually an indication that the UUID we're looking up is invalid", agent.AgentID); 2418 "[CONNECTION BEGIN]: We couldn't find a User Info record for {0}. This is usually an indication that the UUID we're looking up is invalid", agent.AgentID);
2404 } 2419 }
2420
2421 return true;
2405 } 2422 }
2406 2423
2407 public void UpdateCircuitData(AgentCircuitData data) 2424 public void UpdateCircuitData(AgentCircuitData data)
@@ -2414,7 +2431,7 @@ namespace OpenSim.Region.Framework.Scenes
2414 return m_authenticateHandler.TryChangeCiruitCode(oldcc, newcc); 2431 return m_authenticateHandler.TryChangeCiruitCode(oldcc, newcc);
2415 } 2432 }
2416 2433
2417 protected void HandleLogOffUserFromGrid(UUID AvatarID, UUID RegionSecret, string message) 2434 public void HandleLogOffUserFromGrid(UUID AvatarID, UUID RegionSecret, string message)
2418 { 2435 {
2419 ScenePresence loggingOffUser = null; 2436 ScenePresence loggingOffUser = null;
2420 loggingOffUser = GetScenePresence(AvatarID); 2437 loggingOffUser = GetScenePresence(AvatarID);