[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r36076 - gnunet/src/cadet
From: |
gnunet |
Subject: |
[GNUnet-SVN] r36076 - gnunet/src/cadet |
Date: |
Wed, 15 Jul 2015 13:45:12 +0200 |
Author: bartpolot
Date: 2015-07-15 13:45:12 +0200 (Wed, 15 Jul 2015)
New Revision: 36076
Modified:
gnunet/src/cadet/gnunet-service-cadet_tunnel.c
Log:
- let one keepalive be queued at shutdown
Modified: gnunet/src/cadet/gnunet-service-cadet_tunnel.c
===================================================================
--- gnunet/src/cadet/gnunet-service-cadet_tunnel.c 2015-07-15 11:45:11 UTC
(rev 36075)
+++ gnunet/src/cadet/gnunet-service-cadet_tunnel.c 2015-07-15 11:45:12 UTC
(rev 36076)
@@ -3681,6 +3681,7 @@
struct CadetTConnection *next_c;
struct CadetTChannel *iter_ch;
struct CadetTChannel *next_ch;
+ unsigned int keepalives_queued;
if (NULL == t)
return;
@@ -3702,16 +3703,28 @@
GCCH_destroy (iter_ch->ch);
/* Should only happen on shutdown, but it's ok. */
}
+ keepalives_queued = 0;
while (NULL != t->tq_head)
{
/* Should have been cleaned by destuction of channel. */
struct GNUNET_MessageHeader *mh;
+ uint16_t type;
- GNUNET_break (0);
mh = (struct GNUNET_MessageHeader *) &t->tq_head[1];
- LOG (GNUNET_ERROR_TYPE_WARNING,
- "message left behind on tunnel shutdown: %s\n",
- GC_m2s (ntohs (mh->type)));
+ type = ntohs (mh->type);
+ if (0 == keepalives_queued && GNUNET_MESSAGE_TYPE_CADET_KEEPALIVE == type)
+ {
+ keepalives_queued = 1;
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "one keepalive left behind on tunnel shutdown\n");
+ }
+ else
+ {
+ GNUNET_break (0);
+ LOG (GNUNET_ERROR_TYPE_WARNING,
+ "message left behind on tunnel shutdown: %s\n",
+ GC_m2s (ntohs (mh->type)));
+ }
unqueue_data (t->tq_head);
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r36076 - gnunet/src/cadet,
gnunet <=