aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Services/LLLoginService
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Services/LLLoginService')
-rw-r--r--OpenSim/Services/LLLoginService/LLLoginResponse.cs6
-rw-r--r--OpenSim/Services/LLLoginService/LLLoginService.cs9
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);