diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/gns/gnunet-dns2gns.c | 4 | ||||
-rw-r--r-- | src/gns/gnunet-service-gns_resolver.c | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/src/gns/gnunet-dns2gns.c b/src/gns/gnunet-dns2gns.c index de3ede6e23..67f7e4ac1b 100644 --- a/src/gns/gnunet-dns2gns.c +++ b/src/gns/gnunet-dns2gns.c @@ -217,6 +217,8 @@ do_timeout (void *cls, GNUNET_DNSPARSER_free_packet (request->packet); if (NULL != request->lookup) GNUNET_GNS_cancel_lookup_request (request->lookup); + if (NULL != request->dns_lookup) + GNUNET_DNSSTUB_resolve_cancel (request->dns_lookup); GNUNET_free (request); } @@ -237,10 +239,12 @@ dns_result_processor (void *cls, size_t r) { struct Request *request = cls; + request->packet = GNUNET_DNSPARSER_parse ((char*)dns, r); send_response (request); } + /** * Iterator called on obtained result for a GNS * lookup diff --git a/src/gns/gnunet-service-gns_resolver.c b/src/gns/gnunet-service-gns_resolver.c index c6538aba06..11ea5a993d 100644 --- a/src/gns/gnunet-service-gns_resolver.c +++ b/src/gns/gnunet-service-gns_resolver.c @@ -4186,9 +4186,9 @@ gns_resolver_shorten_name (struct GNUNET_CRYPTO_ShortHashCode *zone, else { GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Unknown TLD in %s\n", name); + GNUNET_CONTAINER_DLL_remove (nsh_head, nsh_tail, rh); GNUNET_free (rh); GNUNET_free (nsh); - GNUNET_CONTAINER_DLL_remove (nsh_head, nsh_tail, rh); proc (proc_cls, name); return; } |