* Making silent logoff of old hung sessions for new connections default for
StandAlone users. Not touching grid.0.6.6-post-fixes
parent
412295ccde
commit
eb330f71be
|
@ -54,7 +54,6 @@ namespace OpenSim.Client.Linden
|
|||
protected bool m_enabled = false; // Module is only enabled if running in standalone mode
|
||||
|
||||
protected bool authenticate;
|
||||
protected bool m_warn_already_logged;
|
||||
protected string welcomeMessage;
|
||||
|
||||
public bool RegionLoginsEnabled
|
||||
|
@ -79,11 +78,9 @@ namespace OpenSim.Client.Linden
|
|||
public void Initialise(IConfigSource source)
|
||||
{
|
||||
IConfig startupConfig = source.Configs["Startup"];
|
||||
IConfig stdaloneConfig = source.Configs["StandAlone"];
|
||||
if (startupConfig != null)
|
||||
{
|
||||
m_enabled = !startupConfig.GetBoolean("gridmode", false);
|
||||
m_warn_already_logged = stdaloneConfig.GetBoolean("warn_user_already_logged_in", true);
|
||||
}
|
||||
|
||||
if (m_enabled)
|
||||
|
@ -115,7 +112,6 @@ namespace OpenSim.Client.Linden
|
|||
|
||||
//TODO: fix the casting of the user service, maybe by registering the userManagerBase with scenes, or refactoring so we just need a IUserService reference
|
||||
m_loginService = new LLStandaloneLoginService((UserManagerBase)m_firstScene.CommsManager.UserAdminService, welcomeMessage, m_firstScene.CommsManager.InterServiceInventoryService, m_firstScene.CommsManager.NetworkServersInfo, authenticate, rootFolder, this);
|
||||
m_loginService.WarnAlreadyLogged = m_warn_already_logged;
|
||||
|
||||
httpServer.AddXmlRPCHandler("login_to_simulator", m_loginService.XmlRpcLoginMethod);
|
||||
|
||||
|
|
|
@ -52,14 +52,6 @@ namespace OpenSim.Client.Linden
|
|||
protected NetworkServersInfo m_serversInfo;
|
||||
protected bool m_authUsers = false;
|
||||
|
||||
// If true, warns the user that he is already logged, forcing another login.
|
||||
// If false, skips message and logs in directly, kicking out current user.
|
||||
public bool WarnAlreadyLogged
|
||||
{
|
||||
get { return m_warn_already_logged; }
|
||||
set { m_warn_already_logged = value; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Used to make requests to the local regions.
|
||||
/// </summary>
|
||||
|
@ -79,6 +71,8 @@ namespace OpenSim.Client.Linden
|
|||
|
||||
m_inventoryService = interServiceInventoryService;
|
||||
m_regionsConnector = regionsConnector;
|
||||
// Standard behavior: In StandAlone, silent logout of last hung session
|
||||
m_warn_already_logged = false;
|
||||
}
|
||||
|
||||
public override UserProfileData GetTheUser(string firstname, string lastname)
|
||||
|
|
|
@ -181,10 +181,9 @@ namespace OpenSim.Framework.Communications.Services
|
|||
// try to tell the region that their user is dead.
|
||||
LogOffUser(userProfile, " XMLRPC 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]: XMLRPC Notifying user {0} {1} that they are already logged in",
|
||||
firstname, lastname);
|
||||
|
@ -193,6 +192,7 @@ namespace OpenSim.Framework.Communications.Services
|
|||
}
|
||||
else
|
||||
{
|
||||
// This is behavior for standalone (silent logout of last hung session)
|
||||
m_log.InfoFormat(
|
||||
"[LOGIN]: User {0} {1} is already logged in, not notifying user, kicking old presence and starting new login.",
|
||||
firstname, lastname);
|
||||
|
|
|
@ -304,7 +304,9 @@ namespace OpenSim.Framework.Communications.Tests
|
|||
|
||||
}
|
||||
|
||||
[Test]
|
||||
// [Test]
|
||||
// Commenting out test now that LLStandAloneLoginService no longer replies with message in this case.
|
||||
// Kept the code for future test with grid mode, which will keep this behavior.
|
||||
public void T023_TestAuthenticatedLoginAlreadyLoggedIn()
|
||||
{
|
||||
TestHelper.InMethod();
|
||||
|
|
|
@ -256,10 +256,6 @@
|
|||
accounts_authenticate = true
|
||||
welcome_message = "Welcome to OpenSimulator"
|
||||
|
||||
; Shows or skips the "please wait 5 minutes" message when you crash or are already logged in.
|
||||
; If false, it will silently kick the user from the scene and login.
|
||||
warn_user_already_logged_in = true
|
||||
|
||||
; Inventory database provider
|
||||
inventory_plugin = "OpenSim.Data.SQLite.dll"
|
||||
; inventory_plugin = "OpenSim.Data.MySQL.dll"
|
||||
|
|
Loading…
Reference in New Issue