From 08346cb239c7932209940b0d1f281f79b9008f19 Mon Sep 17 00:00:00 2001 From: Victor Julien Date: Tue, 15 Feb 2022 07:37:02 +0100 Subject: [PATCH] dnp3: update gen script to use jb_set_string_from_bytes Bug: #5080. --- scripts/dnp3-gen/dnp3-gen.py | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/scripts/dnp3-gen/dnp3-gen.py b/scripts/dnp3-gen/dnp3-gen.py index 6b0f14e3f..3c14f1eb9 100755 --- a/scripts/dnp3-gen/dnp3-gen.py +++ b/scripts/dnp3-gen/dnp3-gen.py @@ -175,12 +175,8 @@ void OutputJsonDNP3SetItem(JsonBuilder *js, DNP3Object *object, jb_set_string(js, "data->{{field.name}}", data->{{field.name}}); {% elif field.type == "chararray" %} if (data->{{field.len_field}} > 0) { - /* First create a null terminated string as not all versions - * of jansson have json_stringn. */ - char tmpbuf[data->{{field.len_field}} + 1]; - memcpy(tmpbuf, data->{{field.name}}, data->{{field.len_field}}); - tmpbuf[data->{{field.len_field}}] = '\\0'; - jb_set_string(js, "{{field.name}}", tmpbuf); + jb_set_string_from_bytes( + js, "{{field.name}}", (const uint8_t *)data->{{field.name}}, data->{{field.len_field}}); } else { jb_set_string(js, "{{field.name}}", ""); } -- 2.47.3