aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Framework/IClientAPI.cs2
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs26
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs4
-rw-r--r--OpenSim/Region/Framework/Scenes/ScenePresence.cs10
-rw-r--r--OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs5
-rw-r--r--OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs3
-rw-r--r--OpenSim/Tests/Common/Mock/TestClient.cs3
7 files changed, 28 insertions, 25 deletions
diff --git a/OpenSim/Framework/IClientAPI.cs b/OpenSim/Framework/IClientAPI.cs
index d1f5378..4715326 100644
--- a/OpenSim/Framework/IClientAPI.cs
+++ b/OpenSim/Framework/IClientAPI.cs
@@ -710,7 +710,6 @@ namespace OpenSim.Framework
710 Vector3 StartPos { get; set; } 710 Vector3 StartPos { get; set; }
711 711
712 UUID AgentId { get; } 712 UUID AgentId { get; }
713 bool SupportObjectAnimations { get; set; }
714 713
715 /// <summary> 714 /// <summary>
716 /// The scene agent for this client. This will only be set if the client has an agent in a scene (i.e. if it 715 /// The scene agent for this client. This will only be set if the client has an agent in a scene (i.e. if it
@@ -1515,5 +1514,6 @@ namespace OpenSim.Framework
1515 void SendAgentTerseUpdate(ISceneEntity presence); 1514 void SendAgentTerseUpdate(ISceneEntity presence);
1516 1515
1517 void SendPlacesReply(UUID queryID, UUID transactionID, PlacesReplyData[] data); 1516 void SendPlacesReply(UUID queryID, UUID transactionID, PlacesReplyData[] data);
1517 void CheckViewerCaps();
1518 } 1518 }
1519} 1519}
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
index 34e3a43..9a022e6 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
@@ -26,15 +26,11 @@
26 */ 26 */
27 27
28using System; 28using System;
29using System.Collections;
30using System.Collections.Generic; 29using System.Collections.Generic;
31using System.Net; 30using System.Net;
32using System.Reflection; 31using System.Reflection;
33using System.Runtime; 32using System.Runtime;
34using System.Text;
35using System.Threading; 33using System.Threading;
36using System.Timers;
37using System.Xml;
38 34
39using log4net; 35using log4net;
40using OpenMetaverse; 36using OpenMetaverse;
@@ -48,11 +44,10 @@ using OpenSim.Framework.Monitoring;
48using OpenSim.Region.Framework.Interfaces; 44using OpenSim.Region.Framework.Interfaces;
49using OpenSim.Region.Framework.Scenes; 45using OpenSim.Region.Framework.Scenes;
50using OpenSim.Services.Interfaces; 46using OpenSim.Services.Interfaces;
51using Timer = System.Timers.Timer; 47using Caps = OpenSim.Framework.Capabilities.Caps;
48
52using AssetLandmark = OpenSim.Framework.AssetLandmark; 49using AssetLandmark = OpenSim.Framework.AssetLandmark;
53using RegionFlags = OpenMetaverse.RegionFlags; 50using RegionFlags = OpenMetaverse.RegionFlags;
54
55using System.IO;
56using PermissionMask = OpenSim.Framework.PermissionMask; 51using PermissionMask = OpenSim.Framework.PermissionMask;
57 52
58namespace OpenSim.Region.ClientStack.LindenUDP 53namespace OpenSim.Region.ClientStack.LindenUDP
@@ -351,7 +346,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
351#pragma warning restore 0414 346#pragma warning restore 0414
352 private const uint MaxTransferBytesPerPacket = 600; 347 private const uint MaxTransferBytesPerPacket = 600;
353 348
354 public bool SupportObjectAnimations { get; set; } 349 private bool m_SupportObjectAnimations;
355 350
356 /// <value> 351 /// <value>
357 /// Maintain a record of all the objects killed. This allows us to stop an update being sent from the 352 /// Maintain a record of all the objects killed. This allows us to stop an update being sent from the
@@ -3917,7 +3912,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3917 public void SendObjectAnimations(UUID[] animations, int[] seqs, UUID senderId) 3912 public void SendObjectAnimations(UUID[] animations, int[] seqs, UUID senderId)
3918 { 3913 {
3919 // m_log.DebugFormat("[LLCLIENTVIEW]: Sending Object animations for {0} to {1}", sourceAgentId, Name); 3914 // m_log.DebugFormat("[LLCLIENTVIEW]: Sending Object animations for {0} to {1}", sourceAgentId, Name);
3920 if(!SupportObjectAnimations) 3915 if(!m_SupportObjectAnimations)
3921 return; 3916 return;
3922 3917
3923 ObjectAnimationPacket ani = (ObjectAnimationPacket)PacketPool.Instance.GetPacket(PacketType.ObjectAnimation); 3918 ObjectAnimationPacket ani = (ObjectAnimationPacket)PacketPool.Instance.GetPacket(PacketType.ObjectAnimation);
@@ -4330,7 +4325,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4330 4325
4331 if (update.Entity is SceneObjectPart) 4326 if (update.Entity is SceneObjectPart)
4332 { 4327 {
4333 if (SupportObjectAnimations && updateFlags.HasFlag(PrimUpdateFlags.Animations)) 4328 if (m_SupportObjectAnimations && updateFlags.HasFlag(PrimUpdateFlags.Animations))
4334 { 4329 {
4335 SceneObjectPart sop = (SceneObjectPart)update.Entity; 4330 SceneObjectPart sop = (SceneObjectPart)update.Entity;
4336 if ( sop.Animations != null) 4331 if ( sop.Animations != null)
@@ -13540,5 +13535,16 @@ namespace OpenSim.Region.ClientStack.LindenUDP
13540 { 13535 {
13541 return new HashSet<string>(m_inPacketsToDrop); 13536 return new HashSet<string>(m_inPacketsToDrop);
13542 } 13537 }
13538
13539 public void CheckViewerCaps()
13540 {
13541 m_SupportObjectAnimations = false;
13542 if (m_scene.CapsModule != null)
13543 {
13544 Caps cap = m_scene.CapsModule.GetCapsForUser(CircuitCode);
13545 if (cap != null && (cap.Flags & Caps.CapsFlags.ObjectAnim) != 0)
13546 m_SupportObjectAnimations = true;
13547 }
13548 }
13543 } 13549 }
13544} 13550}
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
index 667acf9..5f35782 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
@@ -46,6 +46,7 @@ using OpenMetaverse;
46using Mono.Addins; 46using Mono.Addins;
47using TokenBucket = OpenSim.Region.ClientStack.LindenUDP.TokenBucket; 47using TokenBucket = OpenSim.Region.ClientStack.LindenUDP.TokenBucket;
48 48
49
49namespace OpenSim.Region.ClientStack.LindenUDP 50namespace OpenSim.Region.ClientStack.LindenUDP
50{ 51{
51 /// <summary> 52 /// <summary>
@@ -1697,8 +1698,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1697 m_pendingCache.Remove(endPoint); 1698 m_pendingCache.Remove(endPoint);
1698 } 1699 }
1699 1700
1700 m_log.DebugFormat("[LLUDPSERVER]: Client created, processing pending queue, {0} entries", queue.Count); 1701 client.CheckViewerCaps();
1701 1702
1703 m_log.DebugFormat("[LLUDPSERVER]: Client created, processing pending queue, {0} entries", queue.Count);
1702 // Reinject queued packets 1704 // Reinject queued packets
1703 while (queue.Count > 0) 1705 while (queue.Count > 0)
1704 { 1706 {
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index 527f12e..3b78f2d 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -45,7 +45,6 @@ using OpenSim.Region.PhysicsModules.SharedBase;
45using GridRegion = OpenSim.Services.Interfaces.GridRegion; 45using GridRegion = OpenSim.Services.Interfaces.GridRegion;
46using OpenSim.Services.Interfaces; 46using OpenSim.Services.Interfaces;
47using TeleportFlags = OpenSim.Framework.Constants.TeleportFlags; 47using TeleportFlags = OpenSim.Framework.Constants.TeleportFlags;
48using Caps = OpenSim.Framework.Capabilities.Caps;
49 48
50namespace OpenSim.Region.Framework.Scenes 49namespace OpenSim.Region.Framework.Scenes
51{ 50{
@@ -1111,14 +1110,6 @@ namespace OpenSim.Region.Framework.Scenes
1111 1110
1112 HealRate = 0.5f; 1111 HealRate = 0.5f;
1113 1112
1114 ControllingClient.SupportObjectAnimations = false;
1115 if (m_scene.CapsModule != null)
1116 {
1117 Caps cap = m_scene.CapsModule.GetCapsForUser(ControllingClient.CircuitCode);
1118 if (cap != null && (cap.Flags & Caps.CapsFlags.ObjectAnim) != 0)
1119 ControllingClient.SupportObjectAnimations = true;
1120 }
1121
1122 IConfig sconfig = m_scene.Config.Configs["EntityTransfer"]; 1113 IConfig sconfig = m_scene.Config.Configs["EntityTransfer"];
1123 if (sconfig != null) 1114 if (sconfig != null)
1124 { 1115 {
@@ -1142,7 +1133,6 @@ namespace OpenSim.Region.Framework.Scenes
1142 } 1133 }
1143 m_bandwidthBurst = m_bandwidth / 5; 1134 m_bandwidthBurst = m_bandwidth / 5;
1144 ControllingClient.RefreshGroupMembership(); 1135 ControllingClient.RefreshGroupMembership();
1145
1146 } 1136 }
1147 1137
1148 private float lastHealthSent = 0; 1138 private float lastHealthSent = 0;
diff --git a/OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs b/OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs
index febf995..c7b7818 100644
--- a/OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs
+++ b/OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs
@@ -60,8 +60,6 @@ namespace OpenSim.Region.OptionalModules.Agent.InternetRelayClientView.Server
60 60
61 public int PingTimeMS { get { return 0; } } 61 public int PingTimeMS { get { return 0; } }
62 62
63 public bool SupportObjectAnimations { get; set; }
64
65 private string m_username; 63 private string m_username;
66 private string m_nick; 64 private string m_nick;
67 65
@@ -1782,5 +1780,8 @@ namespace OpenSim.Region.OptionalModules.Agent.InternetRelayClientView.Server
1782 { 1780 {
1783 return 0; 1781 return 0;
1784 } 1782 }
1783
1784 public void CheckViewerCaps() { }
1785
1785 } 1786 }
1786} 1787}
diff --git a/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs b/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs
index 0984c60..0758fc9 100644
--- a/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs
+++ b/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs
@@ -73,7 +73,6 @@ namespace OpenSim.Region.OptionalModules.World.NPC
73 private UUID m_profileImage = UUID.Zero; 73 private UUID m_profileImage = UUID.Zero;
74 private string m_born; 74 private string m_born;
75 public List<uint> SelectedObjects {get; private set;} 75 public List<uint> SelectedObjects {get; private set;}
76 public bool SupportObjectAnimations { get; set; }
77 76
78 public NPCAvatar( 77 public NPCAvatar(
79 string firstname, string lastname, Vector3 position, UUID ownerID, bool senseAsAgent, Scene scene) 78 string firstname, string lastname, Vector3 position, UUID ownerID, bool senseAsAgent, Scene scene)
@@ -1392,5 +1391,7 @@ namespace OpenSim.Region.OptionalModules.World.NPC
1392 return 0; 1391 return 0;
1393 } 1392 }
1394 1393
1394 public void CheckViewerCaps() { }
1395
1395 } 1396 }
1396} 1397}
diff --git a/OpenSim/Tests/Common/Mock/TestClient.cs b/OpenSim/Tests/Common/Mock/TestClient.cs
index b0ede78..ecf3785 100644
--- a/OpenSim/Tests/Common/Mock/TestClient.cs
+++ b/OpenSim/Tests/Common/Mock/TestClient.cs
@@ -1404,5 +1404,8 @@ namespace OpenSim.Tests.Common
1404 public void SendPartPhysicsProprieties(ISceneEntity entity) 1404 public void SendPartPhysicsProprieties(ISceneEntity entity)
1405 { 1405 {
1406 } 1406 }
1407
1408 public void CheckViewerCaps() { }
1409
1407 } 1410 }
1408} 1411}