improving code and build system to be in line with gnunet access control model for...
[oweals/gnunet.git] / src / dht / test_dht_twopeer.c
index fc15609965487cde05633a360fb32c5ab3ea3f39..2adfda0ef6f0d06c0271fcad7408c853cb6257a7 100644 (file)
@@ -28,7 +28,7 @@
 #include "gnunet_dht_service.h"
 
 /* DEFINES */
-#define VERBOSE GNUNET_NO
+#define VERBOSE GNUNET_EXTRA_LOGGING
 
 #define MAX_GET_ATTEMPTS 10
 
@@ -87,7 +87,7 @@ static struct GNUNET_DHT_Handle *peer2dht;
 /**
  * Check whether peers successfully shut down.
  */
-void
+static void
 shutdown_callback (void *cls, const char *emsg)
 {
   if (emsg != NULL)
@@ -126,7 +126,10 @@ end_badly_cont (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
   }
 
   if (curr_get_ctx.retry_task != GNUNET_SCHEDULER_NO_TASK)
+  {
     GNUNET_SCHEDULER_cancel (curr_get_ctx.retry_task);
+    curr_get_ctx.retry_task = GNUNET_SCHEDULER_NO_TASK;
+  }
 }
 
 
@@ -135,12 +138,12 @@ end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
 {
   const char *emsg = cls;
 
-  fprintf (stderr,
-          "Error: %s\n",
-          emsg);
+  FPRINTF (stderr, "Error: %s\n", emsg);
   if (curr_get_ctx.retry_task != GNUNET_SCHEDULER_NO_TASK)
+  {
     GNUNET_SCHEDULER_cancel (curr_get_ctx.retry_task);
-
+    curr_get_ctx.retry_task = GNUNET_SCHEDULER_NO_TASK;
+  }
   if (curr_get_ctx.get_handle != NULL)
   {
     GNUNET_DHT_get_stop (curr_get_ctx.get_handle);
@@ -166,19 +169,22 @@ do_get (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc);
  * @param size number of bytes in data
  * @param data pointer to the result data
  */
-void
+static void
 get_result_iterator (void *cls, struct GNUNET_TIME_Absolute exp,
                      const GNUNET_HashCode * key,
-                     const struct GNUNET_PeerIdentity *const *get_path,
-                     const struct GNUNET_PeerIdentity *const *put_path,
-                     enum GNUNET_BLOCK_Type type, size_t size, const void *data)
+                     const struct GNUNET_PeerIdentity *get_path,
+                     unsigned int get_path_length,
+                     const struct GNUNET_PeerIdentity *put_path,
+                     unsigned int put_path_length, enum GNUNET_BLOCK_Type type,
+                     size_t size, const void *data)
 {
   struct PeerGetContext *get_context = cls;
 
   if (0 !=
       memcmp (&get_context->peer->hashPubKey, key, sizeof (GNUNET_HashCode)))
   {
-    GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
+    FPRINTF (stderr, "%s",  "??\n");
+    GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
                 "Key returned is not the same key as was searched for!\n");
     GNUNET_SCHEDULER_cancel (die_task);
     die_task =
@@ -186,7 +192,7 @@ get_result_iterator (void *cls, struct GNUNET_TIME_Absolute exp,
                                   "key mismatch in get response!\n");
     return;
   }
-
+  FPRINTF (stderr, "%s",  "!\n");
   if (get_context->retry_task != GNUNET_SCHEDULER_NO_TASK)
   {
     GNUNET_SCHEDULER_cancel (get_context->retry_task);
@@ -216,6 +222,7 @@ get_result_iterator (void *cls, struct GNUNET_TIME_Absolute exp,
 static void
 stop_retry_get (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc);
 
+
 static void
 get_stop_finished (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
 {
@@ -227,15 +234,17 @@ get_stop_finished (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
                 get_context->get_attempts);
   else
   {
-    GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+    FPRINTF (stderr, "%s",  "?\n");
+    GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
                 "Too many attempts failed, ending test!\n",
                 get_context->get_attempts);
     GNUNET_SCHEDULER_cancel (die_task);
     die_task =
         GNUNET_SCHEDULER_add_now (&end_badly,
-                                  "key mismatch in get response!\n");
+                                  "GET attempt failed, ending test!\n");
     return;
   }
+  FPRINTF (stderr, "%s",  ".");
   get_context->get_attempts++;
   get_context->retry_task =
       GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_relative_multiply
@@ -246,11 +255,12 @@ get_stop_finished (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
                             GNUNET_TIME_relative_multiply
                             (GNUNET_TIME_UNIT_SECONDS, 5),
                             GNUNET_BLOCK_TYPE_DHT_HELLO,
-                            &get_context->peer->hashPubKey,
-                            DEFAULT_GET_REPLICATION, GNUNET_DHT_RO_NONE, NULL,
-                            0, NULL, 0, &get_result_iterator, get_context);
+                            &get_context->peer->hashPubKey, 1,
+                            GNUNET_DHT_RO_NONE, NULL, 0, &get_result_iterator,
+                            get_context);
 }
 
+
 static void
 stop_retry_get (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
 {
@@ -265,6 +275,7 @@ stop_retry_get (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
   GNUNET_SCHEDULER_add_now (&get_stop_finished, get_context);
 }
 
+
 static void
 do_get (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
 {
@@ -274,15 +285,14 @@ do_get (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
       GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_relative_multiply
                                     (GNUNET_TIME_UNIT_SECONDS, 10),
                                     &stop_retry_get, get_context);
-
   get_context->get_handle =
       GNUNET_DHT_get_start (get_context->dht_handle,
                             GNUNET_TIME_relative_multiply
                             (GNUNET_TIME_UNIT_SECONDS, 5),
                             GNUNET_BLOCK_TYPE_DHT_HELLO,
-                            &get_context->peer->hashPubKey,
-                            DEFAULT_GET_REPLICATION, GNUNET_DHT_RO_NONE, NULL,
-                            0, NULL, 0, &get_result_iterator, get_context);
+                            &get_context->peer->hashPubKey, 1,
+                            GNUNET_DHT_RO_FIND_PEER, NULL, 0,
+                            &get_result_iterator, get_context);
 }
 
 
@@ -323,8 +333,8 @@ topology_callback (void *cls, const struct GNUNET_PeerIdentity *first,
 #endif
     GNUNET_SCHEDULER_cancel (die_task);
     die_task =
-        GNUNET_SCHEDULER_add_delayed (TIMEOUT, 
-                                     &end_badly, "Timeout trying to GET");
+        GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly,
+                                      "Timeout trying to GET");
 
     curr_get_ctx.dht_handle = peer1dht;
     curr_get_ctx.peer = &peer2id;
@@ -371,9 +381,7 @@ peers_started_callback (void *cls, const struct GNUNET_PeerIdentity *id,
 {
   if (emsg != NULL)
   {
-    fprintf (stderr,
-            "Failed to start daemon: `%s'\n", 
-            emsg);
+    FPRINTF (stderr, "Failed to start daemon: `%s'\n", emsg);
     return;
   }
   GNUNET_assert (id != NULL);