aboutsummaryrefslogtreecommitdiff
path: root/src/transport/test_transport_api_limited_sockets.c
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2014-12-24 01:10:47 +0000
committerChristian Grothoff <christian@grothoff.org>2014-12-24 01:10:47 +0000
commitf1f603c7d0b3f03dca46a4f313472288eb080eb1 (patch)
tree3a29966b02dfb83e0a8a8d5c42b3116380209fb0 /src/transport/test_transport_api_limited_sockets.c
parent53cd5b8eda2fa8db86b0907a62a39598981d008a (diff)
downloadgnunet-f1f603c7d0b3f03dca46a4f313472288eb080eb1.tar.gz
gnunet-f1f603c7d0b3f03dca46a4f313472288eb080eb1.zip
making GNUNET_SCHEDULER_cancel() perform in O(1) instead of O(n) to help or even fully address #3247
Diffstat (limited to 'src/transport/test_transport_api_limited_sockets.c')
-rw-r--r--src/transport/test_transport_api_limited_sockets.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/transport/test_transport_api_limited_sockets.c b/src/transport/test_transport_api_limited_sockets.c
index 617be38d4..cc1953f77 100644
--- a/src/transport/test_transport_api_limited_sockets.c
+++ b/src/transport/test_transport_api_limited_sockets.c
@@ -55,9 +55,9 @@ static char *test_name;
55 55
56static int ok; 56static int ok;
57 57
58static GNUNET_SCHEDULER_TaskIdentifier die_task; 58static struct GNUNET_SCHEDULER_Task * die_task;
59 59
60static GNUNET_SCHEDULER_TaskIdentifier send_task; 60static struct GNUNET_SCHEDULER_Task * send_task;
61 61
62static struct PeerContext *p1; 62static struct PeerContext *p1;
63 63
@@ -85,10 +85,10 @@ end ()
85{ 85{
86 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Stopping peers\n"); 86 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Stopping peers\n");
87 87
88 if (send_task != GNUNET_SCHEDULER_NO_TASK) 88 if (send_task != NULL)
89 GNUNET_SCHEDULER_cancel (send_task); 89 GNUNET_SCHEDULER_cancel (send_task);
90 90
91 if (die_task != GNUNET_SCHEDULER_NO_TASK) 91 if (die_task != NULL)
92 GNUNET_SCHEDULER_cancel (die_task); 92 GNUNET_SCHEDULER_cancel (die_task);
93 93
94 if (th != NULL) 94 if (th != NULL)
@@ -104,11 +104,11 @@ end ()
104static void 104static void
105end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) 105end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
106{ 106{
107 die_task = GNUNET_SCHEDULER_NO_TASK; 107 die_task = NULL;
108 108
109 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Fail! Stopping peers\n"); 109 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Fail! Stopping peers\n");
110 110
111 if (send_task != GNUNET_SCHEDULER_NO_TASK) 111 if (send_task != NULL)
112 GNUNET_SCHEDULER_cancel (send_task); 112 GNUNET_SCHEDULER_cancel (send_task);
113 113
114 if (cc != NULL) 114 if (cc != NULL)
@@ -197,7 +197,7 @@ notify_disconnect (void *cls, const struct GNUNET_PeerIdentity *peer)
197static void 197static void
198sendtask (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) 198sendtask (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
199{ 199{
200 send_task = GNUNET_SCHEDULER_NO_TASK; 200 send_task = NULL;
201 201
202 if ((tc->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN) != 0) 202 if ((tc->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN) != 0)
203 return; 203 return;
@@ -259,7 +259,7 @@ run (void *cls, char *const *args, const char *cfgfile,
259 if ((p1 == NULL) || (p2 == NULL)) 259 if ((p1 == NULL) || (p2 == NULL))
260 { 260 {
261 GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Fail! Could not start peers!\n"); 261 GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Fail! Could not start peers!\n");
262 if (die_task != GNUNET_SCHEDULER_NO_TASK) 262 if (die_task != NULL)
263 GNUNET_SCHEDULER_cancel (die_task); 263 GNUNET_SCHEDULER_cancel (die_task);
264 die_task = GNUNET_SCHEDULER_add_now (&end_badly, NULL); 264 die_task = GNUNET_SCHEDULER_add_now (&end_badly, NULL);
265 return; 265 return;
@@ -282,7 +282,7 @@ check ()
282#if WRITECONFIG 282#if WRITECONFIG
283 setTransportOptions ("test_transport_api_data.conf"); 283 setTransportOptions ("test_transport_api_data.conf");
284#endif 284#endif
285 send_task = GNUNET_SCHEDULER_NO_TASK; 285 send_task = NULL;
286 286
287 ok = 1; 287 ok = 1;
288 GNUNET_PROGRAM_run ((sizeof (argv) / sizeof (char *)) - 1, argv, test_name, 288 GNUNET_PROGRAM_run ((sizeof (argv) / sizeof (char *)) - 1, argv, test_name,