BUG/MAJOR: quic: remove qc from receiver cids tree on free

Remove the quic_conn from the receiver connection_ids tree on
quic_conn_free. This fixes a crash due to dangling references in the
tree after a quic connection release.

This operation must be conducted under the listener lock. For this
reason, the quic_conn now contains a reference to its attached listener.
This commit is contained in:
Amaury Denoyelle
2021-09-30 11:03:28 +02:00
parent d595f108db
commit 2af1985af8
2 changed files with 9 additions and 0 deletions

View File

@@ -657,6 +657,7 @@ struct quic_conn {
struct quic_path paths[1];
struct quic_path *path;
struct listener *li; /* only valid for frontend connections */
/* MUX */
struct qcc *qcc;
struct task *timer_task;