]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
netfilter: nft_flow_offload: reset dst in route object after setting up flow
authorPablo Neira Ayuso <pablo@netfilter.org>
Wed, 21 Feb 2024 11:32:58 +0000 (12:32 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 1 Mar 2024 12:35:09 +0000 (13:35 +0100)
commit558b00a30e05753a62ecc7e05e939ca8f0241148
tree13d2a27a420e09700ca5daf475fd740bb6ef5c2d
parentf2135bbf14949687e96cabb13d8a91ae3deb9069
netfilter: nft_flow_offload: reset dst in route object after setting up flow

[ Upstream commit 9e0f0430389be7696396c62f037be4bf72cf93e3 ]

dst is transferred to the flow object, route object does not own it
anymore.  Reset dst in route object, otherwise if flow_offload_add()
fails, error path releases dst twice, leading to a refcount underflow.

Fixes: a3c90f7a2323 ("netfilter: nf_tables: flow offload expression")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
include/net/netfilter/nf_flow_table.h
net/netfilter/nf_flow_table_core.c