diff mbox series

[nft,4/6] json: Print single synproxy flags as non-array

Message ID 20250508214722.20808-5-phil@nwl.cc
State Accepted
Headers show
Series Add test for parse_flags_array() | expand

Commit Message

Phil Sutter May 8, 2025, 9:47 p.m. UTC
Signed-off-by: Phil Sutter <phil@nwl.cc>
---
 src/json.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)
diff mbox series

Patch

diff --git a/src/json.c b/src/json.c
index a8b0abeba6396..0034c02f678ff 100644
--- a/src/json.c
+++ b/src/json.c
@@ -1686,10 +1686,14 @@  json_t *synproxy_stmt_json(const struct stmt *stmt, struct output_ctx *octx)
 	if (stmt->synproxy.flags & NF_SYNPROXY_OPT_SACK_PERM)
 		json_array_append_new(flags, json_string("sack-perm"));
 
-	if (json_array_size(flags) > 0)
+	if (json_array_size(flags) > 1) {
 		json_object_set_new(root, "flags", flags);
-	else
+	} else {
+		if (json_array_size(flags))
+			json_object_set(root, "flags",
+					json_array_get(flags, 0));
 		json_decref(flags);
+	}
 
 	if (!json_object_size(root)) {
 		json_decref(root);