diff options
-rw-r--r-- | src/gns/gnunet-service-gns_resolver.c | 17 | ||||
-rwxr-xr-x | src/gns/test_gns_zkey_lookup.sh | 4 |
2 files changed, 6 insertions, 15 deletions
diff --git a/src/gns/gnunet-service-gns_resolver.c b/src/gns/gnunet-service-gns_resolver.c index 6ff4857f6..c881b6b83 100644 --- a/src/gns/gnunet-service-gns_resolver.c +++ b/src/gns/gnunet-service-gns_resolver.c | |||
@@ -1999,9 +1999,7 @@ static void | |||
1999 | start_resolver_lookup (struct GNS_ResolverHandle *rh) | 1999 | start_resolver_lookup (struct GNS_ResolverHandle *rh) |
2000 | { | 2000 | { |
2001 | struct AuthorityChain *ac; | 2001 | struct AuthorityChain *ac; |
2002 | char *x; | ||
2003 | char *y; | 2002 | char *y; |
2004 | char *pkey; | ||
2005 | 2003 | ||
2006 | if ( ( (GNUNET_YES == is_canonical (rh->name)) && | 2004 | if ( ( (GNUNET_YES == is_canonical (rh->name)) && |
2007 | (0 != strcmp (GNUNET_GNS_TLD, rh->name)) ) || | 2005 | (0 != strcmp (GNUNET_GNS_TLD, rh->name)) ) || |
@@ -2038,26 +2036,19 @@ start_resolver_lookup (struct GNS_ResolverHandle *rh) | |||
2038 | /* Name ends with ".zkey", try to replace authority zone with zkey | 2036 | /* Name ends with ".zkey", try to replace authority zone with zkey |
2039 | authority */ | 2037 | authority */ |
2040 | GNUNET_free (resolver_lookup_get_next_label (rh)); /* will return "zkey" */ | 2038 | GNUNET_free (resolver_lookup_get_next_label (rh)); /* will return "zkey" */ |
2041 | x = resolver_lookup_get_next_label (rh); /* will return 'x' coordinate */ | ||
2042 | y = resolver_lookup_get_next_label (rh); /* will return 'y' coordinate */ | 2039 | y = resolver_lookup_get_next_label (rh); /* will return 'y' coordinate */ |
2043 | GNUNET_asprintf (&pkey, | 2040 | if ( (NULL == y) || |
2044 | "%s%s", | ||
2045 | x, y); | ||
2046 | if ( (NULL == x) || | ||
2047 | (NULL == y) || | ||
2048 | (GNUNET_OK != | 2041 | (GNUNET_OK != |
2049 | GNUNET_CRYPTO_ecdsa_public_key_from_string (pkey, | 2042 | GNUNET_CRYPTO_ecdsa_public_key_from_string (y, |
2050 | strlen (pkey), | 2043 | strlen (y), |
2051 | &rh->authority_zone)) ) | 2044 | &rh->authority_zone)) ) |
2052 | { | 2045 | { |
2053 | GNUNET_log (GNUNET_ERROR_TYPE_WARNING, | 2046 | GNUNET_log (GNUNET_ERROR_TYPE_WARNING, |
2054 | _("Hostname `%s' is not well-formed, resolution fails\n"), | 2047 | _("Hostname `%s' is not well-formed, resolution fails\n"), |
2055 | rh->name); | 2048 | rh->name); |
2056 | rh->task_id = GNUNET_SCHEDULER_add_now (&fail_resolution, rh); | 2049 | rh->task_id = GNUNET_SCHEDULER_add_now (&fail_resolution, rh); |
2057 | } | 2050 | } |
2058 | GNUNET_free_non_null (x); | ||
2059 | GNUNET_free_non_null (y); | 2051 | GNUNET_free_non_null (y); |
2060 | GNUNET_free (pkey); | ||
2061 | } | 2052 | } |
2062 | else | 2053 | else |
2063 | { | 2054 | { |
diff --git a/src/gns/test_gns_zkey_lookup.sh b/src/gns/test_gns_zkey_lookup.sh index dbf4f1f12..79f5908a2 100755 --- a/src/gns/test_gns_zkey_lookup.sh +++ b/src/gns/test_gns_zkey_lookup.sh | |||
@@ -10,7 +10,7 @@ DELEGATED_PKEY=$(gnunet-identity -d -c test_gns_lookup.conf | grep delegatedego | |||
10 | gnunet-identity -C testego -c test_gns_lookup.conf | 10 | gnunet-identity -C testego -c test_gns_lookup.conf |
11 | gnunet-namestore -p -z testego -a -n b -t PKEY -V $DELEGATED_PKEY -e never -c test_gns_lookup.conf | 11 | gnunet-namestore -p -z testego -a -n b -t PKEY -V $DELEGATED_PKEY -e never -c test_gns_lookup.conf |
12 | gnunet-namestore -p -z delegatedego -a -n www -t A -V $TEST_IP -e never -c test_gns_lookup.conf | 12 | gnunet-namestore -p -z delegatedego -a -n www -t A -V $TEST_IP -e never -c test_gns_lookup.conf |
13 | RES_IP=`$DO_TIMEOUT gnunet-gns --raw -z testego -u www.$DELEGATED_PKEY'.zkey' -t A -c test_gns_lookup.conf` | 13 | RES_IP=`$DO_TIMEOUT gnunet-gns --raw -z testego -u www.${DELEGATED_PKEY}.zkey -t A -c test_gns_lookup.conf` |
14 | gnunet-namestore -z testego -d -n b -t PKEY -V $DELEGATED_PKEY -e never -c test_gns_lookup.conf | 14 | gnunet-namestore -z testego -d -n b -t PKEY -V $DELEGATED_PKEY -e never -c test_gns_lookup.conf |
15 | gnunet-namestore -z delegatedego -d -n www -t A -V $TEST_IP -e never -c test_gns_lookup.conf | 15 | gnunet-namestore -z delegatedego -d -n www -t A -V $TEST_IP -e never -c test_gns_lookup.conf |
16 | gnunet-arm -e -c test_gns_lookup.conf | 16 | gnunet-arm -e -c test_gns_lookup.conf |
@@ -19,6 +19,6 @@ if [ "$RES_IP" == "$TEST_IP" ] | |||
19 | then | 19 | then |
20 | exit 0 | 20 | exit 0 |
21 | else | 21 | else |
22 | echo "Failed to resolve to proper IP, got $RES_IP." | 22 | echo "Failed to resolve to proper IP, got $RES_IP, wanted $TEST_IP." |
23 | exit 1 | 23 | exit 1 |
24 | fi | 24 | fi |