diff options
Diffstat (limited to 'OpenSim/Services/LLLoginService')
-rw-r--r-- | OpenSim/Services/LLLoginService/LLLoginResponse.cs | 6 | ||||
-rw-r--r-- | OpenSim/Services/LLLoginService/LLLoginService.cs | 9 |
2 files changed, 14 insertions, 1 deletions
diff --git a/OpenSim/Services/LLLoginService/LLLoginResponse.cs b/OpenSim/Services/LLLoginService/LLLoginResponse.cs index ebd6f7c..2ffcaf7 100644 --- a/OpenSim/Services/LLLoginService/LLLoginResponse.cs +++ b/OpenSim/Services/LLLoginService/LLLoginResponse.cs | |||
@@ -56,6 +56,7 @@ namespace OpenSim.Services.LLLoginService | |||
56 | public static LLFailedLoginResponse InventoryProblem; | 56 | public static LLFailedLoginResponse InventoryProblem; |
57 | public static LLFailedLoginResponse DeadRegionProblem; | 57 | public static LLFailedLoginResponse DeadRegionProblem; |
58 | public static LLFailedLoginResponse LoginBlockedProblem; | 58 | public static LLFailedLoginResponse LoginBlockedProblem; |
59 | public static LLFailedLoginResponse UnverifiedAccountProblem; | ||
59 | public static LLFailedLoginResponse AlreadyLoggedInProblem; | 60 | public static LLFailedLoginResponse AlreadyLoggedInProblem; |
60 | public static LLFailedLoginResponse InternalError; | 61 | public static LLFailedLoginResponse InternalError; |
61 | 62 | ||
@@ -76,6 +77,10 @@ namespace OpenSim.Services.LLLoginService | |||
76 | LoginBlockedProblem = new LLFailedLoginResponse("presence", | 77 | LoginBlockedProblem = new LLFailedLoginResponse("presence", |
77 | "Logins are currently restricted. Please try again later.", | 78 | "Logins are currently restricted. Please try again later.", |
78 | "false"); | 79 | "false"); |
80 | UnverifiedAccountProblem = new LLFailedLoginResponse("presence", | ||
81 | "Your account has not yet been verified. Please check " + | ||
82 | "your email and click the provided link.", | ||
83 | "false"); | ||
79 | AlreadyLoggedInProblem = new LLFailedLoginResponse("presence", | 84 | AlreadyLoggedInProblem = new LLFailedLoginResponse("presence", |
80 | "You appear to be already logged in. " + | 85 | "You appear to be already logged in. " + |
81 | "If this is not the case please wait for your session to timeout. " + | 86 | "If this is not the case please wait for your session to timeout. " + |
@@ -325,6 +330,7 @@ namespace OpenSim.Services.LLLoginService | |||
325 | private void FillOutRegionData(GridRegion destination) | 330 | private void FillOutRegionData(GridRegion destination) |
326 | { | 331 | { |
327 | IPEndPoint endPoint = destination.ExternalEndPoint; | 332 | IPEndPoint endPoint = destination.ExternalEndPoint; |
333 | if (endPoint == null) return; | ||
328 | SimAddress = endPoint.Address.ToString(); | 334 | SimAddress = endPoint.Address.ToString(); |
329 | SimPort = (uint)endPoint.Port; | 335 | SimPort = (uint)endPoint.Port; |
330 | RegionX = (uint)destination.RegionLocX; | 336 | RegionX = (uint)destination.RegionLocX; |
diff --git a/OpenSim/Services/LLLoginService/LLLoginService.cs b/OpenSim/Services/LLLoginService/LLLoginService.cs index 9bcc3dd..250f8f1 100644 --- a/OpenSim/Services/LLLoginService/LLLoginService.cs +++ b/OpenSim/Services/LLLoginService/LLLoginService.cs | |||
@@ -120,7 +120,8 @@ namespace OpenSim.Services.LLLoginService | |||
120 | Object[] args = new Object[] { config }; | 120 | Object[] args = new Object[] { config }; |
121 | m_UserAccountService = ServerUtils.LoadPlugin<IUserAccountService>(accountService, args); | 121 | m_UserAccountService = ServerUtils.LoadPlugin<IUserAccountService>(accountService, args); |
122 | m_GridUserService = ServerUtils.LoadPlugin<IGridUserService>(gridUserService, args); | 122 | m_GridUserService = ServerUtils.LoadPlugin<IGridUserService>(gridUserService, args); |
123 | m_AuthenticationService = ServerUtils.LoadPlugin<IAuthenticationService>(authService, args); | 123 | Object[] authArgs = new Object[] { config, m_UserAccountService }; |
124 | m_AuthenticationService = ServerUtils.LoadPlugin<IAuthenticationService>(authService, authArgs); | ||
124 | m_InventoryService = ServerUtils.LoadPlugin<IInventoryService>(invService, args); | 125 | m_InventoryService = ServerUtils.LoadPlugin<IInventoryService>(invService, args); |
125 | 126 | ||
126 | if (gridService != string.Empty) | 127 | if (gridService != string.Empty) |
@@ -263,6 +264,12 @@ namespace OpenSim.Services.LLLoginService | |||
263 | return LLFailedLoginResponse.UserProblem; | 264 | return LLFailedLoginResponse.UserProblem; |
264 | } | 265 | } |
265 | 266 | ||
267 | if (account.UserLevel < 0) | ||
268 | { | ||
269 | m_log.InfoFormat("[LLOGIN SERVICE]: Login failed, reason: Unverified account"); | ||
270 | return LLFailedLoginResponse.UnverifiedAccountProblem; | ||
271 | } | ||
272 | |||
266 | if (account.UserLevel < m_MinLoginLevel) | 273 | if (account.UserLevel < m_MinLoginLevel) |
267 | { | 274 | { |
268 | m_log.InfoFormat("[LLOGIN SERVICE]: Login failed, reason: login is blocked for user level {0}", account.UserLevel); | 275 | m_log.InfoFormat("[LLOGIN SERVICE]: Login failed, reason: login is blocked for user level {0}", account.UserLevel); |