netfilter: nf_tables: Avoid duplicate call to nft_data_uninit() for same key

nft_del_setelem() currently calls nft_data_uninit() twice on the same
key. Once to release the key which is guaranteed to be NFT_DATA_VALUE
and a second time in the error path to which it falls through.

The second call has been harmless so far though because the type
passed is always NFT_DATA_VALUE which is currently a no-op.

Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
This commit is contained in:
Thomas Graf 2014-08-01 17:25:38 +02:00 committed by Pablo Neira Ayuso
parent 8452e6ff3e
commit 0dc1362562

View File

@ -3218,6 +3218,7 @@ static int nft_del_setelem(struct nft_ctx *ctx, struct nft_set *set,
if (set->flags & NFT_SET_MAP) if (set->flags & NFT_SET_MAP)
nft_data_uninit(&elem.data, set->dtype); nft_data_uninit(&elem.data, set->dtype);
return 0;
err2: err2:
nft_data_uninit(&elem.key, desc.type); nft_data_uninit(&elem.key, desc.type);
err1: err1: