summaryrefslogtreecommitdiffstats
path: root/src/mnl.c
diff options
context:
space:
mode:
authorFlorian Westphal <fw@strlen.de>2019-01-16 13:54:13 +0100
committerFlorian Westphal <fw@strlen.de>2019-01-18 23:01:20 +0100
commitf30e5fe55f252558f6b78c436595051b0506b8c6 (patch)
tree0a4dd6fa91f4e5a549822e8342d9ade42ffb0f33 /src/mnl.c
parentce2651222911f09ca838fbdd29b5b2e0ff5f262f (diff)
mnl: name is ignored when deleting a table
nlt is reallocated, leaking first allocation and also removing the table name/handle that was set on nlt object. Add a test case for this as well, the batch is supposed to fail when trying to delete a non-existant table, rather than wiping all tables in the same address family. Fixes: 12c362e2214a0 ("mnl: remove alloc_nftnl_table()") Reported-by: Mikhail Morfikov <mmorfikov@gmail.com> Signed-off-by: Florian Westphal <fw@strlen.de>
Diffstat (limited to 'src/mnl.c')
-rw-r--r--src/mnl.c4
1 files changed, 0 insertions, 4 deletions
diff --git a/src/mnl.c b/src/mnl.c
index c3d16774..dde232c7 100644
--- a/src/mnl.c
+++ b/src/mnl.c
@@ -664,10 +664,6 @@ int mnl_nft_table_del(struct netlink_ctx *ctx, const struct cmd *cmd)
nftnl_table_set_u64(nlt, NFTNL_TABLE_HANDLE,
cmd->handle.handle.id);
- nlt = nftnl_table_alloc();
- if (nlt == NULL)
- memory_allocation_error();
-
nlh = nftnl_nlmsg_build_hdr(nftnl_batch_buffer(ctx->batch),
NFT_MSG_DELTABLE,
cmd->handle.family,