diff options
Diffstat (limited to 'OpenSim/Region/ClientStack')
-rw-r--r-- | OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | 65 | ||||
-rw-r--r-- | OpenSim/Region/ClientStack/LindenUDP/LLUDPClient.cs | 4 | ||||
-rw-r--r-- | OpenSim/Region/ClientStack/LindenUDP/OpenSimUDPBase.cs | 4 |
3 files changed, 43 insertions, 30 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs index db149a1..e9e1fa3 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | |||
@@ -4351,8 +4351,14 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
4351 | OutPacket(packet, ThrottleOutPacketType.Task); | 4351 | OutPacket(packet, ThrottleOutPacketType.Task); |
4352 | } | 4352 | } |
4353 | 4353 | ||
4354 | public void SendLandProperties(int sequence_id, bool snap_selection, int request_result, LandData landData, float simObjectBonusFactor, int parcelObjectCapacity, int simObjectCapacity, uint regionFlags) | 4354 | public void SendLandProperties( |
4355 | int sequence_id, bool snap_selection, int request_result, ILandObject lo, | ||
4356 | float simObjectBonusFactor, int parcelObjectCapacity, int simObjectCapacity, uint regionFlags) | ||
4355 | { | 4357 | { |
4358 | // m_log.DebugFormat("[LLCLIENTVIEW]: Sending land properties for {0} to {1}", lo.LandData.GlobalID, Name); | ||
4359 | |||
4360 | LandData landData = lo.LandData; | ||
4361 | |||
4356 | ParcelPropertiesMessage updateMessage = new ParcelPropertiesMessage(); | 4362 | ParcelPropertiesMessage updateMessage = new ParcelPropertiesMessage(); |
4357 | 4363 | ||
4358 | updateMessage.AABBMax = landData.AABBMax; | 4364 | updateMessage.AABBMax = landData.AABBMax; |
@@ -4360,15 +4366,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
4360 | updateMessage.Area = landData.Area; | 4366 | updateMessage.Area = landData.Area; |
4361 | updateMessage.AuctionID = landData.AuctionID; | 4367 | updateMessage.AuctionID = landData.AuctionID; |
4362 | updateMessage.AuthBuyerID = landData.AuthBuyerID; | 4368 | updateMessage.AuthBuyerID = landData.AuthBuyerID; |
4363 | |||
4364 | updateMessage.Bitmap = landData.Bitmap; | 4369 | updateMessage.Bitmap = landData.Bitmap; |
4365 | |||
4366 | updateMessage.Desc = landData.Description; | 4370 | updateMessage.Desc = landData.Description; |
4367 | updateMessage.Category = landData.Category; | 4371 | updateMessage.Category = landData.Category; |
4368 | updateMessage.ClaimDate = Util.ToDateTime(landData.ClaimDate); | 4372 | updateMessage.ClaimDate = Util.ToDateTime(landData.ClaimDate); |
4369 | updateMessage.ClaimPrice = landData.ClaimPrice; | 4373 | updateMessage.ClaimPrice = landData.ClaimPrice; |
4370 | updateMessage.GroupID = landData.GroupID; | 4374 | updateMessage.GroupID = landData.GroupID; |
4371 | updateMessage.GroupPrims = landData.GroupPrims; | ||
4372 | updateMessage.IsGroupOwned = landData.IsGroupOwned; | 4375 | updateMessage.IsGroupOwned = landData.IsGroupOwned; |
4373 | updateMessage.LandingType = (LandingType) landData.LandingType; | 4376 | updateMessage.LandingType = (LandingType) landData.LandingType; |
4374 | updateMessage.LocalID = landData.LocalID; | 4377 | updateMessage.LocalID = landData.LocalID; |
@@ -4389,9 +4392,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
4389 | updateMessage.Name = landData.Name; | 4392 | updateMessage.Name = landData.Name; |
4390 | updateMessage.OtherCleanTime = landData.OtherCleanTime; | 4393 | updateMessage.OtherCleanTime = landData.OtherCleanTime; |
4391 | updateMessage.OtherCount = 0; //TODO: Unimplemented | 4394 | updateMessage.OtherCount = 0; //TODO: Unimplemented |
4392 | updateMessage.OtherPrims = landData.OtherPrims; | 4395 | updateMessage.OwnerID = landData.OwnerID; |
4393 | updateMessage.OwnerID = landData.OwnerID; | ||
4394 | updateMessage.OwnerPrims = landData.OwnerPrims; | ||
4395 | updateMessage.ParcelFlags = (ParcelFlags) landData.Flags; | 4396 | updateMessage.ParcelFlags = (ParcelFlags) landData.Flags; |
4396 | updateMessage.ParcelPrimBonus = simObjectBonusFactor; | 4397 | updateMessage.ParcelPrimBonus = simObjectBonusFactor; |
4397 | updateMessage.PassHours = landData.PassHours; | 4398 | updateMessage.PassHours = landData.PassHours; |
@@ -4406,10 +4407,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
4406 | 4407 | ||
4407 | updateMessage.RentPrice = 0; | 4408 | updateMessage.RentPrice = 0; |
4408 | updateMessage.RequestResult = (ParcelResult) request_result; | 4409 | updateMessage.RequestResult = (ParcelResult) request_result; |
4409 | updateMessage.SalePrice = landData.SalePrice; | 4410 | updateMessage.SalePrice = landData.SalePrice; |
4410 | updateMessage.SelectedPrims = landData.SelectedPrims; | ||
4411 | updateMessage.SelfCount = 0; //TODO: Unimplemented | 4411 | updateMessage.SelfCount = 0; //TODO: Unimplemented |
4412 | updateMessage.SequenceID = sequence_id; | 4412 | updateMessage.SequenceID = sequence_id; |
4413 | |||
4413 | if (landData.SimwideArea > 0) | 4414 | if (landData.SimwideArea > 0) |
4414 | { | 4415 | { |
4415 | int simulatorCapacity = (int)(((float)landData.SimwideArea / 65536.0f) * (float)m_scene.RegionInfo.ObjectCapacity * (float)m_scene.RegionInfo.RegionSettings.ObjectBonus); | 4416 | int simulatorCapacity = (int)(((float)landData.SimwideArea / 65536.0f) * (float)m_scene.RegionInfo.ObjectCapacity * (float)m_scene.RegionInfo.RegionSettings.ObjectBonus); |
@@ -4419,22 +4420,28 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
4419 | { | 4420 | { |
4420 | updateMessage.SimWideMaxPrims = 0; | 4421 | updateMessage.SimWideMaxPrims = 0; |
4421 | } | 4422 | } |
4422 | updateMessage.SimWideTotalPrims = landData.SimwidePrims; | 4423 | |
4423 | updateMessage.SnapSelection = snap_selection; | 4424 | updateMessage.SnapSelection = snap_selection; |
4424 | updateMessage.SnapshotID = landData.SnapshotID; | 4425 | updateMessage.SnapshotID = landData.SnapshotID; |
4425 | updateMessage.Status = (ParcelStatus) landData.Status; | 4426 | updateMessage.Status = (ParcelStatus) landData.Status; |
4426 | updateMessage.TotalPrims = landData.OwnerPrims + landData.GroupPrims + landData.OtherPrims + | 4427 | updateMessage.UserLocation = landData.UserLocation; |
4427 | landData.SelectedPrims; | 4428 | updateMessage.UserLookAt = landData.UserLookAt; |
4428 | updateMessage.UserLocation = landData.UserLocation; | 4429 | |
4429 | updateMessage.UserLookAt = landData.UserLookAt; | 4430 | updateMessage.MediaType = landData.MediaType; |
4430 | 4431 | updateMessage.MediaDesc = landData.MediaDescription; | |
4431 | updateMessage.MediaType = landData.MediaType; | 4432 | updateMessage.MediaWidth = landData.MediaWidth; |
4432 | updateMessage.MediaDesc = landData.MediaDescription; | 4433 | updateMessage.MediaHeight = landData.MediaHeight; |
4433 | updateMessage.MediaWidth = landData.MediaWidth; | 4434 | updateMessage.MediaLoop = landData.MediaLoop; |
4434 | updateMessage.MediaHeight = landData.MediaHeight; | 4435 | updateMessage.ObscureMusic = landData.ObscureMusic; |
4435 | updateMessage.MediaLoop = landData.MediaLoop; | 4436 | updateMessage.ObscureMedia = landData.ObscureMedia; |
4436 | updateMessage.ObscureMusic = landData.ObscureMusic; | 4437 | |
4437 | updateMessage.ObscureMedia = landData.ObscureMedia; | 4438 | IPrimCounts pc = lo.PrimCounts; |
4439 | updateMessage.OwnerPrims = pc.Owner; | ||
4440 | updateMessage.GroupPrims = pc.Group; | ||
4441 | updateMessage.OtherPrims = pc.Others; | ||
4442 | updateMessage.SelectedPrims = pc.Selected; | ||
4443 | updateMessage.TotalPrims = pc.Total; | ||
4444 | updateMessage.SimWideTotalPrims = pc.Simulator; | ||
4438 | 4445 | ||
4439 | try | 4446 | try |
4440 | { | 4447 | { |
@@ -4442,13 +4449,15 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
4442 | if (eq != null) | 4449 | if (eq != null) |
4443 | { | 4450 | { |
4444 | eq.ParcelProperties(updateMessage, this.AgentId); | 4451 | eq.ParcelProperties(updateMessage, this.AgentId); |
4445 | } else { | 4452 | } |
4446 | m_log.Warn("No EQ Interface when sending parcel data."); | 4453 | else |
4454 | { | ||
4455 | m_log.Warn("[LLCLIENTVIEW]: No EQ Interface when sending parcel data."); | ||
4447 | } | 4456 | } |
4448 | } | 4457 | } |
4449 | catch (Exception ex) | 4458 | catch (Exception ex) |
4450 | { | 4459 | { |
4451 | m_log.Error("Unable to send parcel data via eventqueue - exception: " + ex.ToString()); | 4460 | m_log.Error("[LLCLIENTVIEW]: Unable to send parcel data via eventqueue - exception: " + ex.ToString()); |
4452 | } | 4461 | } |
4453 | } | 4462 | } |
4454 | 4463 | ||
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLUDPClient.cs b/OpenSim/Region/ClientStack/LindenUDP/LLUDPClient.cs index 65a8fe3..9a8bfd3 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLUDPClient.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLUDPClient.cs | |||
@@ -149,7 +149,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
149 | /// <summary>Caches packed throttle information</summary> | 149 | /// <summary>Caches packed throttle information</summary> |
150 | private byte[] m_packedThrottles; | 150 | private byte[] m_packedThrottles; |
151 | 151 | ||
152 | private int m_defaultRTO = 3000; | 152 | private int m_defaultRTO = 1000; // 1sec is the recommendation in the RFC |
153 | private int m_maxRTO = 60000; | 153 | private int m_maxRTO = 60000; |
154 | 154 | ||
155 | /// <summary> | 155 | /// <summary> |
@@ -557,7 +557,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
557 | int rto = (int)(SRTT + Math.Max(m_udpServer.TickCountResolution, K * RTTVAR)); | 557 | int rto = (int)(SRTT + Math.Max(m_udpServer.TickCountResolution, K * RTTVAR)); |
558 | 558 | ||
559 | // Clamp the retransmission timeout to manageable values | 559 | // Clamp the retransmission timeout to manageable values |
560 | rto = Utils.Clamp(RTO, m_defaultRTO, m_maxRTO); | 560 | rto = Utils.Clamp(rto, m_defaultRTO, m_maxRTO); |
561 | 561 | ||
562 | RTO = rto; | 562 | RTO = rto; |
563 | 563 | ||
diff --git a/OpenSim/Region/ClientStack/LindenUDP/OpenSimUDPBase.cs b/OpenSim/Region/ClientStack/LindenUDP/OpenSimUDPBase.cs index d2779ba..6eebd9d 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/OpenSimUDPBase.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/OpenSimUDPBase.cs | |||
@@ -100,6 +100,10 @@ namespace OpenMetaverse | |||
100 | const int SIO_UDP_CONNRESET = -1744830452; | 100 | const int SIO_UDP_CONNRESET = -1744830452; |
101 | 101 | ||
102 | IPEndPoint ipep = new IPEndPoint(m_localBindAddress, m_udpPort); | 102 | IPEndPoint ipep = new IPEndPoint(m_localBindAddress, m_udpPort); |
103 | |||
104 | m_log.DebugFormat( | ||
105 | "[UDPBASE]: Binding UDP listener using internal IP address config {0}:{1}", | ||
106 | ipep.Address, ipep.Port); | ||
103 | 107 | ||
104 | m_udpSocket = new Socket( | 108 | m_udpSocket = new Socket( |
105 | AddressFamily.InterNetwork, | 109 | AddressFamily.InterNetwork, |