aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorMelanie Thielker2008-08-01 21:08:00 +0000
committerMelanie Thielker2008-08-01 21:08:00 +0000
commit12c5bfa3e0f42232035d74b3768ea98211dc5e18 (patch)
treec7dbdacf918345872ff633d282951b40797e04ff
parent* minor: add to the thread tracker the thread with which the thread tracker t... (diff)
downloadopensim-SC_OLD-12c5bfa3e0f42232035d74b3768ea98211dc5e18.zip
opensim-SC_OLD-12c5bfa3e0f42232035d74b3768ea98211dc5e18.tar.gz
opensim-SC_OLD-12c5bfa3e0f42232035d74b3768ea98211dc5e18.tar.bz2
opensim-SC_OLD-12c5bfa3e0f42232035d74b3768ea98211dc5e18.tar.xz
Estate series, patch 9 (#9157)
Adds the new access semantics and the new flag (allow only age verified) Plumbs in the abuse email address from sim to viewer. The other way around, libomv appears to be lacking support for the data field in the packet. Includes a migration, run prebuild!
-rw-r--r--OpenSim/Data/MySQL/Resources/015_RegionStore.sql6
-rw-r--r--OpenSim/Data/SQLite/Resources/008_RegionStore.sql6
-rw-r--r--OpenSim/Framework/EstateSettings.cs8
-rw-r--r--OpenSim/Framework/IClientAPI.cs2
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs7
-rw-r--r--OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs10
-rw-r--r--OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs2
-rw-r--r--OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs2
8 files changed, 36 insertions, 7 deletions
diff --git a/OpenSim/Data/MySQL/Resources/015_RegionStore.sql b/OpenSim/Data/MySQL/Resources/015_RegionStore.sql
new file mode 100644
index 0000000..6d4f9f3
--- /dev/null
+++ b/OpenSim/Data/MySQL/Resources/015_RegionStore.sql
@@ -0,0 +1,6 @@
1begin;
2
3alter table estate_settings add column DenyMinors tinyint not null;
4
5commit;
6
diff --git a/OpenSim/Data/SQLite/Resources/008_RegionStore.sql b/OpenSim/Data/SQLite/Resources/008_RegionStore.sql
new file mode 100644
index 0000000..28bfbf5
--- /dev/null
+++ b/OpenSim/Data/SQLite/Resources/008_RegionStore.sql
@@ -0,0 +1,6 @@
1begin;
2
3alter table estate_settings add column DenyMinors tinyint not null default 0;
4
5commit;
6
diff --git a/OpenSim/Framework/EstateSettings.cs b/OpenSim/Framework/EstateSettings.cs
index 31655f4..8a00f9d 100644
--- a/OpenSim/Framework/EstateSettings.cs
+++ b/OpenSim/Framework/EstateSettings.cs
@@ -231,6 +231,14 @@ namespace OpenSim.Framework
231 set { m_EstateOwner = value; } 231 set { m_EstateOwner = value; }
232 } 232 }
233 233
234 private bool m_DenyMinors = false;
235
236 public bool DenyMinors
237 {
238 get { return m_DenyMinors; }
239 set { m_DenyMinors = value; }
240 }
241
234 // All those lists... 242 // All those lists...
235 // 243 //
236 private List<LLUUID> l_EstateManagers = new List<LLUUID>(); 244 private List<LLUUID> l_EstateManagers = new List<LLUUID>();
diff --git a/OpenSim/Framework/IClientAPI.cs b/OpenSim/Framework/IClientAPI.cs
index 18e187b..8d50c30 100644
--- a/OpenSim/Framework/IClientAPI.cs
+++ b/OpenSim/Framework/IClientAPI.cs
@@ -642,7 +642,7 @@ namespace OpenSim.Framework
642 642
643 void SendRegionInfoToEstateMenu(RegionInfoForEstateMenuArgs args); 643 void SendRegionInfoToEstateMenu(RegionInfoForEstateMenuArgs args);
644 void SendEstateCovenantInformation(LLUUID covenant); 644 void SendEstateCovenantInformation(LLUUID covenant);
645 void SendDetailedEstateData(LLUUID invoice, string estateName, uint estateID, uint parentEstate, uint estateFlags, uint sunPosition, LLUUID covenant); 645 void SendDetailedEstateData(LLUUID invoice, string estateName, uint estateID, uint parentEstate, uint estateFlags, uint sunPosition, LLUUID covenant, string abuseEmail);
646 646
647 void SendLandProperties(IClientAPI remote_client, int sequence_id, bool snap_selection, int request_result, LandData landData, float simObjectBonusFactor, int parcelObjectCapacity, int simObjectCapacity, uint regionFlags); 647 void SendLandProperties(IClientAPI remote_client, int sequence_id, bool snap_selection, int request_result, LandData landData, float simObjectBonusFactor, int parcelObjectCapacity, int simObjectCapacity, uint regionFlags);
648 void SendLandAccessListData(List<LLUUID> avatars, uint accessFlag, int localLandID); 648 void SendLandAccessListData(List<LLUUID> avatars, uint accessFlag, int localLandID);
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index 2800cc4..4e9b1ae 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -2657,15 +2657,15 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2657 this.OutPacket(einfopack, ThrottleOutPacketType.Task); 2657 this.OutPacket(einfopack, ThrottleOutPacketType.Task);
2658 } 2658 }
2659 2659
2660 public void SendDetailedEstateData(LLUUID invoice, string estateName, uint estateID, uint parentEstate, uint estateFlags, uint sunPosition, LLUUID covenant) 2660 public void SendDetailedEstateData(LLUUID invoice, string estateName, uint estateID, uint parentEstate, uint estateFlags, uint sunPosition, LLUUID covenant, string abuseEmail)
2661 { 2661 {
2662 EstateOwnerMessagePacket packet = new EstateOwnerMessagePacket(); 2662 EstateOwnerMessagePacket packet = new EstateOwnerMessagePacket();
2663 packet.MethodData.Invoice = invoice; 2663 packet.MethodData.Invoice = invoice;
2664 packet.AgentData.TransactionID = LLUUID.Random(); 2664 packet.AgentData.TransactionID = LLUUID.Random();
2665 packet.MethodData.Method = Helpers.StringToField("estateupdateinfo"); 2665 packet.MethodData.Method = Helpers.StringToField("estateupdateinfo");
2666 EstateOwnerMessagePacket.ParamListBlock[] returnblock = new EstateOwnerMessagePacket.ParamListBlock[9]; 2666 EstateOwnerMessagePacket.ParamListBlock[] returnblock = new EstateOwnerMessagePacket.ParamListBlock[10];
2667 2667
2668 for (int i = 0; i < 9; i++) 2668 for (int i = 0; i < 10; i++)
2669 { 2669 {
2670 returnblock[i] = new EstateOwnerMessagePacket.ParamListBlock(); 2670 returnblock[i] = new EstateOwnerMessagePacket.ParamListBlock();
2671 } 2671 }
@@ -2681,6 +2681,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2681 returnblock[6].Parameter = Helpers.StringToField(covenant.ToString()); 2681 returnblock[6].Parameter = Helpers.StringToField(covenant.ToString());
2682 returnblock[7].Parameter = Helpers.StringToField("1160895077"); // what is this? 2682 returnblock[7].Parameter = Helpers.StringToField("1160895077"); // what is this?
2683 returnblock[8].Parameter = Helpers.StringToField("1"); // what is this? 2683 returnblock[8].Parameter = Helpers.StringToField("1"); // what is this?
2684 returnblock[9].Parameter = Helpers.StringToField(abuseEmail);
2684 2685
2685 packet.ParamList = returnblock; 2686 packet.ParamList = returnblock;
2686 packet.Header.Reliable = false; 2687 packet.Header.Reliable = false;
diff --git a/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs b/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs
index 7ca1f3a..44f9a93 100644
--- a/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs
+++ b/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs
@@ -60,7 +60,8 @@ namespace OpenSim.Region.Environment.Modules.World.Estate
60 m_scene.RegionInfo.EstateSettings.ParentEstateID, 60 m_scene.RegionInfo.EstateSettings.ParentEstateID,
61 GetEstateFlags(), 61 GetEstateFlags(),
62 sun, 62 sun,
63 m_scene.RegionInfo.RegionSettings.Covenant); 63 m_scene.RegionInfo.RegionSettings.Covenant,
64 m_scene.RegionInfo.EstateSettings.AbuseEmail);
64 65
65 remote_client.SendEstateManagersList(invoice, 66 remote_client.SendEstateManagersList(invoice,
66 m_scene.RegionInfo.EstateSettings.EstateManagers, 67 m_scene.RegionInfo.EstateSettings.EstateManagers,
@@ -628,6 +629,11 @@ namespace OpenSim.Region.Environment.Modules.World.Estate
628 else 629 else
629 m_scene.RegionInfo.EstateSettings.DenyTransacted = false; 630 m_scene.RegionInfo.EstateSettings.DenyTransacted = false;
630 631
632 if ((parms1 & 0x40000000) != 0)
633 m_scene.RegionInfo.EstateSettings.DenyMinors = true;
634 else
635 m_scene.RegionInfo.EstateSettings.DenyMinors = false;
636
631 m_scene.RegionInfo.EstateSettings.Save(); 637 m_scene.RegionInfo.EstateSettings.Save();
632 638
633 float sun = (float)m_scene.RegionInfo.RegionSettings.SunPosition; 639 float sun = (float)m_scene.RegionInfo.RegionSettings.SunPosition;
@@ -797,6 +803,8 @@ namespace OpenSim.Region.Environment.Modules.World.Estate
797 flags |= Simulator.RegionFlags.ResetHomeOnTeleport; 803 flags |= Simulator.RegionFlags.ResetHomeOnTeleport;
798 if (m_scene.RegionInfo.EstateSettings.TaxFree) 804 if (m_scene.RegionInfo.EstateSettings.TaxFree)
799 flags |= Simulator.RegionFlags.TaxFree; 805 flags |= Simulator.RegionFlags.TaxFree;
806 if (m_scene.RegionInfo.EstateSettings.DenyMinors)
807 flags |= (Simulator.RegionFlags)(1 << 30);
800 808
801 return (uint)flags; 809 return (uint)flags;
802 } 810 }
diff --git a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
index 357e454..4c28361 100644
--- a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
+++ b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
@@ -781,7 +781,7 @@ namespace OpenSim.Region.Environment.Modules.World.NPC
781 public void SendEstateCovenantInformation(LLUUID covenant) 781 public void SendEstateCovenantInformation(LLUUID covenant)
782 { 782 {
783 } 783 }
784 public void SendDetailedEstateData(LLUUID invoice, string estateName, uint estateID, uint parentEstate, uint estateFlags, uint sunPosition, LLUUID covenant) 784 public void SendDetailedEstateData(LLUUID invoice, string estateName, uint estateID, uint parentEstate, uint estateFlags, uint sunPosition, LLUUID covenant, string abuseEmail)
785 { 785 {
786 } 786 }
787 787
diff --git a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
index b1e1854..9859dc2 100644
--- a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
+++ b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
@@ -773,7 +773,7 @@ namespace OpenSim.Region.Examples.SimpleModule
773 public void SendEstateCovenantInformation(LLUUID covenant) 773 public void SendEstateCovenantInformation(LLUUID covenant)
774 { 774 {
775 } 775 }
776 public void SendDetailedEstateData(LLUUID invoice, string estateName, uint estateID, uint parentEstate, uint estateFlags, uint sunPosition, LLUUID covenant) 776 public void SendDetailedEstateData(LLUUID invoice, string estateName, uint estateID, uint parentEstate, uint estateFlags, uint sunPosition, LLUUID covenant, string abuseEmail)
777 { 777 {
778 } 778 }
779 779