diff options
Diffstat (limited to 'src/util/resolver_api.c')
-rw-r--r-- | src/util/resolver_api.c | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/src/util/resolver_api.c b/src/util/resolver_api.c index e7a836f03..0488d6a3c 100644 --- a/src/util/resolver_api.c +++ b/src/util/resolver_api.c | |||
@@ -118,7 +118,7 @@ struct GNUNET_RESOLVER_RequestHandle | |||
118 | GNUNET_RESOLVER_HostnameCallback name_callback; | 118 | GNUNET_RESOLVER_HostnameCallback name_callback; |
119 | 119 | ||
120 | /** | 120 | /** |
121 | * Closure for the respective "callback". | 121 | * Closure for the callbacks. |
122 | */ | 122 | */ |
123 | void *cls; | 123 | void *cls; |
124 | 124 | ||
@@ -131,7 +131,7 @@ struct GNUNET_RESOLVER_RequestHandle | |||
131 | * Task handle for making reply callbacks in numeric lookups | 131 | * Task handle for making reply callbacks in numeric lookups |
132 | * asynchronous, and for timeout handling. | 132 | * asynchronous, and for timeout handling. |
133 | */ | 133 | */ |
134 | struct GNUNET_SCHEDULER_Task * task; | 134 | struct GNUNET_SCHEDULER_Task *task; |
135 | 135 | ||
136 | /** | 136 | /** |
137 | * Desired address family. | 137 | * Desired address family. |
@@ -638,6 +638,7 @@ loopback_resolution (void *cls) | |||
638 | rh->addr_callback (rh->cls, | 638 | rh->addr_callback (rh->cls, |
639 | (const struct sockaddr *) &v4, | 639 | (const struct sockaddr *) &v4, |
640 | sizeof (v4)); | 640 | sizeof (v4)); |
641 | |||
641 | break; | 642 | break; |
642 | default: | 643 | default: |
643 | GNUNET_break (0); | 644 | GNUNET_break (0); |
@@ -683,7 +684,7 @@ process_requests () | |||
683 | /* nothing to do, release socket really soon if there is nothing | 684 | /* nothing to do, release socket really soon if there is nothing |
684 | * else happening... */ | 685 | * else happening... */ |
685 | s_task = | 686 | s_task = |
686 | GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_MILLISECONDS, | 687 | GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_SECONDS, |
687 | &shutdown_task, | 688 | &shutdown_task, |
688 | NULL); | 689 | NULL); |
689 | return; | 690 | return; |
@@ -727,14 +728,9 @@ process_requests () | |||
727 | static void | 728 | static void |
728 | reconnect_task (void *cls) | 729 | reconnect_task (void *cls) |
729 | { | 730 | { |
730 | const struct GNUNET_SCHEDULER_TaskContext *tc; | ||
731 | |||
732 | r_task = NULL; | 731 | r_task = NULL; |
733 | if (NULL == req_head) | 732 | if (NULL == req_head) |
734 | return; /* no work pending */ | 733 | return; /* no work pending */ |
735 | tc = GNUNET_SCHEDULER_get_task_context (); | ||
736 | if (0 != (tc->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN)) | ||
737 | return; | ||
738 | LOG (GNUNET_ERROR_TYPE_DEBUG, | 734 | LOG (GNUNET_ERROR_TYPE_DEBUG, |
739 | "Trying to connect to DNS service\n"); | 735 | "Trying to connect to DNS service\n"); |
740 | client = GNUNET_CLIENT_connect ("resolver", | 736 | client = GNUNET_CLIENT_connect ("resolver", |
@@ -774,7 +770,9 @@ reconnect () | |||
774 | break; | 770 | break; |
775 | case GNUNET_SYSERR: | 771 | case GNUNET_SYSERR: |
776 | /* request was cancelled, remove entirely */ | 772 | /* request was cancelled, remove entirely */ |
777 | GNUNET_CONTAINER_DLL_remove (req_head, req_tail, rh); | 773 | GNUNET_CONTAINER_DLL_remove (req_head, |
774 | req_tail, | ||
775 | rh); | ||
778 | GNUNET_free (rh); | 776 | GNUNET_free (rh); |
779 | break; | 777 | break; |
780 | default: | 778 | default: |