diff options
author | Christian Grothoff <christian@grothoff.org> | 2014-12-24 01:10:47 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2014-12-24 01:10:47 +0000 |
commit | f1f603c7d0b3f03dca46a4f313472288eb080eb1 (patch) | |
tree | 3a29966b02dfb83e0a8a8d5c42b3116380209fb0 /src/transport/test_transport_api_unreliability_constant.c | |
parent | 53cd5b8eda2fa8db86b0907a62a39598981d008a (diff) | |
download | gnunet-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_unreliability_constant.c')
-rw-r--r-- | src/transport/test_transport_api_unreliability_constant.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/transport/test_transport_api_unreliability_constant.c b/src/transport/test_transport_api_unreliability_constant.c index 2ff1e4b0c..c859e802e 100644 --- a/src/transport/test_transport_api_unreliability_constant.c +++ b/src/transport/test_transport_api_unreliability_constant.c | |||
@@ -49,7 +49,7 @@ static char *test_name; | |||
49 | 49 | ||
50 | static int ok; | 50 | static int ok; |
51 | 51 | ||
52 | static GNUNET_SCHEDULER_TaskIdentifier die_task; | 52 | static struct GNUNET_SCHEDULER_Task * die_task; |
53 | 53 | ||
54 | struct PeerContext *p1; | 54 | struct PeerContext *p1; |
55 | 55 | ||
@@ -134,7 +134,7 @@ end () | |||
134 | "kb/s"); | 134 | "kb/s"); |
135 | GNUNET_free (value_name); | 135 | GNUNET_free (value_name); |
136 | 136 | ||
137 | if (die_task != GNUNET_SCHEDULER_NO_TASK) | 137 | if (die_task != NULL) |
138 | GNUNET_SCHEDULER_cancel (die_task); | 138 | GNUNET_SCHEDULER_cancel (die_task); |
139 | 139 | ||
140 | if (th != NULL) | 140 | if (th != NULL) |
@@ -160,7 +160,7 @@ end () | |||
160 | static void | 160 | static void |
161 | end_badly () | 161 | end_badly () |
162 | { | 162 | { |
163 | die_task = GNUNET_SCHEDULER_NO_TASK; | 163 | die_task = NULL; |
164 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Fail! Stopping peers\n"); | 164 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Fail! Stopping peers\n"); |
165 | 165 | ||
166 | if (test_failed == GNUNET_NO) | 166 | if (test_failed == GNUNET_NO) |
@@ -223,7 +223,7 @@ notify_receive (void *cls, const struct GNUNET_PeerIdentity *peer, | |||
223 | { | 223 | { |
224 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Expected message no %u, got %u\n", | 224 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Expected message no %u, got %u\n", |
225 | msg_recv_expected, msg_recv); | 225 | msg_recv_expected, msg_recv); |
226 | if (GNUNET_SCHEDULER_NO_TASK != die_task) | 226 | if (NULL != die_task) |
227 | GNUNET_SCHEDULER_cancel (die_task); | 227 | GNUNET_SCHEDULER_cancel (die_task); |
228 | test_failed = GNUNET_YES; | 228 | test_failed = GNUNET_YES; |
229 | die_task = GNUNET_SCHEDULER_add_now (&end_badly, NULL); | 229 | die_task = GNUNET_SCHEDULER_add_now (&end_badly, NULL); |
@@ -236,7 +236,7 @@ notify_receive (void *cls, const struct GNUNET_PeerIdentity *peer, | |||
236 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, | 236 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, |
237 | "Expected message %u of size %u, got %u bytes of message %u\n", | 237 | "Expected message %u of size %u, got %u bytes of message %u\n", |
238 | ntohl (hdr->num), s, ntohs (message->size), ntohl (hdr->num)); | 238 | ntohl (hdr->num), s, ntohs (message->size), ntohl (hdr->num)); |
239 | if (GNUNET_SCHEDULER_NO_TASK != die_task) | 239 | if (NULL != die_task) |
240 | GNUNET_SCHEDULER_cancel (die_task); | 240 | GNUNET_SCHEDULER_cancel (die_task); |
241 | test_failed = GNUNET_YES; | 241 | test_failed = GNUNET_YES; |
242 | die_task = GNUNET_SCHEDULER_add_now (&end_badly, NULL); | 242 | die_task = GNUNET_SCHEDULER_add_now (&end_badly, NULL); |
@@ -249,7 +249,7 @@ notify_receive (void *cls, const struct GNUNET_PeerIdentity *peer, | |||
249 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, | 249 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, |
250 | "Expected message %u with bits %u, but body did not match\n", | 250 | "Expected message %u with bits %u, but body did not match\n", |
251 | ntohl (hdr->num), (unsigned char) n); | 251 | ntohl (hdr->num), (unsigned char) n); |
252 | if (GNUNET_SCHEDULER_NO_TASK != die_task) | 252 | if (NULL != die_task) |
253 | GNUNET_SCHEDULER_cancel (die_task); | 253 | GNUNET_SCHEDULER_cancel (die_task); |
254 | test_failed = GNUNET_YES; | 254 | test_failed = GNUNET_YES; |
255 | die_task = GNUNET_SCHEDULER_add_now (&end_badly, NULL); | 255 | die_task = GNUNET_SCHEDULER_add_now (&end_badly, NULL); |
@@ -266,7 +266,7 @@ notify_receive (void *cls, const struct GNUNET_PeerIdentity *peer, | |||
266 | if (0 == (n % (TOTAL_MSGS / 100))) | 266 | if (0 == (n % (TOTAL_MSGS / 100))) |
267 | { | 267 | { |
268 | FPRINTF (stderr, "%s", "."); | 268 | FPRINTF (stderr, "%s", "."); |
269 | if (GNUNET_SCHEDULER_NO_TASK != die_task) | 269 | if (NULL != die_task) |
270 | GNUNET_SCHEDULER_cancel (die_task); | 270 | GNUNET_SCHEDULER_cancel (die_task); |
271 | test_failed = GNUNET_YES; | 271 | test_failed = GNUNET_YES; |
272 | die_task = GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly, NULL); | 272 | die_task = GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly, NULL); |
@@ -296,7 +296,7 @@ notify_ready (void *cls, size_t size, void *buf) | |||
296 | { | 296 | { |
297 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, | 297 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, |
298 | "Timeout occurred while waiting for transmit_ready\n"); | 298 | "Timeout occurred while waiting for transmit_ready\n"); |
299 | if (GNUNET_SCHEDULER_NO_TASK != die_task) | 299 | if (NULL != die_task) |
300 | GNUNET_SCHEDULER_cancel (die_task); | 300 | GNUNET_SCHEDULER_cancel (die_task); |
301 | die_task = GNUNET_SCHEDULER_add_now (&end_badly, NULL); | 301 | die_task = GNUNET_SCHEDULER_add_now (&end_badly, NULL); |
302 | ok = 42; | 302 | ok = 42; |
@@ -343,7 +343,7 @@ notify_ready (void *cls, size_t size, void *buf) | |||
343 | FPRINTF (stderr, "%s", "\n"); | 343 | FPRINTF (stderr, "%s", "\n"); |
344 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | 344 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, |
345 | "All messages scheduled to be sent!!\n"); | 345 | "All messages scheduled to be sent!!\n"); |
346 | if (GNUNET_SCHEDULER_NO_TASK != die_task) | 346 | if (NULL != die_task) |
347 | GNUNET_SCHEDULER_cancel (die_task); | 347 | GNUNET_SCHEDULER_cancel (die_task); |
348 | die_task = GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly, NULL); | 348 | die_task = GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly, NULL); |
349 | } | 349 | } |
@@ -434,7 +434,7 @@ run (void *cls, char *const *args, const char *cfgfile, | |||
434 | if ((p1 == NULL) || (p2 == NULL)) | 434 | if ((p1 == NULL) || (p2 == NULL)) |
435 | { | 435 | { |
436 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Fail! Could not start peers!\n"); | 436 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Fail! Could not start peers!\n"); |
437 | if (die_task != GNUNET_SCHEDULER_NO_TASK) | 437 | if (die_task != NULL) |
438 | GNUNET_SCHEDULER_cancel (die_task); | 438 | GNUNET_SCHEDULER_cancel (die_task); |
439 | die_task = GNUNET_SCHEDULER_add_now (&end_badly, NULL); | 439 | die_task = GNUNET_SCHEDULER_add_now (&end_badly, NULL); |
440 | return; | 440 | return; |