]> git.ipfire.org Git - thirdparty/nftables.git/commit
evaluate: clone variable expression if there is more than one reference
authorPablo Neira Ayuso <pablo@netfilter.org>
Fri, 5 Nov 2021 13:43:17 +0000 (14:43 +0100)
committerPablo Neira Ayuso <pablo@netfilter.org>
Mon, 8 Nov 2021 09:59:33 +0000 (10:59 +0100)
commitfe4e527ce2a2fb9b6efa982b521e1397f20134af
tree59bb36beff4d98d6541aad50f4fcd9ac2183ebb3
parentb4b234f5a29e819045679acd95820a7457d4d7de
evaluate: clone variable expression if there is more than one reference

Clone the expression that defines the variable value if there are
multiple references to it in the ruleset. This saves heap memory
consumption in case the variable defines a set with a huge number of
elements.

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
src/evaluate.c
tests/shell/testcases/nft-f/0030variable_reuse_0 [new file with mode: 0755]
tests/shell/testcases/nft-f/dumps/0030variable_reuse_0.nft [new file with mode: 0644]