aboutsummaryrefslogtreecommitdiff
path: root/src/fragmentation
diff options
context:
space:
mode:
authorgrothoff <grothoff@140774ce-b5e7-0310-ab8b-a85725594a96>2011-11-17 14:47:41 +0000
committergrothoff <grothoff@140774ce-b5e7-0310-ab8b-a85725594a96>2011-11-17 14:47:41 +0000
commit539614bf011faa5b00f2b62c5e99b115a494e28a (patch)
treee3d29a362c8ed01a0a204a067cded22148179e15 /src/fragmentation
parent5095866c39b43503254e3f167198f5439aca04d4 (diff)
only use good acks for delay calculation
git-svn-id: https://gnunet.org/svn/gnunet@18185 140774ce-b5e7-0310-ab8b-a85725594a96
Diffstat (limited to 'src/fragmentation')
-rw-r--r--src/fragmentation/fragmentation.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/fragmentation/fragmentation.c b/src/fragmentation/fragmentation.c
index 47b8a1929a..c7207cb12e 100644
--- a/src/fragmentation/fragmentation.c
+++ b/src/fragmentation/fragmentation.c
@@ -324,7 +324,8 @@ GNUNET_FRAGMENT_process_ack (struct GNUNET_FRAGMENT_Context *fc,
if (ntohl (fa->fragment_id) != fc->fragment_id)
return GNUNET_SYSERR; /* not our ACK */
abits = GNUNET_ntohll (fa->bits);
- if (GNUNET_YES == fc->wack)
+ if ( (GNUNET_YES == fc->wack) &&
+ (abits == (fc->acks & abits)) )
{
/* normal ACK, can update running average of delay... */
fc->wack = GNUNET_NO;