aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/topology/test_gnunet_daemon_topology.c27
1 files changed, 25 insertions, 2 deletions
diff --git a/src/topology/test_gnunet_daemon_topology.c b/src/topology/test_gnunet_daemon_topology.c
index a96096455..047d5de8c 100644
--- a/src/topology/test_gnunet_daemon_topology.c
+++ b/src/topology/test_gnunet_daemon_topology.c
@@ -50,12 +50,35 @@ static struct GNUNET_TESTING_Daemon *last;
50 50
51static struct GNUNET_SCHEDULER_Handle *sched; 51static struct GNUNET_SCHEDULER_Handle *sched;
52 52
53/**
54 * Check whether peers successfully shut down.
55 */
56void shutdown_callback (void *cls,
57 const char *emsg)
58{
59 if (emsg != NULL)
60 {
61#if VERBOSE
62 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
63 "Shutdown of peers failed!\n");
64#endif
65 if (ok == 0)
66 ok = 666;
67 }
68 else
69 {
70#if VERBOSE
71 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
72 "All peers successfully shut down!\n");
73#endif
74 }
75}
53 76
54static void 77static void
55clean_up_task (void *cls, 78clean_up_task (void *cls,
56 const struct GNUNET_SCHEDULER_TaskContext *tc) 79 const struct GNUNET_SCHEDULER_TaskContext *tc)
57{ 80{
58 GNUNET_TESTING_daemons_stop (pg, TIMEOUT); 81 GNUNET_TESTING_daemons_stop (pg, TIMEOUT, &shutdown_callback, NULL);
59 ok = 0; 82 ok = 0;
60} 83}
61 84
@@ -76,7 +99,7 @@ notify_connect_complete(void *cls,
76 fprintf (stderr, 99 fprintf (stderr,
77 "Failed to connect two peers: %s\n", 100 "Failed to connect two peers: %s\n",
78 emsg); 101 emsg);
79 GNUNET_TESTING_daemons_stop (pg, TIMEOUT); 102 GNUNET_TESTING_daemons_stop (pg, TIMEOUT, &shutdown_callback, NULL);
80 GNUNET_assert (0); 103 GNUNET_assert (0);
81 return; 104 return;
82 } 105 }