aboutsummaryrefslogtreecommitdiff
path: root/src/cadet/cadet_api.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cadet/cadet_api.c')
-rw-r--r--src/cadet/cadet_api.c20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/cadet/cadet_api.c b/src/cadet/cadet_api.c
index 980b9abbf..e2ca461a5 100644
--- a/src/cadet/cadet_api.c
+++ b/src/cadet/cadet_api.c
@@ -841,6 +841,7 @@ handle_mq_error (void *cls,
841 h); 841 h);
842 GNUNET_MQ_destroy (h->mq); 842 GNUNET_MQ_destroy (h->mq);
843 h->mq = NULL; 843 h->mq = NULL;
844 GNUNET_assert (NULL == h->reconnect_task);
844 h->reconnect_task = GNUNET_SCHEDULER_add_delayed (h->reconnect_time, 845 h->reconnect_task = GNUNET_SCHEDULER_add_delayed (h->reconnect_time,
845 &reconnect_cbk, 846 &reconnect_cbk,
846 h); 847 h);
@@ -1253,18 +1254,21 @@ GNUNET_CADET_disconnect (struct GNUNET_CADET_Handle *handle)
1253void 1254void
1254GNUNET_CADET_close_port (struct GNUNET_CADET_Port *p) 1255GNUNET_CADET_close_port (struct GNUNET_CADET_Port *p)
1255{ 1256{
1256 struct GNUNET_CADET_PortMessage *msg;
1257 struct GNUNET_MQ_Envelope *env;
1258
1259 GNUNET_assert (GNUNET_YES == 1257 GNUNET_assert (GNUNET_YES ==
1260 GNUNET_CONTAINER_multihashmap_remove (p->cadet->ports, 1258 GNUNET_CONTAINER_multihashmap_remove (p->cadet->ports,
1261 &p->id, 1259 &p->id,
1262 p)); 1260 p));
1263 env = GNUNET_MQ_msg (msg, 1261 if (NULL != p->cadet->mq)
1264 GNUNET_MESSAGE_TYPE_CADET_LOCAL_PORT_CLOSE); 1262 {
1265 msg->port = p->id; 1263 struct GNUNET_CADET_PortMessage *msg;
1266 GNUNET_MQ_send (p->cadet->mq, 1264 struct GNUNET_MQ_Envelope *env;
1267 env); 1265
1266 env = GNUNET_MQ_msg (msg,
1267 GNUNET_MESSAGE_TYPE_CADET_LOCAL_PORT_CLOSE);
1268 msg->port = p->id;
1269 GNUNET_MQ_send (p->cadet->mq,
1270 env);
1271 }
1268 GNUNET_free_non_null (p->handlers); 1272 GNUNET_free_non_null (p->handlers);
1269 GNUNET_free (p); 1273 GNUNET_free (p);
1270} 1274}