gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r5917 - in GNUnet: . src/applications/tracekit


From: gnunet
Subject: [GNUnet-SVN] r5917 - in GNUnet: . src/applications/tracekit
Date: Sat, 15 Dec 2007 21:05:28 -0700 (MST)

Author: grothoff
Date: 2007-12-15 21:05:28 -0700 (Sat, 15 Dec 2007)
New Revision: 5917

Modified:
   GNUnet/src/applications/tracekit/gnunet-tracekit.c
   GNUnet/src/applications/tracekit/tracekittest.c
   GNUnet/todo
Log:
done

Modified: GNUnet/src/applications/tracekit/gnunet-tracekit.c
===================================================================
--- GNUnet/src/applications/tracekit/gnunet-tracekit.c  2007-12-16 01:56:28 UTC 
(rev 5916)
+++ GNUnet/src/applications/tracekit/gnunet-tracekit.c  2007-12-16 04:05:28 UTC 
(rev 5917)
@@ -286,61 +286,6 @@
   return NULL;
 }
 
-#if 0
-for (i = 0; i < psCount; i++)
-  {
-    GNUNET_EncName enc;
-
-    match = GNUNET_NO;
-    for (j = 0; j < prCount; j++)
-      if (0 == memcmp (&peersResponding[j].hashPubKey,
-                       &peersSeen[i].hashPubKey, sizeof (GNUNET_HashCode)))
-        {
-          match = GNUNET_YES;
-          break;
-        }
-    if (match == GNUNET_NO)
-      {
-        GNUNET_hash_to_enc (&peersSeen[i].hashPubKey, &enc);
-        switch (format)
-          {
-          case 1:
-            break;
-          case 2:
-            printf
-              ("\tnode: { title: \"%s\" label: \"%.*s\" shape: \"ellipse\" 
}\n",
-               (char *) &enc, 4, (char *) &enc);
-            break;
-          default:
-            break;
-          }
-      }
-    else
-      {
-        switch (format)
-          {
-          case 2:
-            break;
-          default:
-            break;
-          }
-      }
-  }
-
-if (psCount == 0)
-  {
-    switch (format)
-      {
-      case 2:
-        printf ("\tnode: { title: \"NO CONNECTIONS\" }\n");
-        break;
-      default:
-        break;
-      }
-  }
-#endif
-
-
 /**
  * All gnunet-tracekit command line options
  */

Modified: GNUnet/src/applications/tracekit/tracekittest.c
===================================================================
--- GNUnet/src/applications/tracekit/tracekittest.c     2007-12-16 01:56:28 UTC 
(rev 5916)
+++ GNUnet/src/applications/tracekit/tracekittest.c     2007-12-16 04:05:28 UTC 
(rev 5917)
@@ -41,21 +41,25 @@
 
 static struct GNUNET_GC_Configuration *cfg;
 
+static struct GNUNET_ClientServerConnection *sock;
+
 static int
-report (void *unused,
+report (void * cls,
         const GNUNET_PeerIdentity * reporter,
         const GNUNET_PeerIdentity * link)
 {
   GNUNET_EncName src;
   GNUNET_EncName dst;
+  unsigned int * ret = cls;
 
   GNUNET_hash_to_enc (&reporter->hashPubKey, &src);
   if (link != NULL)
     {
       GNUNET_hash_to_enc (&link->hashPubKey, &dst);
       fprintf (stdout,
-               _("`%s' connected to `%s'.\n"),
-               (const char *) &src, (const char *) &dst);
+               _("`%.*s' connected to `%.*s'.\n"),
+               4, (const char *) &src, 4, (const char *) &dst);      
+      (*ret)++;
     }
   else
     {
@@ -72,6 +76,13 @@
   GNUNET_shutdown_initiate ();
 }
 
+static void *
+process (void * cls)
+{
+  GNUNET_TRACEKIT_run (sock, TEST_DEPTH, 0, &report, cls);
+  return NULL;
+}
+
 /**
  * Testcase to test tracekit
  * @return 0: ok, -1: error
@@ -80,8 +91,9 @@
 main (int argc, char **argv)
 {
   struct GNUNET_TESTING_DaemonContext *peers;
-  struct GNUNET_ClientServerConnection *sock;
   struct GNUNET_CronManager *cron;
+  struct GNUNET_ThreadHandle * myThread;
+  void * unused;
   int ret;
   int i;
 
@@ -123,13 +135,19 @@
       return 1;
     }
   ret = 0;                      /* FIXME: set to 1 here, to 0 in report! */
+  myThread = GNUNET_thread_create (&process, &ret, 128 * 1024);
+  if (myThread == NULL)
+    GNUNET_GE_DIE_STRERROR (ectx,
+                            GNUNET_GE_FATAL | GNUNET_GE_IMMEDIATE |
+                            GNUNET_GE_ADMIN, "pthread_create");
   cron = GNUNET_cron_create (ectx);
   GNUNET_cron_start (cron);
-  GNUNET_cron_add_job (cron, &run_shutdown, GNUNET_CRON_SECONDS * 60,
+  GNUNET_cron_add_job (cron, &run_shutdown, GNUNET_CRON_SECONDS * 15,
                        0, NULL);
+  
   GNUNET_shutdown_wait_for ();
   GNUNET_client_connection_close_forever (sock);
-  GNUNET_TRACEKIT_run (sock, TEST_DEPTH, 0, &report, &ret);
+  GNUNET_thread_join (myThread, &unused);
   GNUNET_client_connection_destroy (sock);
   GNUNET_cron_stop (cron);
   GNUNET_cron_destroy (cron);
@@ -139,7 +157,11 @@
 #endif
 
   GNUNET_GC_free (cfg);
-  return ret;
+  if (ret < 6)
+    return 1; /* have at least 3 (bi-directional) connections */
+  if (ret > 12)
+    return 2; /* have at most 12 connections */
+  return 0;
 }
 
 /* end of tracekittest.c */

Modified: GNUnet/todo
===================================================================
--- GNUnet/todo 2007-12-16 01:56:28 UTC (rev 5916)
+++ GNUnet/todo 2007-12-16 04:05:28 UTC (rev 5917)
@@ -10,11 +10,6 @@
     - Linux
     - XP
     - Vista?
-- Testcases:
-  * tracekit:
-    - actual testcase (beyond just printing)
-    - make it actually work...
-  * RPC
 
 0.8.0 [2'08] (aka "advanced features"):
 - gnunet-chat [ RC ]
@@ -25,7 +20,9 @@
   add a special block to the datastore and then trigger
   gnunet-insert only if the file is actually needed!)
 - power insert [#854]
+- RPC API and testcase
 
+
 1.0.0 (aka "userfriendly"):
 - implement testbed for profiling
 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]