diff options
-rw-r--r-- | OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs | 4 | ||||
-rw-r--r-- | OpenSim/Region/CoreModules/Framework/InventoryAccess/HGInventoryAccessModule.cs | 4 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/ScenePresence.cs | 6 | ||||
-rw-r--r-- | OpenSim/Server/Handlers/Asset/AssetServerConnector.cs | 17 | ||||
-rw-r--r-- | OpenSim/Server/Handlers/Asset/AssetServerDeleteHandler.cs | 47 | ||||
-rw-r--r-- | OpenSim/Services/AssetService/AssetService.cs | 17 | ||||
-rw-r--r-- | OpenSim/Services/AssetService/XAssetService.cs | 18 | ||||
-rw-r--r-- | OpenSim/Services/HypergridService/HGSuitcaseInventoryService.cs | 10 | ||||
-rw-r--r-- | bin/Robust.HG.ini.example | 9 | ||||
-rw-r--r-- | bin/Robust.ini.example | 14 | ||||
-rw-r--r-- | bin/config-include/StandaloneCommon.ini.example | 162 | ||||
-rw-r--r-- | bin/config-include/StandaloneHypergrid.ini | 8 |
12 files changed, 193 insertions, 123 deletions
diff --git a/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs b/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs index 0aee0d4..b16c37a 100644 --- a/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs +++ b/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs | |||
@@ -259,8 +259,8 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer | |||
259 | if (flags == -1 /* no region in DB */ || (flags & (int)OpenSim.Framework.RegionFlags.Hyperlink) != 0) | 259 | if (flags == -1 /* no region in DB */ || (flags & (int)OpenSim.Framework.RegionFlags.Hyperlink) != 0) |
260 | { | 260 | { |
261 | // this user is going to another grid | 261 | // this user is going to another grid |
262 | // check if HyperGrid teleport is allowed, based on user level | 262 | // for local users, check if HyperGrid teleport is allowed, based on user level |
263 | if (sp.UserLevel < m_levelHGTeleport) | 263 | if (Scene.UserManagementModule.IsLocalGridUser(sp.UUID) && sp.UserLevel < m_levelHGTeleport) |
264 | { | 264 | { |
265 | m_log.WarnFormat("[HG ENTITY TRANSFER MODULE]: Unable to HG teleport agent due to insufficient UserLevel."); | 265 | m_log.WarnFormat("[HG ENTITY TRANSFER MODULE]: Unable to HG teleport agent due to insufficient UserLevel."); |
266 | reason = "Hypergrid teleport not allowed"; | 266 | reason = "Hypergrid teleport not allowed"; |
diff --git a/OpenSim/Region/CoreModules/Framework/InventoryAccess/HGInventoryAccessModule.cs b/OpenSim/Region/CoreModules/Framework/InventoryAccess/HGInventoryAccessModule.cs index 80257bd..6bb758e 100644 --- a/OpenSim/Region/CoreModules/Framework/InventoryAccess/HGInventoryAccessModule.cs +++ b/OpenSim/Region/CoreModules/Framework/InventoryAccess/HGInventoryAccessModule.cs | |||
@@ -92,7 +92,7 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess | |||
92 | m_HomeURI = thisModuleConfig.GetString("HomeURI", m_HomeURI); | 92 | m_HomeURI = thisModuleConfig.GetString("HomeURI", m_HomeURI); |
93 | m_OutboundPermission = thisModuleConfig.GetBoolean("OutboundPermission", true); | 93 | m_OutboundPermission = thisModuleConfig.GetBoolean("OutboundPermission", true); |
94 | m_ThisGatekeeper = thisModuleConfig.GetString("Gatekeeper", string.Empty); | 94 | m_ThisGatekeeper = thisModuleConfig.GetString("Gatekeeper", string.Empty); |
95 | m_RestrictInventoryAccessAbroad = thisModuleConfig.GetBoolean("RestrictInventoryAccessAbroad", false); | 95 | m_RestrictInventoryAccessAbroad = thisModuleConfig.GetBoolean("RestrictInventoryAccessAbroad", true); |
96 | } | 96 | } |
97 | else | 97 | else |
98 | m_log.Warn("[HG INVENTORY ACCESS MODULE]: HGInventoryAccessModule configs not found. ProfileServerURI not set!"); | 98 | m_log.Warn("[HG INVENTORY ACCESS MODULE]: HGInventoryAccessModule configs not found. ProfileServerURI not set!"); |
@@ -351,6 +351,7 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess | |||
351 | 351 | ||
352 | private void ProcessInventoryForArriving(IClientAPI client) | 352 | private void ProcessInventoryForArriving(IClientAPI client) |
353 | { | 353 | { |
354 | // No-op for now, but we may need to do something for freign users inventory | ||
354 | } | 355 | } |
355 | 356 | ||
356 | // | 357 | // |
@@ -397,6 +398,7 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess | |||
397 | 398 | ||
398 | private void ProcessInventoryForLeaving(IClientAPI client) | 399 | private void ProcessInventoryForLeaving(IClientAPI client) |
399 | { | 400 | { |
401 | // No-op for now | ||
400 | } | 402 | } |
401 | 403 | ||
402 | #endregion | 404 | #endregion |
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index e2be79a..2c18397 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -1,4 +1,4 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (c) Contributors, http://opensimulator.org/ | 2 | * Copyright (c) Contributors, http://opensimulator.org/ |
3 | * See CONTRIBUTORS.TXT for a full list of copyright holders. | 3 | * See CONTRIBUTORS.TXT for a full list of copyright holders. |
4 | * | 4 | * |
@@ -532,7 +532,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
532 | { | 532 | { |
533 | if (PhysicsActor != null) | 533 | if (PhysicsActor != null) |
534 | { | 534 | { |
535 | m_velocity = PhysicsActor.TargetVelocity; | 535 | m_velocity = PhysicsActor.Velocity; |
536 | 536 | ||
537 | // m_log.DebugFormat( | 537 | // m_log.DebugFormat( |
538 | // "[SCENE PRESENCE]: Set velocity {0} for {1} in {2} via getting Velocity!", | 538 | // "[SCENE PRESENCE]: Set velocity {0} for {1} in {2} via getting Velocity!", |
@@ -547,7 +547,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
547 | { | 547 | { |
548 | try | 548 | try |
549 | { | 549 | { |
550 | PhysicsActor.Velocity = value; | 550 | PhysicsActor.TargetVelocity = value; |
551 | } | 551 | } |
552 | catch (Exception e) | 552 | catch (Exception e) |
553 | { | 553 | { |
diff --git a/OpenSim/Server/Handlers/Asset/AssetServerConnector.cs b/OpenSim/Server/Handlers/Asset/AssetServerConnector.cs index 4123f49..ff45d94 100644 --- a/OpenSim/Server/Handlers/Asset/AssetServerConnector.cs +++ b/OpenSim/Server/Handlers/Asset/AssetServerConnector.cs | |||
@@ -67,10 +67,25 @@ namespace OpenSim.Server.Handlers.Asset | |||
67 | throw new Exception(String.Format("Failed to load AssetService from {0}; config is {1}", assetService, m_ConfigName)); | 67 | throw new Exception(String.Format("Failed to load AssetService from {0}; config is {1}", assetService, m_ConfigName)); |
68 | 68 | ||
69 | bool allowDelete = serverConfig.GetBoolean("AllowRemoteDelete", false); | 69 | bool allowDelete = serverConfig.GetBoolean("AllowRemoteDelete", false); |
70 | bool allowDeleteAllTypes = serverConfig.GetBoolean("AllowRemoteDeleteAllTypes", false); | ||
71 | |||
72 | AllowedRemoteDeleteTypes allowedRemoteDeleteTypes; | ||
73 | |||
74 | if (!allowDelete) | ||
75 | { | ||
76 | allowedRemoteDeleteTypes = AllowedRemoteDeleteTypes.None; | ||
77 | } | ||
78 | else | ||
79 | { | ||
80 | if (allowDeleteAllTypes) | ||
81 | allowedRemoteDeleteTypes = AllowedRemoteDeleteTypes.All; | ||
82 | else | ||
83 | allowedRemoteDeleteTypes = AllowedRemoteDeleteTypes.MapTile; | ||
84 | } | ||
70 | 85 | ||
71 | server.AddStreamHandler(new AssetServerGetHandler(m_AssetService)); | 86 | server.AddStreamHandler(new AssetServerGetHandler(m_AssetService)); |
72 | server.AddStreamHandler(new AssetServerPostHandler(m_AssetService)); | 87 | server.AddStreamHandler(new AssetServerPostHandler(m_AssetService)); |
73 | server.AddStreamHandler(new AssetServerDeleteHandler(m_AssetService, allowDelete)); | 88 | server.AddStreamHandler(new AssetServerDeleteHandler(m_AssetService, allowedRemoteDeleteTypes)); |
74 | 89 | ||
75 | MainConsole.Instance.Commands.AddCommand("Assets", false, | 90 | MainConsole.Instance.Commands.AddCommand("Assets", false, |
76 | "show asset", | 91 | "show asset", |
diff --git a/OpenSim/Server/Handlers/Asset/AssetServerDeleteHandler.cs b/OpenSim/Server/Handlers/Asset/AssetServerDeleteHandler.cs index 0cfe5b1..986394b 100644 --- a/OpenSim/Server/Handlers/Asset/AssetServerDeleteHandler.cs +++ b/OpenSim/Server/Handlers/Asset/AssetServerDeleteHandler.cs | |||
@@ -42,18 +42,32 @@ using OpenSim.Framework.Servers.HttpServer; | |||
42 | 42 | ||
43 | namespace OpenSim.Server.Handlers.Asset | 43 | namespace OpenSim.Server.Handlers.Asset |
44 | { | 44 | { |
45 | /// <summary> | ||
46 | /// Remote deletes allowed. | ||
47 | /// </summary> | ||
48 | public enum AllowedRemoteDeleteTypes | ||
49 | { | ||
50 | None, | ||
51 | MapTile, | ||
52 | All | ||
53 | } | ||
54 | |||
45 | public class AssetServerDeleteHandler : BaseStreamHandler | 55 | public class AssetServerDeleteHandler : BaseStreamHandler |
46 | { | 56 | { |
47 | // private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); | 57 | private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); |
48 | 58 | ||
49 | private IAssetService m_AssetService; | 59 | private IAssetService m_AssetService; |
50 | protected bool m_allowDelete; | ||
51 | 60 | ||
52 | public AssetServerDeleteHandler(IAssetService service, bool allowDelete) : | 61 | /// <summary> |
62 | /// Asset types that can be deleted remotely. | ||
63 | /// </summary> | ||
64 | private AllowedRemoteDeleteTypes m_allowedTypes; | ||
65 | |||
66 | public AssetServerDeleteHandler(IAssetService service, AllowedRemoteDeleteTypes allowedTypes) : | ||
53 | base("DELETE", "/assets") | 67 | base("DELETE", "/assets") |
54 | { | 68 | { |
55 | m_AssetService = service; | 69 | m_AssetService = service; |
56 | m_allowDelete = allowDelete; | 70 | m_allowedTypes = allowedTypes; |
57 | } | 71 | } |
58 | 72 | ||
59 | public override byte[] Handle(string path, Stream request, | 73 | public override byte[] Handle(string path, Stream request, |
@@ -63,13 +77,32 @@ namespace OpenSim.Server.Handlers.Asset | |||
63 | 77 | ||
64 | string[] p = SplitParams(path); | 78 | string[] p = SplitParams(path); |
65 | 79 | ||
66 | if (p.Length > 0 && m_allowDelete) | 80 | if (p.Length > 0) |
67 | { | 81 | { |
68 | result = m_AssetService.Delete(p[0]); | 82 | if (m_allowedTypes != AllowedRemoteDeleteTypes.None) |
83 | { | ||
84 | string assetID = p[0]; | ||
85 | |||
86 | AssetBase asset = m_AssetService.Get(assetID); | ||
87 | if (asset != null) | ||
88 | { | ||
89 | if (m_allowedTypes == AllowedRemoteDeleteTypes.All | ||
90 | || (int)(asset.Flags & AssetFlags.Maptile) != 0) | ||
91 | { | ||
92 | result = m_AssetService.Delete(assetID); | ||
93 | } | ||
94 | else | ||
95 | { | ||
96 | m_log.DebugFormat( | ||
97 | "[ASSET SERVER DELETE HANDLER]: Request to delete asset {0}, but type is {1} and allowed remote delete types are {2}", | ||
98 | assetID, (AssetFlags)asset.Flags, m_allowedTypes); | ||
99 | } | ||
100 | } | ||
101 | } | ||
69 | } | 102 | } |
70 | 103 | ||
71 | XmlSerializer xs = new XmlSerializer(typeof(bool)); | 104 | XmlSerializer xs = new XmlSerializer(typeof(bool)); |
72 | return ServerUtils.SerializeResult(xs, result); | 105 | return ServerUtils.SerializeResult(xs, result); |
73 | } | 106 | } |
74 | } | 107 | } |
75 | } | 108 | } \ No newline at end of file |
diff --git a/OpenSim/Services/AssetService/AssetService.cs b/OpenSim/Services/AssetService/AssetService.cs index 96b430d..f1bffa4 100644 --- a/OpenSim/Services/AssetService/AssetService.cs +++ b/OpenSim/Services/AssetService/AssetService.cs | |||
@@ -70,7 +70,7 @@ namespace OpenSim.Services.AssetService | |||
70 | 70 | ||
71 | if (assetLoaderEnabled) | 71 | if (assetLoaderEnabled) |
72 | { | 72 | { |
73 | m_log.DebugFormat("[ASSET]: Loading default asset set from {0}", loaderArgs); | 73 | m_log.DebugFormat("[ASSET SERVICE]: Loading default asset set from {0}", loaderArgs); |
74 | 74 | ||
75 | m_AssetLoader.ForEachDefaultXmlAsset( | 75 | m_AssetLoader.ForEachDefaultXmlAsset( |
76 | loaderArgs, | 76 | loaderArgs, |
@@ -200,20 +200,7 @@ namespace OpenSim.Services.AssetService | |||
200 | if (!UUID.TryParse(id, out assetID)) | 200 | if (!UUID.TryParse(id, out assetID)) |
201 | return false; | 201 | return false; |
202 | 202 | ||
203 | AssetBase asset = m_Database.GetAsset(assetID); | 203 | return m_Database.Delete(id); |
204 | if (asset == null) | ||
205 | return false; | ||
206 | |||
207 | if ((int)(asset.Flags & AssetFlags.Maptile) != 0) | ||
208 | { | ||
209 | return m_Database.Delete(id); | ||
210 | } | ||
211 | else | ||
212 | { | ||
213 | m_log.DebugFormat("[ASSET SERVICE]: Request to delete asset {0}, but flags are not Maptile", id); | ||
214 | } | ||
215 | |||
216 | return false; | ||
217 | } | 204 | } |
218 | } | 205 | } |
219 | } \ No newline at end of file | 206 | } \ No newline at end of file |
diff --git a/OpenSim/Services/AssetService/XAssetService.cs b/OpenSim/Services/AssetService/XAssetService.cs index e62bcb5..a1d10ed 100644 --- a/OpenSim/Services/AssetService/XAssetService.cs +++ b/OpenSim/Services/AssetService/XAssetService.cs | |||
@@ -194,21 +194,7 @@ namespace OpenSim.Services.AssetService | |||
194 | if (!UUID.TryParse(id, out assetID)) | 194 | if (!UUID.TryParse(id, out assetID)) |
195 | return false; | 195 | return false; |
196 | 196 | ||
197 | AssetBase asset = m_Database.GetAsset(assetID); | 197 | return m_Database.Delete(id); |
198 | if (asset == null) | ||
199 | return false; | ||
200 | |||
201 | if ((int)(asset.Flags & AssetFlags.Maptile) != 0) | ||
202 | { | ||
203 | return m_Database.Delete(id); | ||
204 | } | ||
205 | else | ||
206 | { | ||
207 | m_log.DebugFormat("[XASSET SERVICE]: Request to delete asset {0}, but flags are not Maptile", id); | ||
208 | } | ||
209 | |||
210 | return false; | ||
211 | } | 198 | } |
212 | } | 199 | } |
213 | } | 200 | } \ No newline at end of file |
214 | |||
diff --git a/OpenSim/Services/HypergridService/HGSuitcaseInventoryService.cs b/OpenSim/Services/HypergridService/HGSuitcaseInventoryService.cs index 556a0da..677bd7b 100644 --- a/OpenSim/Services/HypergridService/HGSuitcaseInventoryService.cs +++ b/OpenSim/Services/HypergridService/HGSuitcaseInventoryService.cs | |||
@@ -71,7 +71,7 @@ namespace OpenSim.Services.HypergridService | |||
71 | m_ConfigName = configName; | 71 | m_ConfigName = configName; |
72 | 72 | ||
73 | if (m_Database == null) | 73 | if (m_Database == null) |
74 | m_log.WarnFormat("[XXX]: m_Database is null!"); | 74 | m_log.ErrorFormat("[HG SUITCASE INVENTORY SERVICE]: m_Database is null!"); |
75 | 75 | ||
76 | // | 76 | // |
77 | // Try reading the [InventoryService] section, if it exists | 77 | // Try reading the [InventoryService] section, if it exists |
@@ -301,7 +301,7 @@ namespace OpenSim.Services.HypergridService | |||
301 | 301 | ||
302 | public override bool AddFolder(InventoryFolderBase folder) | 302 | public override bool AddFolder(InventoryFolderBase folder) |
303 | { | 303 | { |
304 | m_log.WarnFormat("[HG SUITCASE INVENTORY SERVICE]: AddFolder {0} {1}", folder.Name, folder.ParentID); | 304 | //m_log.WarnFormat("[HG SUITCASE INVENTORY SERVICE]: AddFolder {0} {1}", folder.Name, folder.ParentID); |
305 | // Let's do a bit of sanity checking, more than the base service does | 305 | // Let's do a bit of sanity checking, more than the base service does |
306 | // make sure the given folder's parent folder exists under the suitcase tree of this user | 306 | // make sure the given folder's parent folder exists under the suitcase tree of this user |
307 | 307 | ||
@@ -323,7 +323,7 @@ namespace OpenSim.Services.HypergridService | |||
323 | 323 | ||
324 | public override bool UpdateFolder(InventoryFolderBase folder) | 324 | public override bool UpdateFolder(InventoryFolderBase folder) |
325 | { | 325 | { |
326 | m_log.DebugFormat("[HG SUITCASE INVENTORY SERVICE]: Update folder {0}, version {1}", folder.ID, folder.Version); | 326 | //m_log.DebugFormat("[HG SUITCASE INVENTORY SERVICE]: Update folder {0}, version {1}", folder.ID, folder.Version); |
327 | if (!IsWithinSuitcaseTree(folder.Owner, folder.ID)) | 327 | if (!IsWithinSuitcaseTree(folder.Owner, folder.ID)) |
328 | { | 328 | { |
329 | m_log.DebugFormat("[HG SUITCASE INVENTORY SERVICE]: folder {0} not within Suitcase tree", folder.Name); | 329 | m_log.DebugFormat("[HG SUITCASE INVENTORY SERVICE]: folder {0} not within Suitcase tree", folder.Name); |
@@ -584,7 +584,7 @@ namespace OpenSim.Services.HypergridService | |||
584 | { | 584 | { |
585 | if (a.Wearables[i][j].ItemID == itemID) | 585 | if (a.Wearables[i][j].ItemID == itemID) |
586 | { | 586 | { |
587 | m_log.DebugFormat("[HG SUITCASE INVENTORY SERVICE]: item {0} is a wearable", itemID); | 587 | //m_log.DebugFormat("[HG SUITCASE INVENTORY SERVICE]: item {0} is a wearable", itemID); |
588 | return true; | 588 | return true; |
589 | } | 589 | } |
590 | } | 590 | } |
@@ -593,7 +593,7 @@ namespace OpenSim.Services.HypergridService | |||
593 | // Check attachments | 593 | // Check attachments |
594 | if (a.GetAttachmentForItem(itemID) != null) | 594 | if (a.GetAttachmentForItem(itemID) != null) |
595 | { | 595 | { |
596 | m_log.DebugFormat("[HG SUITCASE INVENTORY SERVICE]: item {0} is an attachment", itemID); | 596 | //m_log.DebugFormat("[HG SUITCASE INVENTORY SERVICE]: item {0} is an attachment", itemID); |
597 | return true; | 597 | return true; |
598 | } | 598 | } |
599 | 599 | ||
diff --git a/bin/Robust.HG.ini.example b/bin/Robust.HG.ini.example index 82ef44d..4ecc6b0 100644 --- a/bin/Robust.HG.ini.example +++ b/bin/Robust.HG.ini.example | |||
@@ -485,8 +485,15 @@ HGAssetServiceConnector = "HGAssetService@8002/OpenSim.Server.Handlers.dll:Asset | |||
485 | ; * | 485 | ; * |
486 | [HGInventoryService] | 486 | [HGInventoryService] |
487 | ; For the InventoryServiceInConnector | 487 | ; For the InventoryServiceInConnector |
488 | LocalServiceModule = "OpenSim.Services.HypergridService.dll:HGInventoryService" | 488 | LocalServiceModule = "OpenSim.Services.HypergridService.dll:HGSuitcaseInventoryService" |
489 | ;; alternatives: | ||
490 | ;; HG1.5, more permissive, not recommended, but still supported | ||
491 | ;LocalServiceModule = "OpenSim.Services.HypergridService.dll:HGInventoryService" | ||
492 | ;; HG1.0, totally permissive, not recommended, but OK for grids with 100% trust | ||
493 | ;LocalServiceModule = "OpenSim.Services.InventoryService.dll:XInventoryService" | ||
494 | |||
489 | UserAccountsService = "OpenSim.Services.UserAccountService.dll:UserAccountService" | 495 | UserAccountsService = "OpenSim.Services.UserAccountService.dll:UserAccountService" |
496 | AvatarService = "OpenSim.Services.AvatarService.dll:AvatarService" | ||
490 | HomeURI = "http://127.0.0.1:8002" | 497 | HomeURI = "http://127.0.0.1:8002" |
491 | 498 | ||
492 | ; * The interface that local users get when they are in other grids. | 499 | ; * The interface that local users get when they are in other grids. |
diff --git a/bin/Robust.ini.example b/bin/Robust.ini.example index 2eb551d..7503c5e 100644 --- a/bin/Robust.ini.example +++ b/bin/Robust.ini.example | |||
@@ -77,7 +77,19 @@ MapGetServiceConnector = "8002/OpenSim.Server.Handlers.dll:MapGetServiceConnecto | |||
77 | LocalServiceModule = "OpenSim.Services.AssetService.dll:AssetService" | 77 | LocalServiceModule = "OpenSim.Services.AssetService.dll:AssetService" |
78 | DefaultAssetLoader = "OpenSim.Framework.AssetLoader.Filesystem.dll" | 78 | DefaultAssetLoader = "OpenSim.Framework.AssetLoader.Filesystem.dll" |
79 | AssetLoaderArgs = "./assets/AssetSets.xml" | 79 | AssetLoaderArgs = "./assets/AssetSets.xml" |
80 | AllowRemoteDelete = "false" | 80 | |
81 | ; Allow maptile assets to remotely deleted by remote calls to the asset service. | ||
82 | ; There is no harm in having this as false - it just means that historical maptile assets are not deleted. | ||
83 | ; This only applies to maptiles served via the version 1 viewer mechanisms | ||
84 | ; Default is false | ||
85 | AllowRemoteDelete = false | ||
86 | |||
87 | ; Allow all assets to be remotely deleted. | ||
88 | ; Only set this to true if you are operating a grid where you control all calls to the asset service | ||
89 | ; (where a necessary condition is that you control all simulators) and you need this for admin purposes. | ||
90 | ; If set to true, AllowRemoteDelete = true is required as well. | ||
91 | ; Default is false. | ||
92 | AllowRemoteDeleteAllTypes = false | ||
81 | 93 | ||
82 | ; * This configuration loads the inventory server modules. It duplicates | 94 | ; * This configuration loads the inventory server modules. It duplicates |
83 | ; * the function of the legacy inventory server | 95 | ; * the function of the legacy inventory server |
diff --git a/bin/config-include/StandaloneCommon.ini.example b/bin/config-include/StandaloneCommon.ini.example index 84de0ec..f28de43 100644 --- a/bin/config-include/StandaloneCommon.ini.example +++ b/bin/config-include/StandaloneCommon.ini.example | |||
@@ -47,36 +47,6 @@ | |||
47 | DefaultAssetLoader = "OpenSim.Framework.AssetLoader.Filesystem.dll" | 47 | DefaultAssetLoader = "OpenSim.Framework.AssetLoader.Filesystem.dll" |
48 | AssetLoaderArgs = "assets/AssetSets.xml" | 48 | AssetLoaderArgs = "assets/AssetSets.xml" |
49 | 49 | ||
50 | [HGInventoryService] | ||
51 | HomeURI = "http://127.0.0.1:9000" | ||
52 | |||
53 | [HGAssetService] | ||
54 | HomeURI = "http://127.0.0.1:9000" | ||
55 | |||
56 | ;; The asset types that this grid can export to / import from other grids. | ||
57 | ;; Comma separated. | ||
58 | ;; Valid values are all the asset types in OpenMetaverse.AssetType, namely: | ||
59 | ;; Unknown, Texture, Sound, CallingCard, Landmark, Clothing, Object, Notecard, LSLText, | ||
60 | ;; LSLBytecode, TextureTGA, Bodypart, SoundWAV, ImageTGA, ImageJPEG, Animation, Gesture, Mesh | ||
61 | ;; | ||
62 | ;; Leave blank or commented if you don't want to apply any restrictions. | ||
63 | ;; A more strict, but still reasonable, policy may be to disallow the exchange | ||
64 | ;; of scripts, like so: | ||
65 | ; DisallowExport ="LSLText" | ||
66 | ; DisallowImport ="LSLBytecode" | ||
67 | |||
68 | |||
69 | [HGInventoryAccessModule] | ||
70 | HomeURI = "http://127.0.0.1:9000" | ||
71 | Gatekeeper = "http://127.0.0.1:9000" | ||
72 | |||
73 | ;; If you want to protect your assets from being copied by foreign visitors | ||
74 | ;; uncomment the next line. You may want to do this on sims that have licensed content. | ||
75 | ; OutboundPermission = False | ||
76 | |||
77 | [HGFriendsModule] | ||
78 | ; User level required to be able to send friendship invitations to foreign users | ||
79 | ;LevelHGFriends = 0; | ||
80 | 50 | ||
81 | [GridService] | 51 | [GridService] |
82 | ;; For in-memory region storage (default) | 52 | ;; For in-memory region storage (default) |
@@ -97,11 +67,6 @@ | |||
97 | ;; change this to the address of your simulator | 67 | ;; change this to the address of your simulator |
98 | Gatekeeper="http://127.0.0.1:9000" | 68 | Gatekeeper="http://127.0.0.1:9000" |
99 | 69 | ||
100 | [Messaging] | ||
101 | ; === HG ONLY === | ||
102 | ;; change this to the address of your simulator | ||
103 | Gatekeeper = "http://127.0.0.1:9000" | ||
104 | |||
105 | [LibraryModule] | 70 | [LibraryModule] |
106 | ; Set this if you want to change the name of the OpenSim Library | 71 | ; Set this if you want to change the name of the OpenSim Library |
107 | ;LibraryName = "My World's Library" | 72 | ;LibraryName = "My World's Library" |
@@ -140,41 +105,6 @@ | |||
140 | ;AllowedClients = "" | 105 | ;AllowedClients = "" |
141 | ;DeniedClients = "" | 106 | ;DeniedClients = "" |
142 | 107 | ||
143 | [GatekeeperService] | ||
144 | ExternalName = "http://127.0.0.1:9000" | ||
145 | |||
146 | ; Does this grid allow incoming links to any region in it? | ||
147 | ; If false, HG TPs happen only to the Default regions specified in [GridService] section | ||
148 | AllowTeleportsToAnyRegion = true | ||
149 | |||
150 | ;; Regular expressions for controlling which client versions are accepted/denied. | ||
151 | ;; An empty string means nothing is checked. | ||
152 | ;; | ||
153 | ;; Example 1: allow only these 3 types of clients (any version of them) | ||
154 | ;; AllowedClients = "Imprudence|Hippo|Second Life" | ||
155 | ;; | ||
156 | ;; Example 2: allow all clients except these | ||
157 | ;; DeniedClients = "Twisted|Crawler|Cryolife|FuckLife|StreetLife|GreenLife|AntiLife|KORE-Phaze|Synlyfe|Purple Second Life|SecondLi |Emerald" | ||
158 | ;; | ||
159 | ;; Note that these are regular expressions, so every character counts. | ||
160 | ;; Also note that this is very weak security and should not be trusted as a reliable means | ||
161 | ;; for keeping bad clients out; modified clients can fake their identifiers. | ||
162 | ;; | ||
163 | ;; | ||
164 | ;AllowedClients = "" | ||
165 | ;DeniedClients = "" | ||
166 | |||
167 | ;; Are foreign visitors allowed? | ||
168 | ;ForeignAgentsAllowed = true | ||
169 | ;; | ||
170 | ;; If ForeignAgentsAllowed is true, make exceptions using AllowExcept. | ||
171 | ;; Leave blank or commented for no exceptions. | ||
172 | ; AllowExcept = "http://griefer.com:8002, http://enemy.com:8002" | ||
173 | ;; | ||
174 | ;; If ForeignAgentsAllowed is false, make exceptions using DisallowExcept | ||
175 | ;; Leave blank or commented for no exceptions. | ||
176 | ; DisallowExcept = "http://myfriendgrid.com:8002, http://myboss.com:8002" | ||
177 | |||
178 | 108 | ||
179 | [FreeswitchService] | 109 | [FreeswitchService] |
180 | ;; If FreeSWITCH is not being used then you don't need to set any of these parameters | 110 | ;; If FreeSWITCH is not being used then you don't need to set any of these parameters |
@@ -279,6 +209,44 @@ | |||
279 | ; Example: | 209 | ; Example: |
280 | ; Region_Test_1 = "DisallowForeigners" | 210 | ; Region_Test_1 = "DisallowForeigners" |
281 | 211 | ||
212 | ;; | ||
213 | ;; HG configurations | ||
214 | ;; | ||
215 | [GatekeeperService] | ||
216 | ExternalName = "http://127.0.0.1:9000" | ||
217 | |||
218 | ; Does this grid allow incoming links to any region in it? | ||
219 | ; If false, HG TPs happen only to the Default regions specified in [GridService] section | ||
220 | AllowTeleportsToAnyRegion = true | ||
221 | |||
222 | ;; Regular expressions for controlling which client versions are accepted/denied. | ||
223 | ;; An empty string means nothing is checked. | ||
224 | ;; | ||
225 | ;; Example 1: allow only these 3 types of clients (any version of them) | ||
226 | ;; AllowedClients = "Imprudence|Hippo|Second Life" | ||
227 | ;; | ||
228 | ;; Example 2: allow all clients except these | ||
229 | ;; DeniedClients = "Twisted|Crawler|Cryolife|FuckLife|StreetLife|GreenLife|AntiLife|KORE-Phaze|Synlyfe|Purple Second Life|SecondLi |Emerald" | ||
230 | ;; | ||
231 | ;; Note that these are regular expressions, so every character counts. | ||
232 | ;; Also note that this is very weak security and should not be trusted as a reliable means | ||
233 | ;; for keeping bad clients out; modified clients can fake their identifiers. | ||
234 | ;; | ||
235 | ;; | ||
236 | ;AllowedClients = "" | ||
237 | ;DeniedClients = "" | ||
238 | |||
239 | ;; Are foreign visitors allowed? | ||
240 | ;ForeignAgentsAllowed = true | ||
241 | ;; | ||
242 | ;; If ForeignAgentsAllowed is true, make exceptions using AllowExcept. | ||
243 | ;; Leave blank or commented for no exceptions. | ||
244 | ; AllowExcept = "http://griefer.com:8002, http://enemy.com:8002" | ||
245 | ;; | ||
246 | ;; If ForeignAgentsAllowed is false, make exceptions using DisallowExcept | ||
247 | ;; Leave blank or commented for no exceptions. | ||
248 | ; DisallowExcept = "http://myfriendgrid.com:8002, http://myboss.com:8002" | ||
249 | |||
282 | [UserAgentService] | 250 | [UserAgentService] |
283 | ;; User level required to be contacted from other grids | 251 | ;; User level required to be contacted from other grids |
284 | ;LevelOutsideContacts = 0 | 252 | ;LevelOutsideContacts = 0 |
@@ -299,3 +267,57 @@ | |||
299 | ;; If ForeignTripsAllowed is true, make exceptions using AllowExcept. | 267 | ;; If ForeignTripsAllowed is true, make exceptions using AllowExcept. |
300 | ;; Leave blank or commented for no exceptions. | 268 | ;; Leave blank or commented for no exceptions. |
301 | ; AllowExcept_Level_200 = "http://griefer.com:8002, http://enemy.com:8002" | 269 | ; AllowExcept_Level_200 = "http://griefer.com:8002, http://enemy.com:8002" |
270 | |||
271 | [HGInventoryService] | ||
272 | HomeURI = "http://127.0.0.1:9000" | ||
273 | |||
274 | [HGAssetService] | ||
275 | HomeURI = "http://127.0.0.1:9000" | ||
276 | |||
277 | ;; The asset types that this grid can export to / import from other grids. | ||
278 | ;; Comma separated. | ||
279 | ;; Valid values are all the asset types in OpenMetaverse.AssetType, namely: | ||
280 | ;; Unknown, Texture, Sound, CallingCard, Landmark, Clothing, Object, Notecard, LSLText, | ||
281 | ;; LSLBytecode, TextureTGA, Bodypart, SoundWAV, ImageTGA, ImageJPEG, Animation, Gesture, Mesh | ||
282 | ;; | ||
283 | ;; Leave blank or commented if you don't want to apply any restrictions. | ||
284 | ;; A more strict, but still reasonable, policy may be to disallow the exchange | ||
285 | ;; of scripts, like so: | ||
286 | ; DisallowExport ="LSLText" | ||
287 | ; DisallowImport ="LSLBytecode" | ||
288 | |||
289 | |||
290 | [HGInventoryAccessModule] | ||
291 | HomeURI = "http://127.0.0.1:9000" | ||
292 | Gatekeeper = "http://127.0.0.1:9000" | ||
293 | |||
294 | ;; If you want to protect your assets from being copied by foreign visitors | ||
295 | ;; uncomment the next line. You may want to do this on sims that have licensed content. | ||
296 | ;; true = allow exports, false = disallow exports. True by default. | ||
297 | ; OutboundPermission = True | ||
298 | |||
299 | ;; Send visual reminder to local users that their inventories are unavailable while they are traveling | ||
300 | ;; and available when they return. True by default. | ||
301 | ;RestrictInventoryAccessAbroad = True | ||
302 | |||
303 | [HGFriendsModule] | ||
304 | ; User level required to be able to send friendship invitations to foreign users | ||
305 | ;LevelHGFriends = 0; | ||
306 | |||
307 | [Messaging] | ||
308 | ; === HG ONLY === | ||
309 | ;; change this to the address of your simulator | ||
310 | Gatekeeper = "http://127.0.0.1:9000" | ||
311 | |||
312 | |||
313 | [EntityTransfer] | ||
314 | ;; User level from which local users are allowed to HG teleport. Default 0 (all users) | ||
315 | ;LevelHGTeleport = 0 | ||
316 | |||
317 | ;; Are local users restricted from taking their appearance abroad? | ||
318 | ;; Default is no restrictions | ||
319 | ;RestrictAppearanceAbroad = false | ||
320 | |||
321 | ;; If appearance is restricted, which accounts' appearances are allowed to be exported? | ||
322 | ;; Comma-separated list of account names | ||
323 | AccountForAppearance = "Test User, Astronaut Smith" | ||
diff --git a/bin/config-include/StandaloneHypergrid.ini b/bin/config-include/StandaloneHypergrid.ini index 76d588c..195e780 100644 --- a/bin/config-include/StandaloneHypergrid.ini +++ b/bin/config-include/StandaloneHypergrid.ini | |||
@@ -152,7 +152,13 @@ | |||
152 | ;; This greatly restricts the inventory operations while in other grids | 152 | ;; This greatly restricts the inventory operations while in other grids |
153 | [HGInventoryService] | 153 | [HGInventoryService] |
154 | ; For the InventoryServiceInConnector | 154 | ; For the InventoryServiceInConnector |
155 | LocalServiceModule = "OpenSim.Services.HypergridService.dll:HGInventoryService" | 155 | LocalServiceModule = "OpenSim.Services.HypergridService.dll:HGSuitcaseInventoryService" |
156 | ;; alternatives: | ||
157 | ;; HG1.5, more permissive, not recommended, but still supported | ||
158 | ;LocalServiceModule = "OpenSim.Services.HypergridService.dll:HGInventoryService" | ||
159 | ;; HG1.0, totally permissive, not recommended, but OK for grids with 100% trust | ||
160 | ;LocalServiceModule = "OpenSim.Services.InventoryService.dll:XInventoryService" | ||
161 | |||
156 | UserAccountsService = "OpenSim.Services.UserAccountService.dll:UserAccountService" | 162 | UserAccountsService = "OpenSim.Services.UserAccountService.dll:UserAccountService" |
157 | AvatarService = "OpenSim.Services.AvatarService.dll:AvatarService" | 163 | AvatarService = "OpenSim.Services.AvatarService.dll:AvatarService" |
158 | 164 | ||