convert fs publish to MQ
[oweals/gnunet.git] / src / peerstore / test_peerstore_api_iterate.c
index 515e8f7df876d93b9b99a80dc03ec67372f219be..83a6bf7b73e060c6aa398108f64827447740ef5f 100644 (file)
@@ -1,6 +1,6 @@
 /*
      This file is part of GNUnet.
-     (C)
+     Copyright (C)
 
      GNUnet is free software; you can redistribute it and/or modify
      it under the terms of the GNU General Public License as published
@@ -14,8 +14,8 @@
 
      You should have received a copy of the GNU General Public License
      along with GNUnet; see the file COPYING.  If not, write to the
-     Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-     Boston, MA 02111-1307, USA.
+     Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+     Boston, MA 02110-1301, USA.
 */
 /**
  * @file peerstore/test_peerstore_api_iterate.c
@@ -29,6 +29,7 @@
 static int ok = 1;
 
 static struct GNUNET_PEERSTORE_Handle *h;
+static struct GNUNET_PEERSTORE_IterateContext *ic;
 
 static char *ss = "test_peerstore_api_iterate";
 static struct GNUNET_PeerIdentity p1;
@@ -39,128 +40,98 @@ static char *k3 = "test_peerstore_api_iterate_key3";
 static char *val = "test_peerstore_api_iterate_val";
 static int count = 0;
 
-static int
-iter3_cb(void *cls,
-    struct GNUNET_PEERSTORE_Record *record,
-    char *emsg)
+
+static void
+iter3_cb (void *cls, const struct GNUNET_PEERSTORE_Record *record,
+          const char *emsg)
 {
-  if(NULL != emsg)
-    return GNUNET_NO;
-  if(NULL != record)
+  if (NULL != emsg)
+  {
+    GNUNET_PEERSTORE_iterate_cancel (ic);
+    return;
+  }
+  if (NULL != record)
   {
     count++;
-    return GNUNET_YES;
+    return;
   }
-  GNUNET_assert(count == 3);
+  GNUNET_assert (count == 3);
   ok = 0;
-  GNUNET_PEERSTORE_disconnect(h);
-  GNUNET_SCHEDULER_shutdown();
-  return GNUNET_YES;
+  GNUNET_PEERSTORE_disconnect (h, GNUNET_NO);
+  GNUNET_SCHEDULER_shutdown ();
 }
 
-static int
-iter2_cb(void *cls,
-    struct GNUNET_PEERSTORE_Record *record,
-    char *emsg)
+
+static void
+iter2_cb (void *cls, const struct GNUNET_PEERSTORE_Record *record,
+          const char *emsg)
 {
-  if(NULL != emsg)
-    return GNUNET_NO;
-  if(NULL != record)
+  if (NULL != emsg)
+  {
+    GNUNET_PEERSTORE_iterate_cancel (ic);
+    return;
+  }
+  if (NULL != record)
   {
     count++;
-    return GNUNET_YES;
+    return;
   }
-  GNUNET_assert(count == 2);
+  GNUNET_assert (count == 2);
   count = 0;
-  GNUNET_PEERSTORE_iterate(h,
-      ss,
-      NULL,
-      NULL,
-      GNUNET_TIME_UNIT_FOREVER_REL,
-      iter3_cb,
-      NULL);
-  return GNUNET_YES;
+  ic = GNUNET_PEERSTORE_iterate (h, ss, NULL, NULL, GNUNET_TIME_UNIT_FOREVER_REL,
+                            iter3_cb, NULL);
 }
 
-static int
-iter1_cb(void *cls,
-    struct GNUNET_PEERSTORE_Record *record,
-    char *emsg)
+
+static void
+iter1_cb (void *cls, const struct GNUNET_PEERSTORE_Record *record,
+          const char *emsg)
 {
-  if(NULL != emsg)
-    return GNUNET_NO;
-  if(NULL != record)
+  if (NULL != emsg)
+  {
+    GNUNET_PEERSTORE_iterate_cancel (ic);
+    return;
+  }
+  if (NULL != record)
   {
     count++;
-    return GNUNET_YES;
+    return;
   }
-  GNUNET_assert(count == 1);
+  GNUNET_assert (count == 1);
   count = 0;
-  GNUNET_PEERSTORE_iterate(h,
-      ss,
-      &p1,
-      NULL,
-      GNUNET_TIME_UNIT_FOREVER_REL,
-      iter2_cb,
-      NULL);
-  return GNUNET_YES;
+  ic = GNUNET_PEERSTORE_iterate (h, ss, &p1, NULL, GNUNET_TIME_UNIT_FOREVER_REL,
+                            iter2_cb, NULL);
 }
 
+
 static void
-run (void *cls,
-    const struct GNUNET_CONFIGURATION_Handle *cfg,
-    struct GNUNET_TESTING_Peer *peer)
+run (void *cls, const struct GNUNET_CONFIGURATION_Handle *cfg,
+     struct GNUNET_TESTING_Peer *peer)
 {
-  h = GNUNET_PEERSTORE_connect(cfg);
-  GNUNET_assert(NULL != h);
+  h = GNUNET_PEERSTORE_connect (cfg);
+  GNUNET_assert (NULL != h);
   memset (&p1, 1, sizeof (p1));
   memset (&p2, 2, sizeof (p2));
-  GNUNET_PEERSTORE_store(h,
-      ss,
-      &p1,
-      k1,
-      val,
-      strlen(val) + 1,
-      GNUNET_TIME_UNIT_FOREVER_ABS,
-      GNUNET_PEERSTORE_STOREOPTION_REPLACE,
-      NULL,
-      NULL);
-  GNUNET_PEERSTORE_store(h,
-      ss,
-      &p1,
-      k2,
-      val,
-      strlen(val) + 1,
-      GNUNET_TIME_UNIT_FOREVER_ABS,
-      GNUNET_PEERSTORE_STOREOPTION_REPLACE,
-      NULL,
-      NULL);
-  GNUNET_PEERSTORE_store(h,
-      ss,
-      &p2,
-      k3,
-      val,
-      strlen(val) + 1,
-      GNUNET_TIME_UNIT_FOREVER_ABS,
-      GNUNET_PEERSTORE_STOREOPTION_REPLACE,
-      NULL,
-      NULL);
-  GNUNET_PEERSTORE_iterate(h,
-      ss,
-      &p1,
-      k1,
-      GNUNET_TIME_UNIT_FOREVER_REL,
-      iter1_cb,
-      NULL);
+  GNUNET_PEERSTORE_store (h, ss, &p1, k1, val, strlen (val) + 1,
+                          GNUNET_TIME_UNIT_FOREVER_ABS,
+                          GNUNET_PEERSTORE_STOREOPTION_REPLACE, NULL, NULL);
+  GNUNET_PEERSTORE_store (h, ss, &p1, k2, val, strlen (val) + 1,
+                          GNUNET_TIME_UNIT_FOREVER_ABS,
+                          GNUNET_PEERSTORE_STOREOPTION_REPLACE, NULL, NULL);
+  GNUNET_PEERSTORE_store (h, ss, &p2, k3, val, strlen (val) + 1,
+                          GNUNET_TIME_UNIT_FOREVER_ABS,
+                          GNUNET_PEERSTORE_STOREOPTION_REPLACE, NULL, NULL);
+  ic = GNUNET_PEERSTORE_iterate (h, ss, &p1, k1, GNUNET_TIME_UNIT_FOREVER_REL,
+                            iter1_cb, NULL);
 }
 
+
 int
 main (int argc, char *argv[])
 {
-  if (0 != GNUNET_TESTING_service_run ("test-gnunet-peerstore",
-                 "peerstore",
-                 "test_peerstore_api_data.conf",
-                 &run, NULL))
+  if (0 !=
+      GNUNET_TESTING_service_run ("test-gnunet-peerstore", "peerstore",
+                                  "test_peerstore_api_data.conf", &run, NULL))
     return 1;
   return ok;
 }