aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/LindenUDP
diff options
context:
space:
mode:
authorTeravus Ovares2008-05-10 10:28:49 +0000
committerTeravus Ovares2008-05-10 10:28:49 +0000
commite8478dadc87586aaed173f60c44bc5ee2722d9dd (patch)
tree71b5fdd25c0ba50c595dfe7e9d1f017d68277988 /OpenSim/Region/ClientStack/LindenUDP
parent* Resolve mantis 1182. Doesn't actually implement llGiveInventoryList - mere... (diff)
downloadopensim-SC-e8478dadc87586aaed173f60c44bc5ee2722d9dd.zip
opensim-SC-e8478dadc87586aaed173f60c44bc5ee2722d9dd.tar.gz
opensim-SC-e8478dadc87586aaed173f60c44bc5ee2722d9dd.tar.bz2
opensim-SC-e8478dadc87586aaed173f60c44bc5ee2722d9dd.tar.xz
* Experiment in Zerocoding.
Diffstat (limited to 'OpenSim/Region/ClientStack/LindenUDP')
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs38
1 files changed, 27 insertions, 11 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index 1694efb..2dac62d 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -1007,6 +1007,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1007 patches[0] = patchx + 0 + patchy * 16; 1007 patches[0] = patchx + 0 + patchy * 16;
1008 1008
1009 Packet layerpack = LLClientView.TerrainManager.CreateLandPacket(map, patches); 1009 Packet layerpack = LLClientView.TerrainManager.CreateLandPacket(map, patches);
1010 layerpack.Header.Zerocoded = true;
1010 OutPacket(layerpack, ThrottleOutPacketType.Land); 1011 OutPacket(layerpack, ThrottleOutPacketType.Land);
1011 } 1012 }
1012 catch (Exception e) 1013 catch (Exception e)
@@ -1230,6 +1231,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1230 kill.ObjectData[0] = new KillObjectPacket.ObjectDataBlock(); 1231 kill.ObjectData[0] = new KillObjectPacket.ObjectDataBlock();
1231 kill.ObjectData[0].ID = localID; 1232 kill.ObjectData[0].ID = localID;
1232 kill.Header.Reliable = false; 1233 kill.Header.Reliable = false;
1234 kill.Header.Zerocoded = true;
1233 OutPacket(kill, ThrottleOutPacketType.Task); 1235 OutPacket(kill, ThrottleOutPacketType.Task);
1234 } 1236 }
1235 1237
@@ -1329,6 +1331,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1329 count++; 1331 count++;
1330 if (i == MAX_ITEMS_PER_PACKET) 1332 if (i == MAX_ITEMS_PER_PACKET)
1331 { 1333 {
1334 descend.Header.Zerocoded = true;
1332 OutPacket(descend, ThrottleOutPacketType.Asset); 1335 OutPacket(descend, ThrottleOutPacketType.Asset);
1333 1336
1334 if ((items.Count - count) > 0) 1337 if ((items.Count - count) > 0)
@@ -1351,6 +1354,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1351 1354
1352 if (i < MAX_ITEMS_PER_PACKET) 1355 if (i < MAX_ITEMS_PER_PACKET)
1353 { 1356 {
1357
1354 OutPacket(descend, ThrottleOutPacketType.Asset); 1358 OutPacket(descend, ThrottleOutPacketType.Asset);
1355 } 1359 }
1356 } 1360 }
@@ -1359,7 +1363,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1359 if (fetchFolders) 1363 if (fetchFolders)
1360 { 1364 {
1361 InventoryDescendentsPacket descend = CreateInventoryDescendentsPacket(ownerID, folderID); 1365 InventoryDescendentsPacket descend = CreateInventoryDescendentsPacket(ownerID, folderID);
1362 1366
1363 if (folders.Count < MAX_ITEMS_PER_PACKET) 1367 if (folders.Count < MAX_ITEMS_PER_PACKET)
1364 { 1368 {
1365 descend.FolderData = new InventoryDescendentsPacket.FolderDataBlock[folders.Count]; 1369 descend.FolderData = new InventoryDescendentsPacket.FolderDataBlock[folders.Count];
@@ -1424,6 +1428,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1424 private InventoryDescendentsPacket CreateInventoryDescendentsPacket(LLUUID ownerID, LLUUID folderID) 1428 private InventoryDescendentsPacket CreateInventoryDescendentsPacket(LLUUID ownerID, LLUUID folderID)
1425 { 1429 {
1426 InventoryDescendentsPacket descend = (InventoryDescendentsPacket)PacketPool.Instance.GetPacket(PacketType.InventoryDescendents); 1430 InventoryDescendentsPacket descend = (InventoryDescendentsPacket)PacketPool.Instance.GetPacket(PacketType.InventoryDescendents);
1431 descend.Header.Zerocoded = true;
1427 descend.AgentData.AgentID = AgentId; 1432 descend.AgentData.AgentID = AgentId;
1428 descend.AgentData.OwnerID = ownerID; 1433 descend.AgentData.OwnerID = ownerID;
1429 descend.AgentData.FolderID = folderID; 1434 descend.AgentData.FolderID = folderID;
@@ -1472,7 +1477,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1472 inventoryReply.InventoryData[0].ItemID, inventoryReply.InventoryData[0].FolderID, 1477 inventoryReply.InventoryData[0].ItemID, inventoryReply.InventoryData[0].FolderID,
1473 FULL_MASK_PERMISSIONS, 1, FULL_MASK_PERMISSIONS, FULL_MASK_PERMISSIONS, 1478 FULL_MASK_PERMISSIONS, 1, FULL_MASK_PERMISSIONS, FULL_MASK_PERMISSIONS,
1474 FULL_MASK_PERMISSIONS); 1479 FULL_MASK_PERMISSIONS);
1475 1480 inventoryReply.Header.Zerocoded = true;
1476 OutPacket(inventoryReply, ThrottleOutPacketType.Asset); 1481 OutPacket(inventoryReply, ThrottleOutPacketType.Asset);
1477 } 1482 }
1478 1483
@@ -1527,7 +1532,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1527 bulkUpdate.ItemData[0].ItemID, bulkUpdate.ItemData[0].FolderID, 1532 bulkUpdate.ItemData[0].ItemID, bulkUpdate.ItemData[0].FolderID,
1528 FULL_MASK_PERMISSIONS, 1, FULL_MASK_PERMISSIONS, FULL_MASK_PERMISSIONS, 1533 FULL_MASK_PERMISSIONS, 1, FULL_MASK_PERMISSIONS, FULL_MASK_PERMISSIONS,
1529 FULL_MASK_PERMISSIONS); 1534 FULL_MASK_PERMISSIONS);
1530 1535 bulkUpdate.Header.Zerocoded = true;
1531 OutPacket(bulkUpdate, ThrottleOutPacketType.Asset); 1536 OutPacket(bulkUpdate, ThrottleOutPacketType.Asset);
1532 } 1537 }
1533 1538
@@ -1575,7 +1580,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1575 InventoryReply.InventoryData[0].ItemID, InventoryReply.InventoryData[0].FolderID, 1580 InventoryReply.InventoryData[0].ItemID, InventoryReply.InventoryData[0].FolderID,
1576 FULL_MASK_PERMISSIONS, 1, FULL_MASK_PERMISSIONS, FULL_MASK_PERMISSIONS, 1581 FULL_MASK_PERMISSIONS, 1, FULL_MASK_PERMISSIONS, FULL_MASK_PERMISSIONS,
1577 FULL_MASK_PERMISSIONS); 1582 FULL_MASK_PERMISSIONS);
1578 1583 InventoryReply.Header.Zerocoded = true;
1579 OutPacket(InventoryReply, ThrottleOutPacketType.Asset); 1584 OutPacket(InventoryReply, ThrottleOutPacketType.Asset);
1580 } 1585 }
1581 1586
@@ -1588,7 +1593,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1588 remove.InventoryData = new RemoveInventoryItemPacket.InventoryDataBlock[1]; 1593 remove.InventoryData = new RemoveInventoryItemPacket.InventoryDataBlock[1];
1589 remove.InventoryData[0] = new RemoveInventoryItemPacket.InventoryDataBlock(); 1594 remove.InventoryData[0] = new RemoveInventoryItemPacket.InventoryDataBlock();
1590 remove.InventoryData[0].ItemID = itemID; 1595 remove.InventoryData[0].ItemID = itemID;
1591 1596 remove.Header.Zerocoded = true;
1592 OutPacket(remove, ThrottleOutPacketType.Asset); 1597 OutPacket(remove, ThrottleOutPacketType.Asset);
1593 } 1598 }
1594 1599
@@ -1754,6 +1759,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1754 preSound.DataBlock[0].ObjectID = objectID; 1759 preSound.DataBlock[0].ObjectID = objectID;
1755 preSound.DataBlock[0].OwnerID = ownerID; 1760 preSound.DataBlock[0].OwnerID = ownerID;
1756 preSound.DataBlock[0].SoundID = soundID; 1761 preSound.DataBlock[0].SoundID = soundID;
1762 preSound.Header.Zerocoded = true;
1757 OutPacket(preSound, ThrottleOutPacketType.Task); 1763 OutPacket(preSound, ThrottleOutPacketType.Task);
1758 } 1764 }
1759 1765
@@ -1765,7 +1771,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1765 sound.DataBlock.OwnerID = ownerID; 1771 sound.DataBlock.OwnerID = ownerID;
1766 sound.DataBlock.Gain = gain; 1772 sound.DataBlock.Gain = gain;
1767 sound.DataBlock.Flags = flags; 1773 sound.DataBlock.Flags = flags;
1768 1774
1769 OutPacket(sound, ThrottleOutPacketType.Task); 1775 OutPacket(sound, ThrottleOutPacketType.Task);
1770 } 1776 }
1771 1777
@@ -1802,6 +1808,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1802 viewertime.TimeInfo.SecPerYear = SecondsPerYear; 1808 viewertime.TimeInfo.SecPerYear = SecondsPerYear;
1803 viewertime.TimeInfo.SunPhase = OrbitalPosition; 1809 viewertime.TimeInfo.SunPhase = OrbitalPosition;
1804 viewertime.Header.Reliable = false; 1810 viewertime.Header.Reliable = false;
1811 viewertime.Header.Zerocoded = true;
1805 OutPacket(viewertime, ThrottleOutPacketType.Task); 1812 OutPacket(viewertime, ThrottleOutPacketType.Task);
1806 } 1813 }
1807 1814
@@ -1991,7 +1998,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1991 LLVector3 pos2 = new LLVector3((float)Pos.X, (float)Pos.Y, (float)Pos.Z); 1998 LLVector3 pos2 = new LLVector3((float)Pos.X, (float)Pos.Y, (float)Pos.Z);
1992 byte[] pb = pos2.GetBytes(); 1999 byte[] pb = pos2.GetBytes();
1993 Array.Copy(pb, 0, objupdate.ObjectData[0].ObjectData, 16, pb.Length); 2000 Array.Copy(pb, 0, objupdate.ObjectData[0].ObjectData, 16, pb.Length);
1994 2001 objupdate.Header.Zerocoded = true;
1995 OutPacket(objupdate, ThrottleOutPacketType.Task); 2002 OutPacket(objupdate, ThrottleOutPacketType.Task);
1996 } 2003 }
1997 2004
@@ -2017,7 +2024,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2017 2024
2018 terse.Header.Reliable = false; 2025 terse.Header.Reliable = false;
2019 2026
2020 2027 terse.Header.Zerocoded = true;
2021 OutPacket(terse, ThrottleOutPacketType.Task); 2028 OutPacket(terse, ThrottleOutPacketType.Task);
2022 } 2029 }
2023 2030
@@ -2042,6 +2049,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2042 ib.Prey = -1; 2049 ib.Prey = -1;
2043 loc.Index = ib; 2050 loc.Index = ib;
2044 loc.Header.Reliable = false; 2051 loc.Header.Reliable = false;
2052 loc.Header.Zerocoded = true;
2045 OutPacket(loc, ThrottleOutPacketType.Task); 2053 OutPacket(loc, ThrottleOutPacketType.Task);
2046 } 2054 }
2047 2055
@@ -2068,7 +2076,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2068 attach.ObjectData[0] = new ObjectAttachPacket.ObjectDataBlock(); 2076 attach.ObjectData[0] = new ObjectAttachPacket.ObjectDataBlock();
2069 attach.ObjectData[0].ObjectLocalID = localID; 2077 attach.ObjectData[0].ObjectLocalID = localID;
2070 attach.ObjectData[0].Rotation = rotation; 2078 attach.ObjectData[0].Rotation = rotation;
2071 2079 attach.Header.Zerocoded = true;
2072 OutPacket(attach, ThrottleOutPacketType.Task); 2080 OutPacket(attach, ThrottleOutPacketType.Task);
2073 } 2081 }
2074 2082
@@ -2153,7 +2161,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2153 { 2161 {
2154 outPacket.ObjectData[0].TextureAnim = textureanim; 2162 outPacket.ObjectData[0].TextureAnim = textureanim;
2155 } 2163 }
2156 2164 outPacket.Header.Zerocoded = true;
2157 OutPacket(outPacket, ThrottleOutPacketType.Task); 2165 OutPacket(outPacket, ThrottleOutPacketType.Task);
2158 } 2166 }
2159 2167
@@ -2175,6 +2183,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2175 terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1]; 2183 terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1];
2176 terse.ObjectData[0] = CreatePrimImprovedBlock(localID, position, rotation, velocity, rotationalvelocity, state); // AssetID should fall into here probably somehow... 2184 terse.ObjectData[0] = CreatePrimImprovedBlock(localID, position, rotation, velocity, rotationalvelocity, state); // AssetID should fall into here probably somehow...
2177 terse.Header.Reliable = false; 2185 terse.Header.Reliable = false;
2186 terse.Header.Zerocoded = true;
2178 OutPacket(terse, ThrottleOutPacketType.Task); 2187 OutPacket(terse, ThrottleOutPacketType.Task);
2179 } 2188 }
2180 2189
@@ -2188,6 +2197,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2188 terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1]; 2197 terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1];
2189 terse.ObjectData[0] = CreatePrimImprovedBlock(localID, position, rotation, velocity, rotationalvelocity, 0); 2198 terse.ObjectData[0] = CreatePrimImprovedBlock(localID, position, rotation, velocity, rotationalvelocity, 0);
2190 terse.Header.Reliable = false; 2199 terse.Header.Reliable = false;
2200 terse.Header.Zerocoded = true;
2191 OutPacket(terse, ThrottleOutPacketType.Task); 2201 OutPacket(terse, ThrottleOutPacketType.Task);
2192 } 2202 }
2193 2203
@@ -2320,6 +2330,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2320 packet = (ParcelOverlayPacket)PacketPool.Instance.GetPacket(PacketType.ParcelOverlay); 2330 packet = (ParcelOverlayPacket)PacketPool.Instance.GetPacket(PacketType.ParcelOverlay);
2321 packet.ParcelData.Data = data; 2331 packet.ParcelData.Data = data;
2322 packet.ParcelData.SequenceID = sequence_id; 2332 packet.ParcelData.SequenceID = sequence_id;
2333 packet.Header.Zerocoded = true;
2323 this.OutPacket(packet, ThrottleOutPacketType.Task); 2334 this.OutPacket(packet, ThrottleOutPacketType.Task);
2324 } 2335 }
2325 public void sendLandProperties(IClientAPI remote_client,int sequence_id, bool snap_selection, int request_result, LandData landData, float simObjectBonusFactor, int simObjectCapacity, uint regionFlags) 2336 public void sendLandProperties(IClientAPI remote_client,int sequence_id, bool snap_selection, int request_result, LandData landData, float simObjectBonusFactor, int simObjectCapacity, uint regionFlags)
@@ -2405,6 +2416,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2405 landData.selectedPrims; 2416 landData.selectedPrims;
2406 updatePacket.ParcelData.UserLocation = landData.userLocation; 2417 updatePacket.ParcelData.UserLocation = landData.userLocation;
2407 updatePacket.ParcelData.UserLookAt = landData.userLookAt; 2418 updatePacket.ParcelData.UserLookAt = landData.userLookAt;
2419 updatePacket.Header.Zerocoded = true;
2408 remote_client.OutPacket((Packet) updatePacket, ThrottleOutPacketType.Task); 2420 remote_client.OutPacket((Packet) updatePacket, ThrottleOutPacketType.Task);
2409 } 2421 }
2410 2422
@@ -2426,6 +2438,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2426 } 2438 }
2427 2439
2428 replyPacket.List = list.ToArray(); 2440 replyPacket.List = list.ToArray();
2441 replyPacket.Header.Zerocoded = true;
2429 this.OutPacket((Packet)replyPacket, ThrottleOutPacketType.Task); 2442 this.OutPacket((Packet)replyPacket, ThrottleOutPacketType.Task);
2430 } 2443 }
2431 2444
@@ -2464,6 +2477,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2464 ObjectIDs.RemoveAt(0); 2477 ObjectIDs.RemoveAt(0);
2465 } 2478 }
2466 pack.Data = data; 2479 pack.Data = data;
2480 pack.Header.Zerocoded = true;
2467 this.OutPacket((Packet)pack, ThrottleOutPacketType.Task); 2481 this.OutPacket((Packet)pack, ThrottleOutPacketType.Task);
2468 } 2482 }
2469 } 2483 }
@@ -2508,7 +2522,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2508 2522
2509 pack.Data = dataBlock; 2523 pack.Data = dataBlock;
2510 } 2524 }
2511 2525 pack.Header.Zerocoded = true;
2512 this.OutPacket(pack, ThrottleOutPacketType.Task); 2526 this.OutPacket(pack, ThrottleOutPacketType.Task);
2513 } 2527 }
2514 2528
@@ -3001,6 +3015,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3001 3015
3002 // Temporarily throw these packets on to the wind queue, so we can identify whether these 3016 // Temporarily throw these packets on to the wind queue, so we can identify whether these
3003 // are somehow the source of the packet bloat. 3017 // are somehow the source of the packet bloat.
3018 cachedresp.Header.Zerocoded = true;
3004 OutPacket(cachedresp, ThrottleOutPacketType.Wind); 3019 OutPacket(cachedresp, ThrottleOutPacketType.Wind);
3005 return true; 3020 return true;
3006 } 3021 }
@@ -3203,6 +3218,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3203 mapReply.LayerData[0].Top = 30000; 3218 mapReply.LayerData[0].Top = 30000;
3204 mapReply.LayerData[0].Right = 30000; 3219 mapReply.LayerData[0].Right = 30000;
3205 mapReply.LayerData[0].ImageID = new LLUUID("00000000-0000-1111-9999-000000000006"); 3220 mapReply.LayerData[0].ImageID = new LLUUID("00000000-0000-1111-9999-000000000006");
3221 mapReply.Header.Zerocoded = true;
3206 OutPacket(mapReply, ThrottleOutPacketType.Land); 3222 OutPacket(mapReply, ThrottleOutPacketType.Land);
3207 } 3223 }
3208 3224