Skip to content

Commit

Permalink
Tidy up on connection close
Browse files Browse the repository at this point in the history
  • Loading branch information
ndptech committed Aug 17, 2023
1 parent d144f48 commit 57fdca1
Showing 1 changed file with 17 additions and 0 deletions.
17 changes: 17 additions & 0 deletions src/lib/io/master.c
Original file line number Diff line number Diff line change
Expand Up @@ -2574,6 +2574,7 @@ static int mod_close(fr_listen_t *li)
fr_io_instance_t const *inst;
fr_io_connection_t *connection;
fr_listen_t *child;
fr_io_client_t *parent;

get_inst(li, &inst, NULL, &connection, &child);

Expand All @@ -2597,6 +2598,22 @@ static int mod_close(fr_listen_t *li)
if (connection->client->pending) {
TALLOC_FREE(connection->client->pending); /* for any pending packets */
}

/*
* Remove connection from parent hash table
*/
parent = connection->parent;
if (parent->ht) {
pthread_mutex_lock(&parent->mutex);
(void) fr_hash_table_delete(parent->ht, connection);
pthread_mutex_unlock(&parent->mutex);
}

/*
* Clean up listener
*/
fr_network_listen_delete(connection->nr, child);

talloc_free(connection->dl_inst);

return 0;
Expand Down

0 comments on commit 57fdca1

Please sign in to comment.