[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnunet] 05/09: Fixed bug in logic freeing timedout QueueEntry.
From: |
gnunet |
Subject: |
[gnunet] 05/09: Fixed bug in logic freeing timedout QueueEntry. |
Date: |
Wed, 10 Jan 2024 12:00:02 +0100 |
This is an automated email from the git hooks/post-receive script.
t3sserakt pushed a commit to branch master
in repository gnunet.
commit 78b0a9aeb72e0b37989c8cf56534057f0d38ed9e
Author: t3sserakt <t3ss@posteo.de>
AuthorDate: Wed Jan 10 11:36:36 2024 +0100
Fixed bug in logic freeing timedout QueueEntry.
---
src/service/transport/gnunet-service-transport.c | 25 +++++++++++++++++++-----
1 file changed, 20 insertions(+), 5 deletions(-)
diff --git a/src/service/transport/gnunet-service-transport.c
b/src/service/transport/gnunet-service-transport.c
index ab64ddf32..2bfde7f7f 100644
--- a/src/service/transport/gnunet-service-transport.c
+++ b/src/service/transport/gnunet-service-transport.c
@@ -4542,21 +4542,36 @@ free_timedout_queue_entry (void *cls)
struct TransportClient *tc = cls;
struct GNUNET_TIME_Absolute now = GNUNET_TIME_absolute_get ();
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "freeing timedout queue entries\n");
+
+ tc->details.communicator.free_queue_entry_task = NULL;
for (struct Queue *queue = tc->details.communicator.queue_head; NULL !=
queue;
queue = queue->next_client)
{
- for (struct QueueEntry *qep = queue->queue_head; NULL != qep;
- qep = qep->next)
+ struct QueueEntry *qep = queue->queue_head;
+
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "checking QID %u for timedout queue entries\n",
+ queue->qid);
+ while (NULL != qep)
{
- struct GNUNET_TIME_Relative diff = GNUNET_TIME_absolute_get_difference
(qep->creation_timestamp, now);
+ struct QueueEntry *pos = qep;
+
+ qep = qep->next;
+ struct GNUNET_TIME_Relative diff = GNUNET_TIME_absolute_get_difference
(pos->creation_timestamp, now);
+
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "diff to now %s \n",
+ GNUNET_TIME_relative2s (diff, GNUNET_NO));
if (GNUNET_TIME_relative_cmp (QUEUE_ENTRY_TIMEOUT, < , diff))
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Freeing timed out QueueEntry with MID %" PRIu64
" and QID %u\n",
- qep->mid,
+ pos->mid,
queue->qid);
- free_queue_entry(qep, tc);
+ free_queue_entry(pos, tc);
}
}
}
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
- [gnunet] branch master updated (577ad2f7d -> 29213833f), gnunet, 2024/01/10
- [gnunet] 04/09: Resuming communicators in case of core restarting., gnunet, 2024/01/10
- [gnunet] 01/09: Changed creation of key for kx to be for every notification of transport about a new connected peer., gnunet, 2024/01/10
- [gnunet] 02/09: Added missing GNUNET_TRANSPORT_core_receive_continue., gnunet, 2024/01/10
- [gnunet] 03/09: Fixed bug in logic getting root parent of fragment which is a DV box., gnunet, 2024/01/10
- [gnunet] 06/09: Fixed bug calculating next resend of fragments., gnunet, 2024/01/10
- [gnunet] 07/09: first_challenge_use has to be reset in case of revalidation., gnunet, 2024/01/10
- [gnunet] 08/09: When to resend a validation challenge and when to start revalidation needs to be seperate logic., gnunet, 2024/01/10
- [gnunet] 09/09: Merge branch 'master' of ssh://git.gnunet.org/gnunet, gnunet, 2024/01/10
- [gnunet] 05/09: Fixed bug in logic freeing timedout QueueEntry.,
gnunet <=