When receiving unreliable message fragments an exception is thrown in PacketIO. ReadFragmentHeader.
This seems to work as intended when sending with QoSType.Reliable, but fails with QoSType.Unreliable. Haven't tried QoSType.UnreliableOrdered. Is fragmentation not supported for unreliable packets?
To reproduce:
ReliableEndpoint endpoint1 = new ReliableEndpoint();
ReliableEndpoint endpoint2 = new ReliableEndpoint();
endpoint1.TransmitCallback = (payload, size) =>
{
endpoint2.ReceivePacket(payload, size);
};
endpoint1.ReceiveCallback = (payload, size) =>
{
Console.WriteLine("endpoint1 received {0} bytes", size);
};
endpoint2.TransmitCallback = (payload, size) =>
{
endpoint1.ReceivePacket(payload, size);
};
endpoint2.ReceiveCallback = (payload, size) =>
{
Console.WriteLine("endpoint2 received {0} bytes", size);
};
byte[] data = new byte[5120];
new Random().NextBytes(data);
endpoint1.SendMessage(data, data.Length, QosType.Unreliable);
When receiving unreliable message fragments an exception is thrown in
PacketIO. ReadFragmentHeader.This seems to work as intended when sending with
QoSType.Reliable, but fails withQoSType.Unreliable. Haven't triedQoSType.UnreliableOrdered. Is fragmentation not supported for unreliable packets?To reproduce: