Adds support at the inventory server for direct inventory manipulation from authorized clients using capabilities. Provided keys are verified with the designated authority. The added code is only executed for clients following HGLoginAuth procedure or similar. It does not remove any existing behavior.

This commit is contained in:
diva
2009-03-30 19:35:55 +00:00
parent 4cbf963354
commit b73ce1143a
2 changed files with 31 additions and 2 deletions

View File

@@ -33,6 +33,7 @@ using log4net;
using log4net.Config;
using OpenMetaverse;
using OpenSim.Framework;
using OpenSim.Framework.Communications.Services;
using OpenSim.Framework.Console;
using OpenSim.Framework.Servers;
@@ -43,6 +44,7 @@ namespace OpenSim.Grid.InventoryServer
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
private GridInventoryService m_inventoryService;
private HGInventoryService m_directInventoryService;
public const string LogName = "INVENTORY";
@@ -70,14 +72,19 @@ namespace OpenSim.Grid.InventoryServer
m_inventoryService.DoLookup = config.SessionLookUp;
m_inventoryService.AddPlugin(config.DatabaseProvider, config.DatabaseConnect);
m_log.Info("[" + LogName + "]: Starting HTTP server ...");
m_httpServer = new BaseHttpServer(config.HttpPort);
AddHttpHandlers();
if (config.RegionAccessToAgentsInventory)
AddHttpHandlers();
m_httpServer.Start();
m_log.Info("[" + LogName + "]: Started HTTP server");
m_directInventoryService = new HGInventoryService(m_inventoryService, config.AssetServerURL, config.UserServerURL, m_httpServer, config.InventoryServerURL);
base.StartupSpecific();
m_console.Commands.AddCommand("inventoryserver", false, "add user",