Pass the location via the handle so the error leg in
rule_translate_index() can reference it. Applies to invalid references
to tables, chains, and indexes.
Fixes: 586ad210368b ("libnftables: Implement JSON parser")
Signed-off-by: Eric Garver <[email protected]>
---
src/parser_json.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/parser_json.c b/src/parser_json.c
index 10ce259f0241..3fbb4457ddac 100644
--- a/src/parser_json.c
+++ b/src/parser_json.c
@@ -2429,7 +2429,11 @@ static struct cmd *json_parse_cmd_add_chain(struct
json_ctx *ctx, json_t *root,
static struct cmd *json_parse_cmd_add_rule(struct json_ctx *ctx, json_t *root,
enum cmd_ops op, enum cmd_obj obj)
{
- struct handle h = { 0 };
+ struct handle h = {
+ .table.location = *int_loc,
+ .chain.location = *int_loc,
+ .index.location = *int_loc,
+ };
const char *family = "", *comment = NULL;
struct rule *rule;
size_t index;
--
2.20.1