mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-01 14:44:12 +00:00
netfilter: nf_tables: typo NULL check in _clone() function
commit51edb2ff1c
upstream. This should check for NULL in case memory allocation fails. Reported-by: Julian Wiedmann <jwiedmann.dev@gmail.com> Fixes:3b9e2ea6c1
("netfilter: nft_limit: move stateful fields out of expression data") Fixes:37f319f37d
("netfilter: nft_connlimit: move stateful fields out of expression data") Fixes:33a24de37e
("netfilter: nft_last: move stateful fields out of expression data") Fixes:ed0a0c60f0
("netfilter: nft_quota: move stateful fields out of expression data") Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org> Link: https://lore.kernel.org/r/20220110194817.53481-1-pablo@netfilter.org Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
0f2dca5165
commit
10823cfe8e
4 changed files with 4 additions and 4 deletions
|
@ -206,7 +206,7 @@ static int nft_connlimit_clone(struct nft_expr *dst, const struct nft_expr *src)
|
|||
struct nft_connlimit *priv_src = nft_expr_priv(src);
|
||||
|
||||
priv_dst->list = kmalloc(sizeof(*priv_dst->list), GFP_ATOMIC);
|
||||
if (priv_dst->list)
|
||||
if (!priv_dst->list)
|
||||
return -ENOMEM;
|
||||
|
||||
nf_conncount_list_init(priv_dst->list);
|
||||
|
|
|
@ -106,7 +106,7 @@ static int nft_last_clone(struct nft_expr *dst, const struct nft_expr *src)
|
|||
struct nft_last_priv *priv_dst = nft_expr_priv(dst);
|
||||
|
||||
priv_dst->last = kzalloc(sizeof(*priv_dst->last), GFP_ATOMIC);
|
||||
if (priv_dst->last)
|
||||
if (!priv_dst->last)
|
||||
return -ENOMEM;
|
||||
|
||||
return 0;
|
||||
|
|
|
@ -150,7 +150,7 @@ static int nft_limit_clone(struct nft_limit_priv *priv_dst,
|
|||
priv_dst->invert = priv_src->invert;
|
||||
|
||||
priv_dst->limit = kmalloc(sizeof(*priv_dst->limit), GFP_ATOMIC);
|
||||
if (priv_dst->limit)
|
||||
if (!priv_dst->limit)
|
||||
return -ENOMEM;
|
||||
|
||||
spin_lock_init(&priv_dst->limit->lock);
|
||||
|
|
|
@ -237,7 +237,7 @@ static int nft_quota_clone(struct nft_expr *dst, const struct nft_expr *src)
|
|||
struct nft_quota *priv_dst = nft_expr_priv(dst);
|
||||
|
||||
priv_dst->consumed = kmalloc(sizeof(*priv_dst->consumed), GFP_ATOMIC);
|
||||
if (priv_dst->consumed)
|
||||
if (!priv_dst->consumed)
|
||||
return -ENOMEM;
|
||||
|
||||
atomic64_set(priv_dst->consumed, 0);
|
||||
|
|
Loading…
Reference in a new issue