Disallow empty concatenation in set declaration in json.
internal:0:0-0: Error: Empty concatenation
internal:0:0-0: Error: Invalid set type.
internal:0:0-0: Error: Parsing command array at index 1 failed.
Joint work with Florian Westphal.
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
}
compound_expr_add(expr, i);
}
+
+ if (list_empty(&expr->expressions)) {
+ json_error(ctx, "Empty concatenation");
+ expr_free(expr);
+ return NULL;
+ }
+
return expr;
} else if (json_is_object(root)) {
const char *key;
--- /dev/null
+{
+ "nftables": [
+ {
+ "table": { "family": "ip",
+ "name": "t",
+ "handle": 0
+ }
+ },
+ {
+ "set": {
+ "family": "ip",
+ "name": "s",
+ "table": "t",
+ "type": [
+ ],
+ "elem": [
+ {
+ "concat": [
+ "foo", "bar"
+ ]
+ }
+ ]
+ }
+ }
+ ]
+}
+