[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r33690 - gnunet/src/cadet
From: |
gnunet |
Subject: |
[GNUnet-SVN] r33690 - gnunet/src/cadet |
Date: |
Tue, 17 Jun 2014 14:13:31 +0200 |
Author: bartpolot
Date: 2014-06-17 14:13:31 +0200 (Tue, 17 Jun 2014)
New Revision: 33690
Modified:
gnunet/src/cadet/gnunet-service-cadet_tunnel.c
Log:
- limit queued messages on tunnel level when tunnel is not ready
Modified: gnunet/src/cadet/gnunet-service-cadet_tunnel.c
===================================================================
--- gnunet/src/cadet/gnunet-service-cadet_tunnel.c 2014-06-17 12:13:30 UTC
(rev 33689)
+++ gnunet/src/cadet/gnunet-service-cadet_tunnel.c 2014-06-17 12:13:31 UTC
(rev 33690)
@@ -896,6 +896,18 @@
}
+static unsigned int
+count_queued_data (const struct CadetTunnel *t)
+{
+ struct CadetTunnelDelayed *iter;
+ unsigned int count;
+
+ for (count = 0, iter = t->tq_head; iter != NULL; iter = iter->next)
+ count++;
+
+ return count;
+}
+
/**
* Delete a queued message: either was sent or the channel was destroyed
* before the tunnel's key exchange had a chance to finish.
@@ -2651,6 +2663,14 @@
struct CadetTConnection *iter;
unsigned int buffer;
+ if (GNUNET_NO == is_ready (t))
+ {
+ if (count_queued_data (t) > 3)
+ return 0;
+ else
+ return 1;
+ }
+
buffer = 0;
for (iter = t->connection_head; NULL != iter; iter = iter->next)
{
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r33690 - gnunet/src/cadet,
gnunet <=