diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.cs | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index 7db99e1..418cfbf 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs | |||
@@ -3483,10 +3483,18 @@ namespace OpenSim.Region.Framework.Scenes | |||
3483 | { | 3483 | { |
3484 | reason = String.Empty; | 3484 | reason = String.Empty; |
3485 | 3485 | ||
3486 | bool result = CommsManager.UserService.VerifySession(agent.AgentID, agent.SessionID); | 3486 | IAuthenticationService auth = RequestModuleInterface<IAuthenticationService>(); |
3487 | m_log.Debug("[CONNECTION BEGIN]: User authentication returned " + result); | 3487 | if (auth == null) |
3488 | { | ||
3489 | reason = String.Format("Failed to authenticate user {0} {1} in region {2}. Authentication service does not exist.", agent.firstname, agent.lastname, RegionInfo.RegionName); | ||
3490 | return false; | ||
3491 | } | ||
3492 | |||
3493 | bool result = auth.Verify(agent.AgentID, agent.SecureSessionID.ToString(), 30); | ||
3494 | |||
3495 | m_log.Debug("[CONNECTION BEGIN]: Session authentication returned " + result); | ||
3488 | if (!result) | 3496 | if (!result) |
3489 | reason = String.Format("Failed to authenticate user {0} {1}, access denied.", agent.firstname, agent.lastname); | 3497 | reason = String.Format("Failed to authenticate user {0} {1}, access denied to region {2}.", agent.firstname, agent.lastname, RegionInfo.RegionName); |
3490 | 3498 | ||
3491 | return result; | 3499 | return result; |
3492 | } | 3500 | } |