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/dns/dns_api.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/dns/dns_api.c')
-rw-r--r-- | src/dns/dns_api.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/dns/dns_api.c b/src/dns/dns_api.c index 288b421c6..916a860f1 100644 --- a/src/dns/dns_api.c +++ b/src/dns/dns_api.c | |||
@@ -119,7 +119,7 @@ struct GNUNET_DNS_Handle | |||
119 | /** | 119 | /** |
120 | * Task to reconnect to the service. | 120 | * Task to reconnect to the service. |
121 | */ | 121 | */ |
122 | GNUNET_SCHEDULER_TaskIdentifier reconnect_task; | 122 | struct GNUNET_SCHEDULER_Task * reconnect_task; |
123 | 123 | ||
124 | /** | 124 | /** |
125 | * Re-connect counter, to make sure we did not reconnect in the meantime. | 125 | * Re-connect counter, to make sure we did not reconnect in the meantime. |
@@ -169,7 +169,7 @@ reconnect (void *cls, | |||
169 | struct ReplyQueueEntry *qe; | 169 | struct ReplyQueueEntry *qe; |
170 | struct GNUNET_DNS_Register *msg; | 170 | struct GNUNET_DNS_Register *msg; |
171 | 171 | ||
172 | dh->reconnect_task = GNUNET_SCHEDULER_NO_TASK; | 172 | dh->reconnect_task = NULL; |
173 | dh->dns_connection = GNUNET_CLIENT_connect ("dns", dh->cfg); | 173 | dh->dns_connection = GNUNET_CLIENT_connect ("dns", dh->cfg); |
174 | if (NULL == dh->dns_connection) | 174 | if (NULL == dh->dns_connection) |
175 | return; | 175 | return; |
@@ -508,10 +508,10 @@ GNUNET_DNS_connect (const struct GNUNET_CONFIGURATION_Handle *cfg, | |||
508 | void | 508 | void |
509 | GNUNET_DNS_disconnect (struct GNUNET_DNS_Handle *dh) | 509 | GNUNET_DNS_disconnect (struct GNUNET_DNS_Handle *dh) |
510 | { | 510 | { |
511 | if (GNUNET_SCHEDULER_NO_TASK != dh->reconnect_task) | 511 | if (NULL != dh->reconnect_task) |
512 | { | 512 | { |
513 | GNUNET_SCHEDULER_cancel (dh->reconnect_task); | 513 | GNUNET_SCHEDULER_cancel (dh->reconnect_task); |
514 | dh->reconnect_task = GNUNET_SCHEDULER_NO_TASK; | 514 | dh->reconnect_task = NULL; |
515 | } | 515 | } |
516 | disconnect (dh); | 516 | disconnect (dh); |
517 | /* make sure client has no pending requests left over! */ | 517 | /* make sure client has no pending requests left over! */ |