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 53a22d4..ede2353 100644
--- a/OpenSim/Services/LLLoginService/LLLoginService.cs
+++ b/OpenSim/Services/LLLoginService/LLLoginService.cs
@@ -141,7 +141,8 @@ namespace OpenSim.Services.LLLoginService
141 Object[] args = new Object[] { config }; 141 Object[] args = new Object[] { config };
142 m_UserAccountService = ServerUtils.LoadPlugin<IUserAccountService>(accountService, args); 142 m_UserAccountService = ServerUtils.LoadPlugin<IUserAccountService>(accountService, args);
143 m_GridUserService = ServerUtils.LoadPlugin<IGridUserService>(gridUserService, args); 143 m_GridUserService = ServerUtils.LoadPlugin<IGridUserService>(gridUserService, args);
144 m_AuthenticationService = ServerUtils.LoadPlugin<IAuthenticationService>(authService, args); 144 Object[] authArgs = new Object[] { config, m_UserAccountService };
145 m_AuthenticationService = ServerUtils.LoadPlugin<IAuthenticationService>(authService, authArgs);
145 m_InventoryService = ServerUtils.LoadPlugin<IInventoryService>(invService, args); 146 m_InventoryService = ServerUtils.LoadPlugin<IInventoryService>(invService, args);
146 147
147 if (gridService != string.Empty) 148 if (gridService != string.Empty)
@@ -290,6 +291,12 @@ namespace OpenSim.Services.LLLoginService
290 return LLFailedLoginResponse.UserProblem; 291 return LLFailedLoginResponse.UserProblem;
291 } 292 }
292 293
294 if (account.UserLevel < 0)
295 {
296 m_log.InfoFormat("[LLOGIN SERVICE]: Login failed, reason: Unverified account");
297 return LLFailedLoginResponse.UnverifiedAccountProblem;
298 }
299
293 if (account.UserLevel < m_MinLoginLevel) 300 if (account.UserLevel < m_MinLoginLevel)
294 { 301 {
295 m_log.InfoFormat( 302 m_log.InfoFormat(
@@ -321,7 +328,8 @@ namespace OpenSim.Services.LLLoginService
321 if (!passwd.StartsWith("$1$")) 328 if (!passwd.StartsWith("$1$"))
322 passwd = "$1$" + Util.Md5Hash(passwd); 329 passwd = "$1$" + Util.Md5Hash(passwd);
323 passwd = passwd.Remove(0, 3); //remove $1$ 330 passwd = passwd.Remove(0, 3); //remove $1$
324 string token = m_AuthenticationService.Authenticate(account.PrincipalID, passwd, 30); 331 UUID realID;
332 string token = m_AuthenticationService.Authenticate(account.PrincipalID, passwd, 30, out realID);
325 UUID secureSession = UUID.Zero; 333 UUID secureSession = UUID.Zero;
326 if ((token == string.Empty) || (token != string.Empty && !UUID.TryParse(token, out secureSession))) 334 if ((token == string.Empty) || (token != string.Empty && !UUID.TryParse(token, out secureSession)))
327 { 335 {
@@ -453,7 +461,7 @@ namespace OpenSim.Services.LLLoginService
453 = new LLLoginResponse( 461 = new LLLoginResponse(
454 account, aCircuit, guinfo, destination, inventorySkel, friendsList, m_LibraryService, 462 account, aCircuit, guinfo, destination, inventorySkel, friendsList, m_LibraryService,
455 where, startLocation, position, lookAt, gestures, m_WelcomeMessage, home, clientIP, 463 where, startLocation, position, lookAt, gestures, m_WelcomeMessage, home, clientIP,
456 m_MapTileURL, m_ProfileURL, m_OpenIDURL, m_SearchURL, m_Currency, m_DSTZone); 464 m_MapTileURL, m_ProfileURL, m_OpenIDURL, m_SearchURL, m_Currency, m_DSTZone, realID);
457 465
458 m_log.DebugFormat("[LLOGIN SERVICE]: All clear. Sending login response to {0} {1}", firstName, lastName); 466 m_log.DebugFormat("[LLOGIN SERVICE]: All clear. Sending login response to {0} {1}", firstName, lastName);
459 467