fix mgcp_conn_free_all

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

Change-Id: If38ead0ba0c28396df2332990c98b2532cf17d1c
diff --git a/src/libosmo-mgcp/mgcp_conn.c b/src/libosmo-mgcp/mgcp_conn.c
index 4acf18c..4f6e1a2 100644
--- a/src/libosmo-mgcp/mgcp_conn.c
+++ b/src/libosmo-mgcp/mgcp_conn.c
@@ -328,12 +328,10 @@
 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);
-	}
 
 	return;
 }