aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs')
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs44
1 files changed, 26 insertions, 18 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
index 0388828..5b2bad4 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
@@ -822,6 +822,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
822 handshake.RegionInfo3.ProductName = Util.StringToBytes256(regionInfo.RegionType); 822 handshake.RegionInfo3.ProductName = Util.StringToBytes256(regionInfo.RegionType);
823 handshake.RegionInfo3.ProductSKU = Utils.EmptyBytes; 823 handshake.RegionInfo3.ProductSKU = Utils.EmptyBytes;
824 824
825 handshake.RegionInfo4 = new RegionHandshakePacket.RegionInfo4Block[0];
825// OutPacket(handshake, ThrottleOutPacketType.Task); 826// OutPacket(handshake, ThrottleOutPacketType.Task);
826 // use same as MoveAgentIntoRegion (both should be task ) 827 // use same as MoveAgentIntoRegion (both should be task )
827 OutPacket(handshake, ThrottleOutPacketType.Unknown); 828 OutPacket(handshake, ThrottleOutPacketType.Unknown);
@@ -3604,7 +3605,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3604 3605
3605 avp.Sender.IsTrial = false; 3606 avp.Sender.IsTrial = false;
3606 avp.Sender.ID = agentID; 3607 avp.Sender.ID = agentID;
3607 m_log.DebugFormat("[CLIENT]: Sending appearance for {0} to {1}", agentID.ToString(), AgentId.ToString()); 3608 avp.AppearanceData = new AvatarAppearancePacket.AppearanceDataBlock[0];
3609 //m_log.DebugFormat("[CLIENT]: Sending appearance for {0} to {1}", agentID.ToString(), AgentId.ToString());
3608 OutPacket(avp, ThrottleOutPacketType.Task); 3610 OutPacket(avp, ThrottleOutPacketType.Task);
3609 } 3611 }
3610 3612
@@ -3892,6 +3894,14 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3892 { 3894 {
3893 part.Shape.LightEntry = false; 3895 part.Shape.LightEntry = false;
3894 } 3896 }
3897
3898 if (part.Shape != null && (part.Shape.SculptType == (byte)SculptType.Mesh))
3899 {
3900 // Ensure that mesh has at least 8 valid faces
3901 part.Shape.ProfileBegin = 12500;
3902 part.Shape.ProfileEnd = 0;
3903 part.Shape.ProfileHollow = 27500;
3904 }
3895 } 3905 }
3896 3906
3897 if (part.Shape != null && (part.Shape.SculptType == (byte)SculptType.Mesh)) 3907 if (part.Shape != null && (part.Shape.SculptType == (byte)SculptType.Mesh))
@@ -4216,7 +4226,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4216 pack.Stat = stats.StatsBlock; 4226 pack.Stat = stats.StatsBlock;
4217 4227
4218 pack.Header.Reliable = false; 4228 pack.Header.Reliable = false;
4219 4229 pack.RegionInfo = new SimStatsPacket.RegionInfoBlock[0];
4220 OutPacket(pack, ThrottleOutPacketType.Task); 4230 OutPacket(pack, ThrottleOutPacketType.Task);
4221 } 4231 }
4222 4232
@@ -4607,7 +4617,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4607 rinfopack.AgentData = new RegionInfoPacket.AgentDataBlock(); 4617 rinfopack.AgentData = new RegionInfoPacket.AgentDataBlock();
4608 rinfopack.AgentData.AgentID = AgentId; 4618 rinfopack.AgentData.AgentID = AgentId;
4609 rinfopack.AgentData.SessionID = SessionId; 4619 rinfopack.AgentData.SessionID = SessionId;
4610 4620 rinfopack.RegionInfo3 = new RegionInfoPacket.RegionInfo3Block[0];
4611 4621
4612 OutPacket(rinfopack, ThrottleOutPacketType.Task); 4622 OutPacket(rinfopack, ThrottleOutPacketType.Task);
4613 } 4623 }
@@ -6587,19 +6597,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP
6587 #endregion 6597 #endregion
6588 6598
6589 AgentRequestSit handlerAgentRequestSit = OnAgentRequestSit; 6599 AgentRequestSit handlerAgentRequestSit = OnAgentRequestSit;
6590 if (handlerAgentRequestSit != null)
6591 if (!(agentRequestSit.AgentData == null
6592 || agentRequestSit.TargetObject == null
6593 || agentRequestSit.TargetObject.TargetID == null
6594 || agentRequestSit.TargetObject.Offset == null))
6595 {
6596 var sp = m_scene.GetScenePresence(agentRequestSit.AgentData.AgentID);
6597 if (sp == null || sp.ParentID != 0) // ignore packet if agent is already sitting
6598 return true;
6599 6600
6600 handlerAgentRequestSit(this, agentRequestSit.AgentData.AgentID, 6601 if (handlerAgentRequestSit != null)
6601 agentRequestSit.TargetObject.TargetID, agentRequestSit.TargetObject.Offset); 6602 handlerAgentRequestSit(this, agentRequestSit.AgentData.AgentID,
6602 } 6603 agentRequestSit.TargetObject.TargetID, agentRequestSit.TargetObject.Offset);
6603 } 6604 }
6604 return true; 6605 return true;
6605 } 6606 }
@@ -7205,7 +7206,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
7205 7206
7206 if (handlerUpdatePrimFlags != null) 7207 if (handlerUpdatePrimFlags != null)
7207 { 7208 {
7208 byte[] data = Pack.ToBytes(); 7209// byte[] data = Pack.ToBytes();
7209 // 46,47,48 are special positions within the packet 7210 // 46,47,48 are special positions within the packet
7210 // This may change so perhaps we need a better way 7211 // This may change so perhaps we need a better way
7211 // of storing this (OMV.FlagUpdatePacket.UsePhysics,etc?) 7212 // of storing this (OMV.FlagUpdatePacket.UsePhysics,etc?)
@@ -12254,11 +12255,13 @@ namespace OpenSim.Region.ClientStack.LindenUDP
12254 if (logPacket) 12255 if (logPacket)
12255 m_log.DebugFormat( 12256 m_log.DebugFormat(
12256 "[CLIENT]: PACKET IN from {0} ({1}) in {2} - {3}", 12257 "[CLIENT]: PACKET IN from {0} ({1}) in {2} - {3}",
12257 Name, SceneAgent.IsChildAgent ? "child" : "root ", m_scene.RegionInfo.RegionName, packet.Type); 12258 Name, SceneAgent.IsChildAgent ? "child" : "root ", Scene.Name, packet.Type);
12258 } 12259 }
12259 12260
12260 if (!ProcessPacketMethod(packet)) 12261 if (!ProcessPacketMethod(packet))
12261 m_log.Warn("[CLIENT]: unhandled packet " + packet.Type); 12262 m_log.WarnFormat(
12263 "[CLIENT]: Unhandled packet {0} from {1} ({2}) in {3}. Ignoring.",
12264 packet.Type, Name, SceneAgent.IsChildAgent ? "child" : "root ", Scene.Name);
12262 } 12265 }
12263 12266
12264 private static PrimitiveBaseShape GetShapeFromAddPacket(ObjectAddPacket addPacket) 12267 private static PrimitiveBaseShape GetShapeFromAddPacket(ObjectAddPacket addPacket)
@@ -12466,6 +12469,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP
12466 return String.Empty; 12469 return String.Empty;
12467 } 12470 }
12468 12471
12472 public OSDMap OReport(string uptime, string version)
12473 {
12474 return new OSDMap();
12475 }
12476
12469 /// <summary> 12477 /// <summary>
12470 /// Make an asset request to the asset service in response to a client request. 12478 /// Make an asset request to the asset service in response to a client request.
12471 /// </summary> 12479 /// </summary>