aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs4
-rw-r--r--OpenSim/Region/CoreModules/Framework/InventoryAccess/HGInventoryAccessModule.cs4
-rw-r--r--OpenSim/Services/HypergridService/HGSuitcaseInventoryService.cs10
-rw-r--r--bin/Robust.HG.ini.example9
-rw-r--r--bin/config-include/StandaloneCommon.ini.example162
-rw-r--r--bin/config-include/StandaloneHypergrid.ini8
6 files changed, 117 insertions, 80 deletions
diff --git a/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs b/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs
index 679be18..e37d429 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/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/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