aboutsummaryrefslogtreecommitdiff
path: root/src/gns/gnunet-service-gns_resolver.h
diff options
context:
space:
mode:
authorMartin Schanzenbach <mschanzenbach@posteo.de>2012-03-16 14:32:07 +0000
committerMartin Schanzenbach <mschanzenbach@posteo.de>2012-03-16 14:32:07 +0000
commit00da095d9d83afea982baa79b8075a35d41be834 (patch)
treef4b26258b5184695b3bc31b2bbd9d1057903e430 /src/gns/gnunet-service-gns_resolver.h
parent2364b11771c64de0fb120d44f7cf41290f503cbc (diff)
downloadgnunet-00da095d9d83afea982baa79b8075a35d41be834.tar.gz
gnunet-00da095d9d83afea982baa79b8075a35d41be834.zip
-pseu caching + test
Diffstat (limited to 'src/gns/gnunet-service-gns_resolver.h')
-rw-r--r--src/gns/gnunet-service-gns_resolver.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/gns/gnunet-service-gns_resolver.h b/src/gns/gnunet-service-gns_resolver.h
index 79e916015..a7f86a2d7 100644
--- a/src/gns/gnunet-service-gns_resolver.h
+++ b/src/gns/gnunet-service-gns_resolver.h
@@ -32,6 +32,7 @@ struct AuthorityChain
32/* handle to a resolution process */ 32/* handle to a resolution process */
33struct ResolverHandle; 33struct ResolverHandle;
34 34
35
35/** 36/**
36 * processor for a resultion result 37 * processor for a resultion result
37 * 38 *
@@ -131,6 +132,8 @@ struct ResolverHandle
131 /* status of the resolution result */ 132 /* status of the resolution result */
132 enum ResolutionStatus status; 133 enum ResolutionStatus status;
133 134
135 struct GNUNET_CRYPTO_RsaPrivateKey *priv_key;
136
134}; 137};
135 138
136 139
@@ -187,6 +190,33 @@ struct GetNameAuthorityHandle
187}; 190};
188 191
189/** 192/**
193 * Handle to a pseu lookup
194 */
195struct GetPseuAuthorityHandle
196{
197 /* the name given from delegation */
198 char* name;
199
200 /* name to store the pseu under */
201 char* new_name;
202
203 /* the zone of discovered authority */
204 GNUNET_HashCode new_zone;
205
206 /* the zone of our authority */
207 GNUNET_HashCode zone;
208
209 /* the private key of the zone to store the pseu in */
210 struct GNUNET_CRYPTO_RsaPrivateKey *key;
211
212 /* a handle for dht lookups. should be NULL if no lookups are in progress */
213 struct GNUNET_DHT_GetHandle *get_handle;
214
215 /* timeout task for dht lookups */
216 GNUNET_SCHEDULER_TaskIdentifier dht_timeout;
217};
218
219/**
190 * Initialize the resolver 220 * Initialize the resolver
191 * 221 *
192 * @param nh handle to the namestore 222 * @param nh handle to the namestore
@@ -203,6 +233,8 @@ gns_resolver_init(struct GNUNET_NAMESTORE_Handle *nh,
203 * 233 *
204 * @param zone the root zone 234 * @param zone the root zone
205 * @param record_type the record type to look up 235 * @param record_type the record type to look up
236 * @param name the name to look up
237 * @param key optional private key for authority caching
206 * @param proc the processor to call 238 * @param proc the processor to call
207 * @param cls the closure to pass to proc 239 * @param cls the closure to pass to proc
208 */ 240 */
@@ -210,6 +242,7 @@ void
210gns_resolver_lookup_record(GNUNET_HashCode zone, 242gns_resolver_lookup_record(GNUNET_HashCode zone,
211 uint32_t record_type, 243 uint32_t record_type,
212 const char* name, 244 const char* name,
245 struct GNUNET_CRYPTO_RsaPrivateKey *key,
213 RecordLookupProcessor proc, 246 RecordLookupProcessor proc,
214 void* cls); 247 void* cls);
215 248