aboutsummaryrefslogtreecommitdiff
path: root/src/fragmentation
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2012-10-23 12:59:36 +0000
committerChristian Grothoff <christian@grothoff.org>2012-10-23 12:59:36 +0000
commit8ed31afd21b25cbd0940d977a559f3c861143756 (patch)
tree6901beed4f390d61c555a32727814980aea64a8b /src/fragmentation
parentfe563bb573dcf697d9773ca44bdb2b7c27fa6826 (diff)
-hopefully fixing #2596
Diffstat (limited to 'src/fragmentation')
-rw-r--r--src/fragmentation/fragmentation.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/fragmentation/fragmentation.c b/src/fragmentation/fragmentation.c
index 2d5cf2c8ed..f859b32c70 100644
--- a/src/fragmentation/fragmentation.c
+++ b/src/fragmentation/fragmentation.c
@@ -223,7 +223,8 @@ transmit_next (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
else
delay = GNUNET_TIME_UNIT_ZERO;
delay = GNUNET_TIME_relative_max (delay,
- fc->msg_delay);
+ GNUNET_TIME_relative_multiply (fc->msg_delay,
+ (1 << fc->num_rounds)));
if (wrap)
{
/* full round transmitted wait 2x delay for ACK before going again */
@@ -462,7 +463,8 @@ GNUNET_FRAGMENT_context_destroy (struct GNUNET_FRAGMENT_Context *fc,
if (NULL != ack_delay)
*ack_delay = fc->ack_delay;
if (NULL != msg_delay)
- *msg_delay = fc->msg_delay;
+ *msg_delay = GNUNET_TIME_relative_multiply (fc->msg_delay,
+ fc->num_rounds);
GNUNET_free (fc);
}