aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Scenes/Scene.cs
diff options
context:
space:
mode:
authorTeravus Ovares2008-06-21 03:29:08 +0000
committerTeravus Ovares2008-06-21 03:29:08 +0000
commita5860ad438885cbf76a36dc7958947355522b8cf (patch)
treeb392682ca7bf79e7fae18c16271980a9eead28bf /OpenSim/Region/Environment/Scenes/Scene.cs
parentlots of futzing with nhibernate to make it more efficient. I (diff)
downloadopensim-SC-a5860ad438885cbf76a36dc7958947355522b8cf.zip
opensim-SC-a5860ad438885cbf76a36dc7958947355522b8cf.tar.gz
opensim-SC-a5860ad438885cbf76a36dc7958947355522b8cf.tar.bz2
opensim-SC-a5860ad438885cbf76a36dc7958947355522b8cf.tar.xz
* Adds Region ban capability to Regions. You access this by going to World->Region/Estate. Then on the Estate tab, at the lower right hand corner, clicking the 'Add' button and picking an avatar.
* It only persists across reboots for the mySQL datastore currently. * Currently have stubs in the other datastores.
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/Scene.cs')
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.cs37
1 files changed, 37 insertions, 0 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs
index cfebd14..73b3a49 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.cs
@@ -1437,6 +1437,20 @@ namespace OpenSim.Region.Environment.Scenes
1437 } 1437 }
1438 } 1438 }
1439 1439
1440 public void LoadRegionBanlist()
1441 {
1442 List<RegionBanListItem> regionbanlist = m_storageManager.DataStore.LoadRegionBanList(m_regInfo.RegionID);
1443 m_regInfo.regionBanlist = regionbanlist;
1444 }
1445 public void AddToRegionBanlist(RegionBanListItem item)
1446 {
1447 m_storageManager.DataStore.AddToRegionBanlist(item);
1448 }
1449
1450 public void RemoveFromRegionBanlist(RegionBanListItem item)
1451 {
1452 m_storageManager.DataStore.RemoveFromRegionBanlist(item);
1453 }
1440 #endregion 1454 #endregion
1441 1455
1442 #region Primitives Methods 1456 #region Primitives Methods
@@ -1854,6 +1868,18 @@ namespace OpenSim.Region.Environment.Scenes
1854 SceneObjectPart RootPrim = GetSceneObjectPart(primID); 1868 SceneObjectPart RootPrim = GetSceneObjectPart(primID);
1855 if (RootPrim != null) 1869 if (RootPrim != null)
1856 { 1870 {
1871 if (m_regInfo.CheckIfUserBanned(RootPrim.OwnerID))
1872 {
1873 SceneObjectGroup grp = RootPrim.ParentGroup;
1874 if (grp != null)
1875 {
1876 DeleteSceneObject(grp);
1877 }
1878
1879 m_log.Info("[INTERREGION]: Denied prim crossing for banned avatar");
1880
1881 return false;
1882 }
1857 if (RootPrim.Shape.PCode == (byte)PCode.Prim) 1883 if (RootPrim.Shape.PCode == (byte)PCode.Prim)
1858 { 1884 {
1859 SceneObjectGroup grp = RootPrim.ParentGroup; 1885 SceneObjectGroup grp = RootPrim.ParentGroup;
@@ -2333,6 +2359,13 @@ namespace OpenSim.Region.Environment.Scenes
2333 { 2359 {
2334 if (regionHandle == m_regInfo.RegionHandle) 2360 if (regionHandle == m_regInfo.RegionHandle)
2335 { 2361 {
2362 if (m_regInfo.CheckIfUserBanned(agent.AgentID))
2363 {
2364 m_log.WarnFormat(
2365 "[CONNECTION DEBUGGING]: Denied access to: {0} [{1}] at {2} because the user is on the region banlist",
2366 agent.AgentID, regionHandle, RegionInfo.RegionName);
2367 }
2368
2336 capsPaths[agent.AgentID] = agent.CapsPath; 2369 capsPaths[agent.AgentID] = agent.CapsPath;
2337 2370
2338 if (!agent.child) 2371 if (!agent.child)
@@ -3599,5 +3632,9 @@ namespace OpenSim.Region.Environment.Scenes
3599 } 3632 }
3600 3633
3601 #endregion 3634 #endregion
3635
3636
3602 } 3637 }
3603} 3638}
3639
3640 \ No newline at end of file