[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Ccrtp-devel] is there a bug in sequential number wrap
From: |
Federico Montesino Pouzols |
Subject: |
Re: [Ccrtp-devel] is there a bug in sequential number wrap |
Date: |
Thu, 5 Oct 2006 11:59:16 +0200 (CEST) |
User-agent: |
SquirrelMail/1.4.5 |
Hi Yaniv, I've never seen the problem you mention, though it may have
been overlooked, after all, it's not a frequent (and in any case
transient) condition.
If there is a bug, it may be hidden in the sequence number wrapping
detection code _or_ (this is a suspicion after a fast skim of the
code) in the way getWaiting() retrieves packets from the incoming
queue.
Regarding the non-atomicity of getFirstTimestamp--getData, it may lead
to some getData calls returning NULL somewhat unexpectedly (if the
packet is removed from the queue between these two operations), but no
error should happen. In general, calling getData with a timestamp
retrieved from getFirstTimestamp does not have a 100% guarantee of
actually getting the ADU (depending on timing issues).
In order to guess why some packets are discarded, there is an easy
check you can do. If packets are being "expired" from the incoming
queue when a sequence wrap occurs, you can find it out by rewriting
the onExpireRecv virtual method.