From: Christian Grothoff Date: Mon, 2 Jul 2012 23:16:38 +0000 (+0000) Subject: -LRN: check for .gnunet TLD explicitly fail if it is not X-Git-Tag: initial-import-from-subversion-38251~12684 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=f19244feafa3675f0d8ba0d3aa3afb613160cf1a;p=oweals%2Fgnunet.git -LRN: check for .gnunet TLD explicitly fail if it is not --- diff --git a/src/gns/gnunet-service-gns_resolver.c b/src/gns/gnunet-service-gns_resolver.c index af90b28fa..feb49ade1 100644 --- a/src/gns/gnunet-service-gns_resolver.c +++ b/src/gns/gnunet-service-gns_resolver.c @@ -4359,7 +4359,7 @@ gns_resolver_shorten_name (struct GNUNET_CRYPTO_ShortHashCode *zone, return; } - else + else if (is_gnunet_tld (name) == GNUNET_YES) { GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "TLD is gnunet\n"); @@ -4371,6 +4371,15 @@ gns_resolver_shorten_name (struct GNUNET_CRYPTO_ShortHashCode *zone, memcpy (rh->name, name, strlen (name)-strlen (GNUNET_GNS_TLD) - 1); } + else + { + GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Unknown TLD in %s\n", name); + GNUNET_free (rh); + GNUNET_free (nsh); + GNUNET_CONTAINER_DLL_remove (nsh_head, nsh_tail, rh); + proc (proc_cls, name); + return; + } rh->authority_chain_head = GNUNET_malloc (sizeof (struct AuthorityChain)); rh->authority_chain_tail = rh->authority_chain_head;