From a7d344a3652399616bd6bd6e0f52f8df3e6e9110 Mon Sep 17 00:00:00 2001 From: Matthias Wachs Date: Tue, 20 Apr 2010 13:47:58 +0000 Subject: [PATCH] --- .../test_gnunet_daemon_hostlist_learning.c | 32 +++++++++++++++++-- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/src/hostlist/test_gnunet_daemon_hostlist_learning.c b/src/hostlist/test_gnunet_daemon_hostlist_learning.c index c5782aa8b..9d45c01ae 100644 --- a/src/hostlist/test_gnunet_daemon_hostlist_learning.c +++ b/src/hostlist/test_gnunet_daemon_hostlist_learning.c @@ -29,15 +29,16 @@ #include "gnunet_transport_service.h" #include "gnunet_resolver_service.h" -#define VERBOSE GNUNET_NO +#define VERBOSE GNUNET_YES #define START_ARM GNUNET_YES #define MAX_URL_LEN 1000 /** - * How long until we give up on transmitting the message? + * How long until wait until testcases fails */ -#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10) +#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 20) +#define CHECK_INTERVALL GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 2) static int timeout; static int adv_arrived; @@ -45,6 +46,7 @@ static int adv_arrived; static struct GNUNET_SCHEDULER_Handle *sched; static GNUNET_SCHEDULER_TaskIdentifier timeout_task; +static GNUNET_SCHEDULER_TaskIdentifier check_task; struct PeerContext { @@ -96,6 +98,12 @@ static void shutdown_testcase() timeout_task); timeout_task = GNUNET_SCHEDULER_NO_TASK; } + if (check_task != GNUNET_SCHEDULER_NO_TASK) + { + GNUNET_SCHEDULER_cancel (sched, + check_task); + check_task = GNUNET_SCHEDULER_NO_TASK; + } GNUNET_SCHEDULER_add_now (sched, &clean_up, NULL); } @@ -113,6 +121,20 @@ timeout_error (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) clean_up (NULL, tc); } +/** + * Check the server statistics regularly + */ +static void +check_statistics (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) +{ + GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, + "Checking server stats...\n"); + check_task = GNUNET_SCHEDULER_add_delayed (sched, + CHECK_INTERVALL, + &check_statistics, + NULL); +} + /** * Core handler for p2p hostlist advertisements */ @@ -301,6 +323,10 @@ run (void *cls, TIMEOUT, &timeout_error, NULL); + check_task = GNUNET_SCHEDULER_add_delayed (sched, + CHECK_INTERVALL, + &check_statistics, + NULL); GNUNET_SCHEDULER_add_delayed (sched, GNUNET_TIME_UNIT_FOREVER_REL, &shutdown_task, -- 2.25.1