|
From: | Eli Burke |
Subject: | [Linphone-developers] patch to fix ZRTP sequence number handling |
Date: | Tue, 30 Apr 2013 12:46:12 -0400 |
Attached is a patch to oRTP that fixes incorrect handling of ZRTP sequence numbers. We encountered a consistent error when connecting between Linphone and Groundwire using ZRTP (note: compatibility with Groundwire requires my previously submitted zrtp-hash patch). Bug details: Linphone sends ZrtpHello and receives Groundwire's ZrtpHelloAck, followed by ZrtpHello with a lower sequence number. This packet gets dropped with the error "Discarding received out of order zrtp packet:..." and Linphone never completes the ZRTP handshake. Though you may conclude that Groundwire is misbehaving, it is in fact in compliance with the RFC, which simply says: The Sequence Number is a count that is incremented for each ZRTP packet sent. The count is initialized to a random value. This is useful in estimating ZRTP packet loss and also detecting when ZRTP packets arrive out of sequence. I have confirmed with Werner Dittmann (author of ZrtpCpp) that the sequence number is only intended for diagnostic purposes and not for enforcing any kind of packet ordering. |
ortp_zrtp_sequence_patch.txt
Description: Text document
[Prev in Thread] | Current Thread | [Next in Thread] |