aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Services/LLLoginService/LLLoginService.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Services/LLLoginService/LLLoginService.cs')
-rw-r--r--OpenSim/Services/LLLoginService/LLLoginService.cs14
1 files changed, 11 insertions, 3 deletions
diff --git a/OpenSim/Services/LLLoginService/LLLoginService.cs b/OpenSim/Services/LLLoginService/LLLoginService.cs
index fe43582..faf7f71 100644
--- a/OpenSim/Services/LLLoginService/LLLoginService.cs
+++ b/OpenSim/Services/LLLoginService/LLLoginService.cs
@@ -147,7 +147,8 @@ namespace OpenSim.Services.LLLoginService
147 Object[] args = new Object[] { config }; 147 Object[] args = new Object[] { config };
148 m_UserAccountService = ServerUtils.LoadPlugin<IUserAccountService>(accountService, args); 148 m_UserAccountService = ServerUtils.LoadPlugin<IUserAccountService>(accountService, args);
149 m_GridUserService = ServerUtils.LoadPlugin<IGridUserService>(gridUserService, args); 149 m_GridUserService = ServerUtils.LoadPlugin<IGridUserService>(gridUserService, args);
150 m_AuthenticationService = ServerUtils.LoadPlugin<IAuthenticationService>(authService, args); 150 Object[] authArgs = new Object[] { config, m_UserAccountService };
151 m_AuthenticationService = ServerUtils.LoadPlugin<IAuthenticationService>(authService, authArgs);
151 m_InventoryService = ServerUtils.LoadPlugin<IInventoryService>(invService, args); 152 m_InventoryService = ServerUtils.LoadPlugin<IInventoryService>(invService, args);
152 153
153 if (gridService != string.Empty) 154 if (gridService != string.Empty)
@@ -296,6 +297,12 @@ namespace OpenSim.Services.LLLoginService
296 return LLFailedLoginResponse.UserProblem; 297 return LLFailedLoginResponse.UserProblem;
297 } 298 }
298 299
300 if (account.UserLevel < 0)
301 {
302 m_log.InfoFormat("[LLOGIN SERVICE]: Login failed, reason: Unverified account");
303 return LLFailedLoginResponse.UnverifiedAccountProblem;
304 }
305
299 if (account.UserLevel < m_MinLoginLevel) 306 if (account.UserLevel < m_MinLoginLevel)
300 { 307 {
301 m_log.InfoFormat( 308 m_log.InfoFormat(
@@ -327,7 +334,8 @@ namespace OpenSim.Services.LLLoginService
327 if (!passwd.StartsWith("$1$")) 334 if (!passwd.StartsWith("$1$"))
328 passwd = "$1$" + Util.Md5Hash(passwd); 335 passwd = "$1$" + Util.Md5Hash(passwd);
329 passwd = passwd.Remove(0, 3); //remove $1$ 336 passwd = passwd.Remove(0, 3); //remove $1$
330 string token = m_AuthenticationService.Authenticate(account.PrincipalID, passwd, 30); 337 UUID realID;
338 string token = m_AuthenticationService.Authenticate(account.PrincipalID, passwd, 30, out realID);
331 UUID secureSession = UUID.Zero; 339 UUID secureSession = UUID.Zero;
332 if ((token == string.Empty) || (token != string.Empty && !UUID.TryParse(token, out secureSession))) 340 if ((token == string.Empty) || (token != string.Empty && !UUID.TryParse(token, out secureSession)))
333 { 341 {
@@ -460,7 +468,7 @@ namespace OpenSim.Services.LLLoginService
460 account, aCircuit, guinfo, destination, inventorySkel, friendsList, m_LibraryService, 468 account, aCircuit, guinfo, destination, inventorySkel, friendsList, m_LibraryService,
461 where, startLocation, position, lookAt, gestures, m_WelcomeMessage, home, clientIP, 469 where, startLocation, position, lookAt, gestures, m_WelcomeMessage, home, clientIP,
462 m_MapTileURL, m_ProfileURL, m_OpenIDURL, m_SearchURL, m_Currency, m_DSTZone, 470 m_MapTileURL, m_ProfileURL, m_OpenIDURL, m_SearchURL, m_Currency, m_DSTZone,
463 m_DestinationGuide, m_AvatarPicker, m_ClassifiedFee); 471 m_DestinationGuide, m_AvatarPicker, realID, m_ClassifiedFee);
464 472
465 m_log.DebugFormat("[LLOGIN SERVICE]: All clear. Sending login response to {0} {1}", firstName, lastName); 473 m_log.DebugFormat("[LLOGIN SERVICE]: All clear. Sending login response to {0} {1}", firstName, lastName);
466 474