aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/util/connection.c8
-rw-r--r--src/util/server.c3
2 files changed, 10 insertions, 1 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))
diff --git a/src/util/server.c b/src/util/server.c
index e79a824ba..f918ea4ea 100644
--- a/src/util/server.c
+++ b/src/util/server.c
@@ -298,9 +298,10 @@ process_listen_socket (void *cls,
298 "Server accepted incoming connection.\n"); 298 "Server accepted incoming connection.\n");
299#endif 299#endif
300 client = GNUNET_SERVER_connect_socket (server, sock); 300 client = GNUNET_SERVER_connect_socket (server, sock);
301 // GNUNET_CONNECTION_ignore_shutdown (sock, GNUNET_YES);
301 /* decrement reference count, we don't keep "client" alive */ 302 /* decrement reference count, we don't keep "client" alive */
302 GNUNET_SERVER_client_drop (client); 303 GNUNET_SERVER_client_drop (client);
303 } 304 }
304 /* listen for more! */ 305 /* listen for more! */
305 server->listen_task = GNUNET_SCHEDULER_add_select (server->sched, 306 server->listen_task = GNUNET_SCHEDULER_add_select (server->sched,
306 GNUNET_SCHEDULER_PRIORITY_HIGH, 307 GNUNET_SCHEDULER_PRIORITY_HIGH,