|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen staging] tools/{lib,}xl: fix usage of error return from json_tokener_parse_verbose()
commit 98cdab167938d74fcce5b83260a43610316bafb2
Author: Roger Pau Monne <roger.pau@xxxxxxxxxx>
AuthorDate: Wed Oct 15 13:49:49 2025 +0200
Commit: Roger Pau Monne <roger.pau@xxxxxxxxxx>
CommitDate: Thu Oct 16 17:20:10 2025 +0200
tools/{lib,}xl: fix usage of error return from json_tokener_parse_verbose()
It's possible for json_tokener_parse_verbose() to return NULL and leave the
error parameter unset. Initialize the error variable at definition to an
existing error token to make sure it's not uninitialized in case of
failure.
Reported by XenServer internal Coverity instance.
Fixes: 7e95dab9eb63 ("libxl: Convert libxl__json_parse() to use json-c")
Fixes: f6c6f2679d49 ("libxl: Convert libxl__object_to_json() to json-c")
Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
Reviewed-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
Release-Acked-by: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx>
---
tools/libs/light/libxl_json.c | 2 +-
tools/xl/xl_info.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/tools/libs/light/libxl_json.c b/tools/libs/light/libxl_json.c
index c76ae9f64a..e895cca4cf 100644
--- a/tools/libs/light/libxl_json.c
+++ b/tools/libs/light/libxl_json.c
@@ -1366,7 +1366,7 @@ libxl__json_object *libxl__json_parse(libxl__gc *gc,
const char *s)
libxl__json_object *o = NULL;
#ifdef USE_LIBJSONC_PARSER
json_object *jso;
- enum json_tokener_error error;
+ enum json_tokener_error error = json_tokener_error_parse_unexpected;
jso = json_tokener_parse_verbose(s, &error);
if (!jso) {
diff --git a/tools/xl/xl_info.c b/tools/xl/xl_info.c
index 80a3b25aac..47f4bb7e3f 100644
--- a/tools/xl/xl_info.c
+++ b/tools/xl/xl_info.c
@@ -67,7 +67,7 @@ static int printf_info_one_json(json_object **jso_r, int
domid,
{
json_object *jso = NULL;
json_object *jso_config = NULL;
- enum json_tokener_error error;
+ enum json_tokener_error error = json_tokener_error_parse_unexpected;
char *s = NULL;
int r = EXIT_FAILURE;
--
generated by git-patchbot for /home/xen/git/xen.git#staging
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |