-improve UDP logging
[oweals/gnunet.git] / src / ats / test_ats_api_performance_list_all_addresses.c
index 01c9e85ea91518516020ce5687e687bd1d67c892..4c09a8948143f3834f68ada2aef956aaeac72da8 100644 (file)
@@ -1,6 +1,6 @@
 /*
  This file is part of GNUnet.
- (C) 2010,2011 Christian Grothoff (and other contributing authors)
Copyright (C) 2010,2011 Christian Grothoff (and other contributing authors)
 
  GNUnet is free software; you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published
 
 #define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10)
 
-static GNUNET_SCHEDULER_TaskIdentifier die_task;
+static struct GNUNET_SCHEDULER_Task * die_task;
 
 /**
  * Statistics handle
  */
-struct GNUNET_STATISTICS_Handle *stats;
+static struct GNUNET_STATISTICS_Handle *stats;
 
 /**
  * Configuration handle
  */
-struct GNUNET_CONFIGURATION_Handle *cfg;
+static struct GNUNET_CONFIGURATION_Handle *cfg;
 
 /**
  * ATS scheduling handle
@@ -52,7 +52,7 @@ static struct GNUNET_ATS_SchedulingHandle *sched_ats;
  */
 static struct GNUNET_ATS_PerformanceHandle *perf_ats;
 
-struct GNUNET_ATS_AddressListHandle* phal;
+static struct GNUNET_ATS_AddressListHandle* phal;
 
 static int ret;
 
@@ -82,9 +82,9 @@ static struct PeerContext p[2];
 static struct Address p0_addresses[2];
 static struct Address p1_addresses[2];
 
-struct GNUNET_HELLO_Address p0_ha[2];
-struct GNUNET_HELLO_Address p1_ha[2];
-struct GNUNET_HELLO_Address *s_ha[2];
+static struct GNUNET_HELLO_Address p0_ha[2];
+static struct GNUNET_HELLO_Address p1_ha[2];
+
 
 static void
 end (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc);
@@ -95,29 +95,31 @@ end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc);
 
 static void
 ats_perf_cb (void *cls,
-            const struct GNUNET_HELLO_Address *address,
-            int address_active,
-            struct GNUNET_BANDWIDTH_Value32NBO bandwidth_out,
-            struct GNUNET_BANDWIDTH_Value32NBO bandwidth_in,
-            const struct GNUNET_ATS_Information *ats,
-            uint32_t ats_count)
+             const struct GNUNET_HELLO_Address *address,
+             int address_active,
+             struct GNUNET_BANDWIDTH_Value32NBO bandwidth_out,
+             struct GNUNET_BANDWIDTH_Value32NBO bandwidth_in,
+             const struct GNUNET_ATS_Information *ats,
+             uint32_t ats_count)
 {
   static int counter = 0;
+
   if (NULL == address)
   {
     phal = 0;
     if (4 == counter)
     {
+      GNUNET_log (GNUNET_ERROR_TYPE_INFO, "Done!\n");
       GNUNET_SCHEDULER_add_now (end, NULL);
     }
     else
     {
       GNUNET_break (0);
-      GNUNET_SCHEDULER_add_now (end_badly, NULL);
+      GNUNET_SCHEDULER_shutdown ();
     }
     return;
   }
-  counter ++;
+  counter++;
 }
 
 
@@ -127,53 +129,60 @@ stat_cb(void *cls, const char *subsystem,
         int is_persistent)
 {
 
-  GNUNET_log (GNUNET_ERROR_TYPE_INFO, "ATS statistics: `%s' `%s' %llu\n",
-      subsystem,name, value);
+  GNUNET_log (GNUNET_ERROR_TYPE_INFO,
+              "ATS statistics: `%s' `%s' %llu\n",
+              subsystem,name, value);
   if (4 == value)
   {
     GNUNET_log (GNUNET_ERROR_TYPE_INFO,
-        "All addresses added, connecting to performance\n");
+                "All addresses added, connecting to performance\n");
     if (NULL == (perf_ats = GNUNET_ATS_performance_init (cfg, NULL, NULL)))
     {
       GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
-          "Failed to connect to performance API\n");
+                  "Failed to connect to performance API\n");
       GNUNET_SCHEDULER_add_now (end_badly, NULL);
     }
-    phal = GNUNET_ATS_performance_list_addresses (perf_ats, NULL, GNUNET_YES, ats_perf_cb, NULL);
+    phal = GNUNET_ATS_performance_list_addresses (perf_ats,
+                                                  NULL,
+                                                  GNUNET_YES,
+                                                  &ats_perf_cb, NULL);
   }
   return GNUNET_OK;
 }
 
