mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-01-20 04:06:11 +07:00
netfilter: nf_tables: fix memory leak if expr init fails
If expr init fails then we need to free it. So when the user add a nft rule as follows: # nft add rule filter input tcp dport 22 flow table ssh \ { ip saddr limit rate 0/second } memory leak will happen. Signed-off-by: Liping Zhang <liping.zhang@spreadtrum.com> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
This commit is contained in:
parent
acd43fe85b
commit
6cafaf4764
@ -1724,9 +1724,11 @@ struct nft_expr *nft_expr_init(const struct nft_ctx *ctx,
|
||||
|
||||
err = nf_tables_newexpr(ctx, &info, expr);
|
||||
if (err < 0)
|
||||
goto err2;
|
||||
goto err3;
|
||||
|
||||
return expr;
|
||||
err3:
|
||||
kfree(expr);
|
||||
err2:
|
||||
module_put(info.ops->type->owner);
|
||||
err1:
|
||||
|
Loading…
Reference in New Issue
Block a user