summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorFlorian Westphal <fw@strlen.de>2022-02-07 13:03:20 +0100
committerFlorian Westphal <fw@strlen.de>2022-02-07 14:56:26 +0100
commitc6a5e81c2123c9ee61be152ab620e7e74f5a75ef (patch)
treee4f30cfd11c4428f95c2ce7c34e457089f7c149e /src
parent160d44c91113849b9c09f6bbad159e10ded1ca54 (diff)
parser_json: fix flowtable device datatype
Failed with: BUG: invalid expresion type symbol Fixes: 78bbe7f7a55be489 ("mnl: do not use expr->identifier to fetch device name") Signed-off-by: Florian Westphal <fw@strlen.de>
Diffstat (limited to 'src')
-rw-r--r--src/parser_json.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/parser_json.c b/src/parser_json.c
index f07b798a..2ab01964 100644
--- a/src/parser_json.c
+++ b/src/parser_json.c
@@ -3125,7 +3125,9 @@ static struct expr *json_parse_flowtable_devs(struct json_ctx *ctx,
size_t index;
if (!json_unpack(root, "s", &dev)) {
- tmp = symbol_expr_alloc(int_loc, SYMBOL_VALUE, NULL, dev);
+ tmp = constant_expr_alloc(int_loc, &string_type,
+ BYTEORDER_HOST_ENDIAN,
+ strlen(dev) * BITS_PER_BYTE, dev);
compound_expr_add(expr, tmp);
return expr;
}
@@ -3141,7 +3143,9 @@ static struct expr *json_parse_flowtable_devs(struct json_ctx *ctx,
expr_free(expr);
return NULL;
}
- tmp = symbol_expr_alloc(int_loc, SYMBOL_VALUE, NULL, dev);
+ tmp = constant_expr_alloc(int_loc, &string_type,
+ BYTEORDER_HOST_ENDIAN,
+ strlen(dev) * BITS_PER_BYTE, dev);
compound_expr_add(expr, tmp);
}
return expr;