diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2022-05-13 16:46:31 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2022-05-16 13:44:57 +0200 |
commit | 5774135060bf1ee1ffb9f37133db04b0fdc65df6 (patch) | |
tree | 3fd60770886fa9f38ad5f421c52d1d3470817beb | |
parent | d6fdb0d8d4822c0d78667100e6ef0522a3022bd3 (diff) |
netlink_delinearize: release last register on exit
netlink_release_registers() does not release the expression in the last
32-bit register.
struct netlink_parse_ctx {
...
struct expr *registers[MAX_REGS + 1];
This array is MAX_REGS + 1 (verdict register + 16 32-bit registers).
Fixes: 371c3a0bc3c2 ("netlink_delinearize: release expressions in context registers")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
-rw-r--r-- | src/netlink_delinearize.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/netlink_delinearize.c b/src/netlink_delinearize.c index a1b00dee..068c3bba 100644 --- a/src/netlink_delinearize.c +++ b/src/netlink_delinearize.c @@ -100,7 +100,7 @@ static void netlink_release_registers(struct netlink_parse_ctx *ctx) { int i; - for (i = 0; i < MAX_REGS; i++) + for (i = 0; i <= MAX_REGS; i++) expr_free(ctx->registers[i]); } |