mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-09-24 15:21:29 +02:00
BUG/MINOR: h3: release resources on close
Implement the release app-ops ops for H3 layer. This is used to clean up uni-directional streams and the h3 context. This prevents a memory leak on H3 resources for each connection.
This commit is contained in:
parent
cbc13b71c6
commit
8347f27221
10
src/h3.c
10
src/h3.c
@ -892,6 +892,15 @@ static int h3_init(struct qcc *qcc)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void h3_release(void *ctx)
|
||||||
|
{
|
||||||
|
struct h3 *h3 = ctx;
|
||||||
|
|
||||||
|
h3_uqs_release_all(h3);
|
||||||
|
h3_uqs_tasklets_release(h3);
|
||||||
|
pool_free(pool_head_h3, h3);
|
||||||
|
}
|
||||||
|
|
||||||
/* HTTP/3 application layer operations */
|
/* HTTP/3 application layer operations */
|
||||||
const struct qcc_app_ops h3_ops = {
|
const struct qcc_app_ops h3_ops = {
|
||||||
.init = h3_init,
|
.init = h3_init,
|
||||||
@ -899,4 +908,5 @@ const struct qcc_app_ops h3_ops = {
|
|||||||
.decode_qcs = h3_decode_qcs,
|
.decode_qcs = h3_decode_qcs,
|
||||||
.snd_buf = h3_snd_buf,
|
.snd_buf = h3_snd_buf,
|
||||||
.finalize = h3_finalize,
|
.finalize = h3_finalize,
|
||||||
|
.release = h3_release,
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user