diff options
Diffstat (limited to 'src/gns/plugin_block_gns.c')
-rw-r--r-- | src/gns/plugin_block_gns.c | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/src/gns/plugin_block_gns.c b/src/gns/plugin_block_gns.c index 4c8ab3eb9..329088280 100644 --- a/src/gns/plugin_block_gns.c +++ b/src/gns/plugin_block_gns.c | |||
@@ -75,6 +75,9 @@ block_plugin_gns_evaluate (void *cls, enum GNUNET_BLOCK_Type type, | |||
75 | uint32_t record_xquery; | 75 | uint32_t record_xquery; |
76 | unsigned int record_match; | 76 | unsigned int record_match; |
77 | 77 | ||
78 | GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, | ||
79 | "BLOCK_TEST\n"); | ||
80 | |||
78 | if (type != GNUNET_BLOCK_TYPE_GNS_NAMERECORD) | 81 | if (type != GNUNET_BLOCK_TYPE_GNS_NAMERECORD) |
79 | return GNUNET_BLOCK_EVALUATION_TYPE_NOT_SUPPORTED; | 82 | return GNUNET_BLOCK_EVALUATION_TYPE_NOT_SUPPORTED; |
80 | if (reply_block_size == 0) | 83 | if (reply_block_size == 0) |
@@ -90,6 +93,15 @@ block_plugin_gns_evaluate (void *cls, enum GNUNET_BLOCK_Type type, | |||
90 | 93 | ||
91 | GNUNET_CRYPTO_hash_xor(&pkey_hash, &name_hash, &query_key); | 94 | GNUNET_CRYPTO_hash_xor(&pkey_hash, &name_hash, &query_key); |
92 | 95 | ||
96 | struct GNUNET_CRYPTO_HashAsciiEncoded xor_exp; | ||
97 | struct GNUNET_CRYPTO_HashAsciiEncoded xor_got; | ||
98 | GNUNET_CRYPTO_hash_to_enc (&query_key, &xor_exp); | ||
99 | GNUNET_CRYPTO_hash_to_enc (query, &xor_got); | ||
100 | |||
101 | GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, | ||
102 | "BLOCK_TEST for %s got %s expected %s\n", | ||
103 | name, (char*) &xor_got, (char*) &xor_exp); | ||
104 | |||
93 | /* Check query key against public key */ | 105 | /* Check query key against public key */ |
94 | if (0 != GNUNET_CRYPTO_hash_cmp(query, &query_key)) | 106 | if (0 != GNUNET_CRYPTO_hash_cmp(query, &query_key)) |
95 | return GNUNET_BLOCK_EVALUATION_REQUEST_VALID; | 107 | return GNUNET_BLOCK_EVALUATION_REQUEST_VALID; |
@@ -124,6 +136,9 @@ block_plugin_gns_evaluate (void *cls, enum GNUNET_BLOCK_Type type, | |||
124 | { | 136 | { |
125 | 137 | ||
126 | exp = GNUNET_TIME_absolute_min (exp, rd[i].expiration); | 138 | exp = GNUNET_TIME_absolute_min (exp, rd[i].expiration); |
139 | |||
140 | GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, | ||
141 | "Got record of size %d\n", rd[i].data_size); | ||
127 | 142 | ||
128 | if ((record_xquery != 0) | 143 | if ((record_xquery != 0) |
129 | && (rd[i].record_type == record_xquery)) | 144 | && (rd[i].record_type == record_xquery)) |
@@ -131,6 +146,10 @@ block_plugin_gns_evaluate (void *cls, enum GNUNET_BLOCK_Type type, | |||
131 | record_match++; | 146 | record_match++; |
132 | } | 147 | } |
133 | } | 148 | } |
149 | |||
150 | GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, | ||
151 | "Verifying signature of %d records for name %s\n", | ||
152 | rd_count, name); | ||
134 | 153 | ||
135 | if (GNUNET_OK != GNUNET_NAMESTORE_verify_signature (&nrb->public_key, | 154 | if (GNUNET_OK != GNUNET_NAMESTORE_verify_signature (&nrb->public_key, |
136 | exp, | 155 | exp, |
@@ -144,9 +163,12 @@ block_plugin_gns_evaluate (void *cls, enum GNUNET_BLOCK_Type type, | |||
144 | } | 163 | } |
145 | } | 164 | } |
146 | 165 | ||
147 | //No record matches query | ||
148 | if ((record_xquery != 0) && (record_match == 0)) | 166 | if ((record_xquery != 0) && (record_match == 0)) |
167 | { | ||
168 | GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, | ||
169 | "No record matches query!\n"); | ||
149 | return GNUNET_BLOCK_EVALUATION_REQUEST_VALID; | 170 | return GNUNET_BLOCK_EVALUATION_REQUEST_VALID; |
171 | } | ||
150 | 172 | ||
151 | GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, "Records match\n"); | 173 | GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, "Records match\n"); |
152 | 174 | ||