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