mirror of
https://gitea.osmocom.org/cellular-infrastructure/osmo-mgw.git
synced 2025-10-23 08:12:01 +00:00
nat: Clear the queued messages at the end
It is possible that the calls from the loop would queue more messages for the BSC and then we would have a nice memory leak... Move it to the bottom.
This commit is contained in:
@@ -437,10 +437,6 @@ static int ipaccess_msc_write_cb(struct bsc_fd *bfd, struct msgb *msg)
|
||||
static void remove_bsc_connection(struct bsc_connection *connection)
|
||||
{
|
||||
struct sccp_connections *sccp_patch, *tmp;
|
||||
bsc_unregister_fd(&connection->write_queue.bfd);
|
||||
close(connection->write_queue.bfd.fd);
|
||||
write_queue_clear(&connection->write_queue);
|
||||
llist_del(&connection->list_entry);
|
||||
|
||||
/* stop the timeout timer */
|
||||
bsc_del_timer(&connection->id_timeout);
|
||||
@@ -457,6 +453,11 @@ static void remove_bsc_connection(struct bsc_connection *connection)
|
||||
/* close endpoints allocated by this BSC */
|
||||
bsc_mgcp_clear_endpoints_for(connection);
|
||||
|
||||
bsc_unregister_fd(&connection->write_queue.bfd);
|
||||
close(connection->write_queue.bfd.fd);
|
||||
write_queue_clear(&connection->write_queue);
|
||||
llist_del(&connection->list_entry);
|
||||
|
||||
talloc_free(connection);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user