]> git.ipfire.org Git - thirdparty/nftables.git/commitdiff
netlink_delinearize: Fix suspicious calloc() call
authorPhil Sutter <phil@nwl.cc>
Fri, 11 Jun 2021 15:02:01 +0000 (17:02 +0200)
committerPhil Sutter <phil@nwl.cc>
Mon, 14 Jun 2021 11:31:07 +0000 (13:31 +0200)
Parameter passed to sizeof() was wrong. While being at it, replace the
whole call with xmalloc_array() which takes care of error checking.

Fixes: 913979f882d13 ("src: add expression handler hashtable")
Signed-off-by: Phil Sutter <phil@nwl.cc>
src/netlink_delinearize.c

index a71d06d7fe12f2f0e8410a134e55cdbef91e0b5b..9a1cf3c4f7d9022f1ed62bf85a353a7e09a375ee 100644 (file)
@@ -1733,9 +1733,8 @@ void expr_handler_init(void)
        unsigned int i;
        uint32_t hash;
 
-       expr_handle_ht = calloc(NFT_EXPR_HSIZE, sizeof(expr_handle_ht));
-       if (!expr_handle_ht)
-               memory_allocation_error();
+       expr_handle_ht = xmalloc_array(NFT_EXPR_HSIZE,
+                                      sizeof(expr_handle_ht[0]));
 
        for (i = 0; i < array_size(netlink_parsers); i++) {
                hash = djb_hash(netlink_parsers[i].name) % NFT_EXPR_HSIZE;