* Allowing LLSD logins to do silent logout of last hung session on standalone only, following the already implemented XMLRPC behavior

trunk
Arthur Valadares 2009-07-07 23:07:57 +00:00
parent 4badac3c90
commit 7e8bfc4618
1 changed files with 17 additions and 8 deletions

View File

@ -197,7 +197,7 @@ namespace OpenSim.Framework.Communications.Services
{ {
// This is behavior for standalone (silent logout of last hung session) // This is behavior for standalone (silent logout of last hung session)
m_log.InfoFormat( m_log.InfoFormat(
"[LOGIN]: User {0} {1} is already logged in, not notifying user, kicking old presence and starting new login.", "[LOGIN]: XMLRPC User {0} {1} is already logged in, not notifying user, kicking old presence and starting new login.",
firstname, lastname); firstname, lastname);
} }
} }
@ -422,14 +422,23 @@ namespace OpenSim.Framework.Communications.Services
// try to tell the region that their user is dead. // try to tell the region that their user is dead.
LogOffUser(userProfile, " LLSD You were logged off because you logged in from another location"); LogOffUser(userProfile, " LLSD You were logged off because you logged in from another location");
// Reject the login if (m_warn_already_logged)
{
// This is behavior for for grid, reject login
m_log.InfoFormat(
"[LOGIN END]: LLSD Notifying user {0} {1} that they are already logged in",
userProfile.FirstName, userProfile.SurName);
m_log.InfoFormat( userProfile.CurrentAgent = null;
"[LOGIN END]: LLSD Notifying user {0} {1} that they are already logged in", return logResponse.CreateAlreadyLoggedInResponseLLSD();
userProfile.FirstName, userProfile.SurName); }
else
userProfile.CurrentAgent = null; {
return logResponse.CreateAlreadyLoggedInResponseLLSD(); // This is behavior for standalone (silent logout of last hung session)
m_log.InfoFormat(
"[LOGIN]: LLSD User {0} {1} is already logged in, not notifying user, kicking old presence and starting new login.",
userProfile.FirstName, userProfile.SurName);
}
} }
// Otherwise... // Otherwise...