fix mgcp_conn_free_all

It calls itself recursively which messes with the list an ep, so ubsan

Change-Id: If38ead0ba0c28396df2332990c98b2532cf17d1c
Eric Wild 2021-09-06 19:49:24 +02:00 committed by laforge
parent 25ecc91c3b
commit fdbefde869
1 changed files with 2 additions and 4 deletions

View File

@ -328,12 +328,10 @@ void mgcp_conn_free_oldest(struct mgcp_endpoint *endp)
void mgcp_conn_free_all(struct mgcp_endpoint *endp)
struct mgcp_conn *conn;
struct mgcp_conn *conn_tmp;
/* Drop all items in the list */
llist_for_each_entry_safe(conn, conn_tmp, &endp->conns, entry) {
/* Drop all items in the list, might be consecutive! */
while ((conn = llist_first_entry_or_null(&endp->conns, struct mgcp_conn, entry)))
mgcp_conn_free(endp, conn->id);