aboutsummaryrefslogtreecommitdiff
path: root/src/util/connection.c
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2009-11-15 17:45:26 +0000
committerChristian Grothoff <christian@grothoff.org>2009-11-15 17:45:26 +0000
commitbe9e0f23d0e24c093597e342024f29b0111f7f9b (patch)
treec12998e379db3a11393742786b2ab0c051ad98d1 /src/util/connection.c
parente8e7d2e1cc53e2bfd383a20ebf5f25fbc9ecf98e (diff)
downloadgnunet-be9e0f23d0e24c093597e342024f29b0111f7f9b.tar.gz
gnunet-be9e0f23d0e24c093597e342024f29b0111f7f9b.zip
clean up address probes during destroy as well
Diffstat (limited to 'src/util/connection.c')
-rw-r--r--src/util/connection.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/util/connection.c b/src/util/connection.c
index 468fb750c..16ec8dcea 100644
--- a/src/util/connection.c
+++ b/src/util/connection.c
@@ -452,6 +452,7 @@ destroy_continuation (void *cls,
452{ 452{
453 struct GNUNET_CONNECTION_Handle *sock = cls; 453 struct GNUNET_CONNECTION_Handle *sock = cls;
454 GNUNET_CONNECTION_TransmitReadyNotify notify; 454 GNUNET_CONNECTION_TransmitReadyNotify notify;
455 struct AddressProbe *pos;
455 456
456 GNUNET_assert (sock->dns_active == NULL); 457 GNUNET_assert (sock->dns_active == NULL);
457 if (0 != (sock->ccs & COCO_TRANSMIT_READY)) 458 if (0 != (sock->ccs & COCO_TRANSMIT_READY))
@@ -503,6 +504,13 @@ destroy_continuation (void *cls,
503 GNUNET_RESOLVER_request_cancel (sock->dns_active); 504 GNUNET_RESOLVER_request_cancel (sock->dns_active);
504 sock->dns_active = NULL; 505 sock->dns_active = NULL;
505 } 506 }
507 while (NULL != (pos = sock->ap_head))
508 {
509 GNUNET_break (GNUNET_OK == GNUNET_NETWORK_socket_close (pos->sock));
510 GNUNET_SCHEDULER_cancel (sock->sched, pos->task);
511 GNUNET_CONTAINER_DLL_remove (sock->ap_head, sock->ap_tail, pos);
512 GNUNET_free (pos);
513 }
506 GNUNET_assert (sock->nth.timeout_task == GNUNET_SCHEDULER_NO_TASK); 514 GNUNET_assert (sock->nth.timeout_task == GNUNET_SCHEDULER_NO_TASK);
507 GNUNET_assert (sock->ccs == COCO_NONE); 515 GNUNET_assert (sock->ccs == COCO_NONE);
508 if (NULL != (notify = sock->nth.notify_ready)) 516 if (NULL != (notify = sock->nth.notify_ready))