aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2013-12-20 17:07:13 +0000
committerChristian Grothoff <christian@grothoff.org>2013-12-20 17:07:13 +0000
commit674c3c1facec068cd593c03df4d11a0e78db3d8b (patch)
treea38b8363863bfe0ef825118931f1cc590e29da22 /src
parent3c09eea17b954f11cf8c1479d39284e8a2356d5c (diff)
downloadgnunet-674c3c1facec068cd593c03df4d11a0e78db3d8b.tar.gz
gnunet-674c3c1facec068cd593c03df4d11a0e78db3d8b.zip
-fix DHT lookup (thanks, Sree)
Diffstat (limited to 'src')
-rw-r--r--src/gns/gnunet-service-gns_resolver.c20
1 files changed, 16 insertions, 4 deletions
diff --git a/src/gns/gnunet-service-gns_resolver.c b/src/gns/gnunet-service-gns_resolver.c
index f046702e3..80954d8ca 100644
--- a/src/gns/gnunet-service-gns_resolver.c
+++ b/src/gns/gnunet-service-gns_resolver.c
@@ -1937,14 +1937,23 @@ handle_dht_response (void *cls,
1937 co); 1937 co);
1938} 1938}
1939 1939
1940
1941/**
1942 * Initiate a DHT query for a set of GNS records.
1943 *
1944 * @param rh resolution handle
1945 * @param query key to use in the DHT lookup
1946 */
1940static void 1947static void
1941start_dht_request (struct GNS_ResolverHandle *rh, struct GNUNET_HashCode query) 1948start_dht_request (struct GNS_ResolverHandle *rh,
1949 const struct GNUNET_HashCode *query)
1942{ 1950{
1943 struct GNS_ResolverHandle *rx; 1951 struct GNS_ResolverHandle *rx;
1952
1944 GNUNET_assert (NULL == rh->get_handle); 1953 GNUNET_assert (NULL == rh->get_handle);
1945 rh->get_handle = GNUNET_DHT_get_start (dht_handle, 1954 rh->get_handle = GNUNET_DHT_get_start (dht_handle,
1946 GNUNET_BLOCK_TYPE_GNS_NAMERECORD, 1955 GNUNET_BLOCK_TYPE_GNS_NAMERECORD,
1947 &query, 1956 query,
1948 DHT_GNS_REPLICATION_LEVEL, 1957 DHT_GNS_REPLICATION_LEVEL,
1949 GNUNET_DHT_RO_DEMULTIPLEX_EVERYWHERE, 1958 GNUNET_DHT_RO_DEMULTIPLEX_EVERYWHERE,
1950 NULL, 0, 1959 NULL, 0,
@@ -1994,7 +2003,8 @@ handle_namecache_block_response (void *cls,
1994 GNUNET_GNSRECORD_query_from_public_key (auth, 2003 GNUNET_GNSRECORD_query_from_public_key (auth,
1995 label, 2004 label,
1996 &query); 2005 &query);
1997 start_dht_request(rh, query); 2006 start_dht_request (rh, &query);
2007 return;
1998 } 2008 }
1999 2009
2000 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 2010 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
@@ -2055,7 +2065,9 @@ recursive_gns_resolution_namecache (struct GNS_ResolverHandle *rh)
2055 GNUNET_assert (NULL != rh->namecache_qe); 2065 GNUNET_assert (NULL != rh->namecache_qe);
2056 } 2066 }
2057 else 2067 else
2058 start_dht_request (rh, query); 2068 {
2069 start_dht_request (rh, &query);
2070 }
2059} 2071}
2060 2072
2061 2073