lludp fix max packet size on ack appends
parent
343239c7c3
commit
7b55d42b11
|
@ -256,6 +256,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||||
|
|
||||||
/// <summary>Maximum transmission unit, or UDP packet size, for the LLUDP protocol</summary>
|
/// <summary>Maximum transmission unit, or UDP packet size, for the LLUDP protocol</summary>
|
||||||
public const int MTU = 1400;
|
public const int MTU = 1400;
|
||||||
|
public const int MAXPAYLOAD = 1250;
|
||||||
|
|
||||||
/// <summary>Number of forced client logouts due to no receipt of packets before timeout.</summary>
|
/// <summary>Number of forced client logouts due to no receipt of packets before timeout.</summary>
|
||||||
public int ClientLogoutsDueToNoReceives { get; protected set; }
|
public int ClientLogoutsDueToNoReceives { get; protected set; }
|
||||||
|
@ -1150,7 +1151,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||||
// no more ACKs to append
|
// no more ACKs to append
|
||||||
int ackCount = 0;
|
int ackCount = 0;
|
||||||
uint ack;
|
uint ack;
|
||||||
while (dataLength + 5 < buffer.Data.Length && ackCount < 256 && udpClient.PendingAcks.Dequeue(out ack))
|
while (dataLength + 5 < MTU && ackCount < 256 && udpClient.PendingAcks.Dequeue(out ack))
|
||||||
{
|
{
|
||||||
Utils.UIntToBytesBig(ack, buffer.Data, dataLength);
|
Utils.UIntToBytesBig(ack, buffer.Data, dataLength);
|
||||||
dataLength += 4;
|
dataLength += 4;
|
||||||
|
|
Loading…
Reference in New Issue