netfilter: xt_hashlimit: use struct_size() helper
Subsystems (3)
PATCH 1/1 netfilter: xt_hashlimit: use struct_size() helper
Make use of the struct_size() helper instead of an open-coded version in order to avoid any potential type mistakes, in particular in the context in which this code is being used.
So, replace code of the following form:
sizeof(struct xt_hashlimit_htable) + sizeof(struct hlist_head) * size
with:
struct_size(hinfo, hash, size)
This code was detected with the help of Coccinelle.
--- net/netfilter/xt_hashlimit.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
net/netfilter/xt_hashlimit.c +1 -2
@@ -288,8 +288,7 @@ static int htable_create(struct net *net, struct hashlimit_cfg3 *cfg, size =16 ; }/* FIXME: don't use vmalloc() here or anywhere else -HW */ - hinfo =vmalloc (sizeof (struct xt_hashlimit_htable ) + -sizeof (struct hlist_head ) * size); + hinfo =vmalloc (struct_size (hinfo, hash, size));if (hinfo ==NULL )return -ENOMEM ; *out_hinfo = hinfo;
Signature · 1 line
2.21.0
Quoted 6 lines · Gustavo A. R. Silva
Make use of the
struct_size()helper instead of an open-coded version in order to avoid any potential type mistakes, in particular in the context in which this code is being used.So, replace code of the following form:
Quoted 7 lines
sizeof(struct xt_hashlimit_htable)+sizeof(struct hlist_head)* sizewith:
struct_size(hinfo, hash, size)This code was detected with the help of Coccinelle.
Applied, thanks.