From dc517ae0e3665b1629b44e09b9c76ad02c5a4953 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Sat, 13 Feb 2010 13:48:15 +0000 Subject: fix --- src/core/gnunet-service-core.c | 55 +++++++++++++++++++----------------------- 1 file changed, 25 insertions(+), 30 deletions(-) (limited to 'src') diff --git a/src/core/gnunet-service-core.c b/src/core/gnunet-service-core.c index 57de15d66..6c2906d17 100644 --- a/src/core/gnunet-service-core.c +++ b/src/core/gnunet-service-core.c @@ -1588,14 +1588,10 @@ process_plaintext_neighbour_queue (struct Neighbour *n) return; case PEER_STATE_KEY_SENT: if (n->retry_set_key_task == GNUNET_SCHEDULER_NO_TASK) - { - n->retry_set_key_task - = GNUNET_SCHEDULER_add_delayed (sched, - n->set_key_retry_frequency, - &set_key_retry_task, n); - } - GNUNET_assert (n->retry_set_key_task != - GNUNET_SCHEDULER_NO_TASK); + n->retry_set_key_task + = GNUNET_SCHEDULER_add_delayed (sched, + n->set_key_retry_frequency, + &set_key_retry_task, n); #if DEBUG_CORE GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Not yet connected to `%4s', deferring processing of plaintext messages.\n", @@ -1603,15 +1599,11 @@ process_plaintext_neighbour_queue (struct Neighbour *n) #endif return; case PEER_STATE_KEY_RECEIVED: - if (n->retry_set_key_task == GNUNET_SCHEDULER_NO_TASK) - { - n->retry_set_key_task - = GNUNET_SCHEDULER_add_delayed (sched, - n->set_key_retry_frequency, - &set_key_retry_task, n); - } - GNUNET_assert (n->retry_set_key_task != - GNUNET_SCHEDULER_NO_TASK); + if (n->retry_set_key_task == GNUNET_SCHEDULER_NO_TASK) + n->retry_set_key_task + = GNUNET_SCHEDULER_add_delayed (sched, + n->set_key_retry_frequency, + &set_key_retry_task, n); #if DEBUG_CORE GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Not yet connected to `%4s', deferring processing of plaintext messages.\n", @@ -1999,12 +1991,17 @@ process_hello_retry_send_key (void *cls, #endif n->pitr = NULL; if (n->public_key != NULL) - send_key (n); + { + send_key (n); + } else - n->retry_set_key_task - = GNUNET_SCHEDULER_add_delayed (sched, - n->set_key_retry_frequency, - &set_key_retry_task, n); + { + if (GNUNET_SCHEDULER_NO_TASK == n->retry_set_key_task) + n->retry_set_key_task + = GNUNET_SCHEDULER_add_delayed (sched, + n->set_key_retry_frequency, + &set_key_retry_task, n); + } return; } @@ -2177,14 +2174,12 @@ send_key (struct Neighbour *n) #endif /* trigger queue processing */ process_encrypted_neighbour_queue (n); - if (n->status != PEER_STATE_KEY_CONFIRMED) - { - GNUNET_assert (GNUNET_SCHEDULER_NO_TASK == n->retry_set_key_task); - n->retry_set_key_task - = GNUNET_SCHEDULER_add_delayed (sched, - n->set_key_retry_frequency, - &set_key_retry_task, n); - } + if ( (n->status != PEER_STATE_KEY_CONFIRMED) && + (GNUNET_SCHEDULER_NO_TASK == n->retry_set_key_task) ) + n->retry_set_key_task + = GNUNET_SCHEDULER_add_delayed (sched, + n->set_key_retry_frequency, + &set_key_retry_task, n); } -- cgit v1.2.3