File: 805.patch

package info (click to toggle)
dlt-daemon 3.0.0-4
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 7,296 kB
  • sloc: ansic: 58,041; cpp: 16,199; sh: 1,769; xml: 1,440; python: 376; makefile: 31
file content (25 lines) | stat: -rw-r--r-- 1,043 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
From 493a7ce8cd9dea908d8573406b4391f4260d9714 Mon Sep 17 00:00:00 2001
From: Shangzhi-Xu <63028857+ShangzhiXu@users.noreply.github.com>
Date: Fri, 26 Dec 2025 23:07:16 +1100
Subject: [PATCH] Add JSON type validation for parsed JSON

---
 src/console/dlt-control-common.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/console/dlt-control-common.c b/src/console/dlt-control-common.c
index 2aeea2800..9df8c4811 100644
--- a/src/console/dlt-control-common.c
+++ b/src/console/dlt-control-common.c
@@ -728,7 +728,10 @@ DltReturnValue dlt_json_filter_load(DltFilter *filter, const char *filename, int
     }
 
     j_parsed_json = json_tokener_parse_verbose(buffer, &jerr);
-
+    if (json_object_get_type(j_parsed_json) != json_type_object) {
+        pr_error("Invalid JSON type, expected object\n");
+        return DLT_RETURN_ERROR;
+    }
     if (jerr != json_tokener_success) {
         pr_error("Faild to parse given filter %s: %s\n", filename, json_tokener_error_desc(jerr));
         return DLT_RETURN_ERROR;