aboutsummaryrefslogtreecommitdiff
path: root/src/secretsharing/secretsharing_api.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/secretsharing/secretsharing_api.c')
-rw-r--r--src/secretsharing/secretsharing_api.c29
1 files changed, 11 insertions, 18 deletions
diff --git a/src/secretsharing/secretsharing_api.c b/src/secretsharing/secretsharing_api.c
index 441164850..e268fc56f 100644
--- a/src/secretsharing/secretsharing_api.c
+++ b/src/secretsharing/secretsharing_api.c
@@ -38,10 +38,6 @@
38 */ 38 */
39struct GNUNET_SECRETSHARING_Session 39struct GNUNET_SECRETSHARING_Session
40{ 40{
41 /**
42 * Client connected to the secretsharing service.
43 */
44 struct GNUNET_CLIENT_Connection *client;
45 41
46 /** 42 /**
47 * Message queue for @e client. 43 * Message queue for @e client.
@@ -65,10 +61,6 @@ struct GNUNET_SECRETSHARING_Session
65 */ 61 */
66struct GNUNET_SECRETSHARING_DecryptionHandle 62struct GNUNET_SECRETSHARING_DecryptionHandle
67{ 63{
68 /**
69 * Client connected to the secretsharing service.
70 */
71 struct GNUNET_CLIENT_Connection *client;
72 64
73 /** 65 /**
74 * Message queue for @e client. 66 * Message queue for @e client.
@@ -226,8 +218,6 @@ GNUNET_SECRETSHARING_session_destroy (struct GNUNET_SECRETSHARING_Session *s)
226{ 218{
227 GNUNET_MQ_destroy (s->mq); 219 GNUNET_MQ_destroy (s->mq);
228 s->mq = NULL; 220 s->mq = NULL;
229 GNUNET_CLIENT_disconnect (s->client);
230 s->client = NULL;
231 GNUNET_free (s); 221 GNUNET_free (s);
232} 222}
233 223
@@ -270,9 +260,10 @@ GNUNET_SECRETSHARING_create_session (const struct GNUNET_CONFIGURATION_Handle *c
270 }; 260 };
271 struct GNUNET_MQ_Envelope *ev; 261 struct GNUNET_MQ_Envelope *ev;
272 struct GNUNET_SECRETSHARING_CreateMessage *msg; 262 struct GNUNET_SECRETSHARING_CreateMessage *msg;
263 struct GNUNET_CLIENT_Connection *client;
273 264
274 s->client = GNUNET_CLIENT_connect ("secretsharing", cfg); 265 client = GNUNET_CLIENT_connect ("secretsharing", cfg);
275 if (NULL == s->client) 266 if (NULL == client)
276 { 267 {
277 /* secretsharing not configured correctly */ 268 /* secretsharing not configured correctly */
278 GNUNET_break (0); 269 GNUNET_break (0);
@@ -281,7 +272,8 @@ GNUNET_SECRETSHARING_create_session (const struct GNUNET_CONFIGURATION_Handle *c
281 } 272 }
282 s->secret_ready_cb = cb; 273 s->secret_ready_cb = cb;
283 s->secret_ready_cls = cls; 274 s->secret_ready_cls = cls;
284 s->mq = GNUNET_MQ_queue_for_connection_client (s->client, mq_handlers, 275 s->mq = GNUNET_MQ_queue_for_connection_client (client,
276 mq_handlers,
285 &handle_session_client_error, 277 &handle_session_client_error,
286 s); 278 s);
287 GNUNET_assert (NULL != s->mq); 279 GNUNET_assert (NULL != s->mq);
@@ -356,13 +348,16 @@ GNUNET_SECRETSHARING_decrypt (const struct GNUNET_CONFIGURATION_Handle *cfg,
356 struct GNUNET_MQ_Envelope *ev; 348 struct GNUNET_MQ_Envelope *ev;
357 struct GNUNET_SECRETSHARING_DecryptRequestMessage *msg; 349 struct GNUNET_SECRETSHARING_DecryptRequestMessage *msg;
358 size_t share_size; 350 size_t share_size;
351 struct GNUNET_CLIENT_Connection *client;
359 352
360 s->client = GNUNET_CLIENT_connect ("secretsharing", cfg); 353 client = GNUNET_CLIENT_connect ("secretsharing", cfg);
354 if (NULL == client)
355 return NULL;
361 s->decrypt_cb = decrypt_cb; 356 s->decrypt_cb = decrypt_cb;
362 s->decrypt_cls = decrypt_cb_cls; 357 s->decrypt_cls = decrypt_cb_cls;
363 GNUNET_assert (NULL != s->client);
364 358
365 s->mq = GNUNET_MQ_queue_for_connection_client (s->client, mq_handlers, 359 s->mq = GNUNET_MQ_queue_for_connection_client (client,
360 mq_handlers,
366 &handle_decrypt_client_error, 361 &handle_decrypt_client_error,
367 s); 362 s);
368 GNUNET_assert (NULL != s->mq); 363 GNUNET_assert (NULL != s->mq);
@@ -505,8 +500,6 @@ GNUNET_SECRETSHARING_decrypt_cancel (struct GNUNET_SECRETSHARING_DecryptionHandl
505{ 500{
506 GNUNET_MQ_destroy (dh->mq); 501 GNUNET_MQ_destroy (dh->mq);
507 dh->mq = NULL; 502 dh->mq = NULL;
508 GNUNET_CLIENT_disconnect (dh->client);
509 dh->client = NULL;
510 GNUNET_free (dh); 503 GNUNET_free (dh);
511} 504}
512 505