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)
committerPablo Neira Ayuso <pablo@netfilter.org>
Wed, 21 Feb 2024 23:14:54 +0000 (00:14 +0100)
commit9e0f0430389be7696396c62f037be4bf72cf93e3
treeffcb26915d29a51fd6e2c869072eb4abc7d89eb6
parentbccebf64701735533c8db37773eeacc6566cc8ec
netfilter: nft_flow_offload: reset dst in route object after setting up flow

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>
include/net/netfilter/nf_flow_table.h
net/netfilter/nf_flow_table_core.c