From 9a5a7b2614e019e5285beba9fb8f6c7be00e4b43 Mon Sep 17 00:00:00 2001 From: MW Date: Tue, 8 Jul 2008 15:36:27 +0000 Subject: Added option to userserver config, to be able disable/enable the LLSD Login support. As far as I know, the LLSD login method is currently only used by libsl based clients/bots. So could be useful to be able to disable this if a grid comes under a griefing attack from libsl bots. --- OpenSim/Framework/UserConfig.cs | 7 +++++++ OpenSim/Grid/UserServer/Main.cs | 5 ++++- 2 files changed, 11 insertions(+), 1 deletion(-) (limited to 'OpenSim') diff --git a/OpenSim/Framework/UserConfig.cs b/OpenSim/Framework/UserConfig.cs index 3cb0503..c7317ca 100644 --- a/OpenSim/Framework/UserConfig.cs +++ b/OpenSim/Framework/UserConfig.cs @@ -49,6 +49,8 @@ namespace OpenSim.Framework public bool HttpSSL = DefaultHttpSSL; public string InventoryUrl = String.Empty; + public bool EnableLLSDLogin = true; + public UserConfig() { // weird, but UserManagerBase needs this. @@ -93,6 +95,8 @@ namespace OpenSim.Framework "Known good region X", "1000", false); configMember.addConfigurationOption("default_Y", ConfigurationOption.ConfigurationTypes.TYPE_UINT32, "Known good region Y", "1000", false); + configMember.addConfigurationOption("enable_llsd_login", ConfigurationOption.ConfigurationTypes.TYPE_BOOLEAN, + "Enable LLSD login support? true/false", true.ToString(), false); } public bool handleIncomingConfiguration(string configuration_key, object configuration_result) @@ -132,6 +136,9 @@ namespace OpenSim.Framework case "default_Y": DefaultY = (uint) configuration_result; break; + case "enable_llsd_login": + EnableLLSDLogin = (bool)configuration_result; + break; } return true; diff --git a/OpenSim/Grid/UserServer/Main.cs b/OpenSim/Grid/UserServer/Main.cs index 905bf81..a04b5ef 100644 --- a/OpenSim/Grid/UserServer/Main.cs +++ b/OpenSim/Grid/UserServer/Main.cs @@ -120,7 +120,10 @@ namespace OpenSim.Grid.UserServer m_httpServer.AddHTTPHandler("login", m_loginService.ProcessHTMLLogin); - m_httpServer.SetLLSDHandler(m_loginService.LLSDLoginMethod); + if (Cfg.EnableLLSDLogin) + { + m_httpServer.SetLLSDHandler(m_loginService.LLSDLoginMethod); + } m_httpServer.AddXmlRPCHandler("get_user_by_name", m_userManager.XmlRPCGetUserMethodName); m_httpServer.AddXmlRPCHandler("get_user_by_uuid", m_userManager.XmlRPCGetUserMethodUUID); -- cgit v1.1