Merge pull request #705 from pille/E1.31-fix-OOS

fix out-of-sync detection on E1.31 packets
This commit is contained in:
Aircoookie 2020-02-22 19:13:34 +01:00 committed by GitHub
commit 027a16a39b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -91,13 +91,12 @@ void handleE131Packet(e131_packet_t* p, IPAddress clientIP){
//E1.31 protocol support //E1.31 protocol support
// skip out-of-sequence packets // skip out-of-sequence packets
if (p->sequence_number < e131LastSequenceNumber && p->sequence_number - e131LastSequenceNumber > -20){ if (p->sequence_number < e131LastSequenceNumber && p->sequence_number > 20 && e131LastSequenceNumber < 250){
DEBUG_PRINT("skipping E1.31 frame (last seq="); DEBUG_PRINT("skipping E1.31 frame (last seq=");
DEBUG_PRINT(e131LastSequenceNumber); DEBUG_PRINT(e131LastSequenceNumber);
DEBUG_PRINT(", current seq="); DEBUG_PRINT(", current seq=");
DEBUG_PRINT(p->sequence_number); DEBUG_PRINT(p->sequence_number);
DEBUG_PRINTLN(")"); DEBUG_PRINTLN(")");
e131LastSequenceNumber = p->sequence_number;
return; return;
} }
e131LastSequenceNumber = p->sequence_number; e131LastSequenceNumber = p->sequence_number;