aboutsummaryrefslogtreecommitdiff
path: root/src/messenger/test_messenger_anonymous.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/messenger/test_messenger_anonymous.c')
-rw-r--r--src/messenger/test_messenger_anonymous.c24
1 files changed, 20 insertions, 4 deletions
diff --git a/src/messenger/test_messenger_anonymous.c b/src/messenger/test_messenger_anonymous.c
index 13f2b6f0e..f95b47704 100644
--- a/src/messenger/test_messenger_anonymous.c
+++ b/src/messenger/test_messenger_anonymous.c
@@ -43,6 +43,7 @@ static int status = 1;
43 43
44static struct GNUNET_SCHEDULER_Task *die_task = NULL; 44static struct GNUNET_SCHEDULER_Task *die_task = NULL;
45static struct GNUNET_SCHEDULER_Task *op_task = NULL; 45static struct GNUNET_SCHEDULER_Task *op_task = NULL;
46static struct GNUNET_SCHEDULER_Task *it_task = NULL;
46 47
47struct GNUNET_MESSENGER_Handle *messenger = NULL; 48struct GNUNET_MESSENGER_Handle *messenger = NULL;
48 49
@@ -51,6 +52,12 @@ end (void *cls)
51{ 52{
52 die_task = NULL; 53 die_task = NULL;
53 54
55 if (it_task)
56 {
57 GNUNET_SCHEDULER_cancel (it_task);
58 it_task = NULL;
59 }
60
54 if (op_task) 61 if (op_task)
55 { 62 {
56 GNUNET_SCHEDULER_cancel (op_task); 63 GNUNET_SCHEDULER_cancel (op_task);
@@ -96,9 +103,12 @@ end_operation (void *cls)
96 * @param handle Handle of messenger service 103 * @param handle Handle of messenger service
97 */ 104 */
98static void 105static void
99on_identity (void *cls, 106on_iteration (void *cls)
100 struct GNUNET_MESSENGER_Handle *handle)
101{ 107{
108 struct GNUNET_MESSENGER_Handle *handle = cls;
109
110 it_task = NULL;
111
102 if (op_task) 112 if (op_task)
103 { 113 {
104 GNUNET_SCHEDULER_cancel (op_task); 114 GNUNET_SCHEDULER_cancel (op_task);
@@ -113,7 +123,10 @@ on_identity (void *cls,
113 return; 123 return;
114 } 124 }
115 125
116 if (GNUNET_SYSERR != GNUNET_MESSENGER_update (handle)) 126 struct GNUNET_IDENTITY_PrivateKey zero;
127 memset (&zero, 0, sizeof (zero));
128
129 if (GNUNET_SYSERR != GNUNET_MESSENGER_set_key (handle, &zero))
117 { 130 {
118 op_task = GNUNET_SCHEDULER_add_now (&end_operation, "update-fail"); 131 op_task = GNUNET_SCHEDULER_add_now (&end_operation, "update-fail");
119 return; 132 return;
@@ -152,7 +165,10 @@ run (void *cls,
152 die_task = GNUNET_SCHEDULER_add_delayed (TOTAL_TIMEOUT, &end_badly, NULL); 165 die_task = GNUNET_SCHEDULER_add_delayed (TOTAL_TIMEOUT, &end_badly, NULL);
153 166
154 op_task = GNUNET_SCHEDULER_add_delayed (BASE_TIMEOUT, &end_operation, "connect"); 167 op_task = GNUNET_SCHEDULER_add_delayed (BASE_TIMEOUT, &end_operation, "connect");
155 messenger = GNUNET_MESSENGER_connect (cfg, NULL, &on_identity, NULL, NULL, NULL); 168 messenger = GNUNET_MESSENGER_connect (cfg, NULL, NULL, NULL, NULL);
169
170 if (messenger)
171 it_task = GNUNET_SCHEDULER_add_now (&on_iteration, messenger);
156} 172}
157 173
158/** 174/**