Instead of returning ctx->cmd->table. Note that ctx->cmd->table and
ctx->table points to the same object when all commands are embedded into
the table definition. But this is not true if we mix table definitions
with linear list commands in one file that we load via nft -f.

Reported-by: Martin Bednar <>
Signed-off-by: Pablo Neira Ayuso <>
 src/evaluate.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/evaluate.c b/src/evaluate.c
index c841aafd98a0..cf7ecb96e3b2 100644
--- a/src/evaluate.c
+++ b/src/evaluate.c
@@ -140,7 +140,7 @@ static struct table *table_lookup_global(struct eval_ctx 
        struct table *table;
        if (ctx->table != NULL)
-               return ctx->cmd->table;
+               return ctx->table;
        table = table_lookup(&ctx->cmd->handle);
        if (table == NULL)

To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to
More majordomo info at

Reply via email to