+
 static void
-address_suggest_cb (void *cls, const struct GNUNET_HELLO_Address *address,
+address_suggest_cb (void *cls,
+                    const struct GNUNET_PeerIdentity *peer,
+                    const struct GNUNET_HELLO_Address *address,
                     struct Session *session,
                     struct GNUNET_BANDWIDTH_Value32NBO bandwidth_out,
-                    struct GNUNET_BANDWIDTH_Value32NBO bandwidth_in,
-                    const struct GNUNET_ATS_Information *atsi,
-                    uint32_t ats_count)
+                    struct GNUNET_BANDWIDTH_Value32NBO bandwidth_in)
 {
-  GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Did not expect suggestion callback!\n");
+  GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+              "Did not expect suggestion callback!\n");
   GNUNET_SCHEDULER_add_now (&end_badly, NULL);
-  return;
 }
 
 
 static void
 end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
 {
-  die_task = GNUNET_SCHEDULER_NO_TASK;
+  die_task = NULL;
   end ( NULL, NULL);
   ret = GNUNET_SYSERR;
 }
 
+
 static void
 end (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
 {
-  GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, "Shutting down\n");
-  if (die_task != GNUNET_SCHEDULER_NO_TASK )
+  GNUNET_log(GNUNET_ERROR_TYPE_DEBUG,
+             "Shutting down\n");
+  if (die_task != NULL )
   {
     GNUNET_SCHEDULER_cancel (die_task);
-    die_task = GNUNET_SCHEDULER_NO_TASK;
+    die_task = NULL;
   }
 
   if (NULL != sched_ats)
@@ -211,10 +220,10 @@ end (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
 }
 
 
-
 static void
-run (void *cls, const struct GNUNET_CONFIGURATION_Handle *mycfg,
-    struct GNUNET_TESTING_Peer *peer)
+run (void *cls,
+     const struct GNUNET_CONFIGURATION_Handle *mycfg,
+     struct GNUNET_TESTING_Peer *peer)
 {
   ret = 1;
   cfg = (struct GNUNET_CONFIGURATION_Handle *) mycfg;
@@ -224,9 +233,7 @@ run (void *cls, const struct GNUNET_CONFIGURATION_Handle *mycfg,
   GNUNET_STATISTICS_watch (stats, "ats", "# addresses", &stat_cb, NULL);
 
   /* set up peer 0 */
-  GNUNET_CRYPTO_hash_create_random (GNUNET_CRYPTO_QUALITY_WEAK,
-      &p[0].id.hashPubKey);
-
+  memset (&p[0].id, '1', sizeof (p[0].id));
   p0_addresses[0].plugin = "test";
   p0_addresses[0].session = NULL;
   p0_addresses[0].addr = GNUNET_strdup ("test_p0_a0");
@@ -250,9 +257,7 @@ run (void *cls, const struct GNUNET_CONFIGURATION_Handle *mycfg,
   GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, "Created peer 0: `%s'\n",
       GNUNET_i2s (&p[0].id));
 
-  GNUNET_CRYPTO_hash_create_random (GNUNET_CRYPTO_QUALITY_WEAK,
-      &p[1].id.hashPubKey);
-
+  memset (&p[1].id, '2', sizeof (p[1].id));
   p1_addresses[0].plugin = "test";
   p1_addresses[0].session = NULL;
   p1_addresses[0].addr = GNUNET_strdup ("test_p1_a0");
@@ -273,11 +278,13 @@ run (void *cls, const struct GNUNET_CONFIGURATION_Handle *mycfg,
   p1_ha[1].peer = p[1].id;
   p1_ha[1].transport_name = p1_addresses[1].plugin;
 
-  GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, "Created peer 1: `%s'\n",
-      GNUNET_i2s (&p[1].id));
+  GNUNET_log(GNUNET_ERROR_TYPE_DEBUG,
+             "Created peer 1: `%s'\n",
+             GNUNET_i2s (&p[1].id));
 
   /* Add addresses */
-  sched_ats = GNUNET_ATS_scheduling_init (cfg, &address_suggest_cb, NULL );
+  sched_ats = GNUNET_ATS_scheduling_init (cfg,
+                                          &address_suggest_cb, NULL);
   if (sched_ats == NULL )
   {
     GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Could not setup peer!\n");