From 15a8471c0edc4134f57c19884c033a63f49a04dd Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Tue, 2 Jul 2013 14:38:54 +0000 Subject: -implementing regex test --- src/regex/gnunet-service-regex.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'src/regex/gnunet-service-regex.c') diff --git a/src/regex/gnunet-service-regex.c b/src/regex/gnunet-service-regex.c index 96a6b82b1..e44d11b7d 100644 --- a/src/regex/gnunet-service-regex.c +++ b/src/regex/gnunet-service-regex.c @@ -212,8 +212,18 @@ handle_announce (void *cls, GNUNET_SERVER_receive_done (client, GNUNET_SYSERR); return; } + ce = GNUNET_new (struct ClientEntry); ce->client = client; + ce->frequency = GNUNET_TIME_relative_ntoh (am->refresh_delay); + ce->refresh_task = GNUNET_SCHEDULER_add_delayed (ce->frequency, + &reannounce, + ce); + GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, + "Starting to announce regex `%s' every %s\n", + regex, + GNUNET_STRINGS_relative_time_to_string (ce->frequency, + GNUNET_NO)); ce->ah = REGEX_INTERNAL_announce (dht, my_private_key, regex, @@ -222,14 +232,11 @@ handle_announce (void *cls, if (NULL == ce->ah) { GNUNET_break (0); + GNUNET_SCHEDULER_cancel (ce->refresh_task); GNUNET_free (ce); GNUNET_SERVER_receive_done (client, GNUNET_SYSERR); return; } - ce->frequency = GNUNET_TIME_relative_ntoh (am->refresh_delay); - ce->refresh_task = GNUNET_SCHEDULER_add_delayed (ce->frequency, - &reannounce, - ce); GNUNET_CONTAINER_DLL_insert (client_head, client_tail, ce); -- cgit v1.2.3