BUG/MINOR: proxy/stktable: missing frees on proxy cleanup

In 1b8e68e ("MEDIUM: stick-table: Stop handling stick-tables as proxies.")
we forgot to free the table pointer which is now dynamically allocated.

Let's take this opportunity to also fix a missing free in the table itself
(the table expire task wasn't properly destroyed)

This patch depends on:
 - "MINOR: stktable: add sktable_deinit function"

It should be backported in every stable versions.
This commit is contained in:
Aurelien DARRAGON 2023-11-16 16:18:14 +01:00 committed by Willy Tarreau
parent e10cf61099
commit 2c4943c18b
2 changed files with 3 additions and 0 deletions

View File

@ -389,7 +389,9 @@ void free_proxy(struct proxy *p)
pool_destroy(p->req_cap_pool);
pool_destroy(p->rsp_cap_pool);
stktable_deinit(p->table);
ha_free(&p->table);
HA_RWLOCK_DESTROY(&p->lbprm.lock);
HA_RWLOCK_DESTROY(&p->lock);

View File

@ -875,6 +875,7 @@ void stktable_deinit(struct stktable *t)
{
if (!t)
return;
task_destroy(t->exp_task);
pool_destroy(t->pool);
}