Report error details when json_load_file() fails

This commit is contained in:
Sergio Correia 2022-12-07 08:36:20 -03:00
parent 491211c342
commit 988322809a
No known key found for this signature in database
GPG Key ID: D0D219ED1F7E762C
2 changed files with 42 additions and 1 deletions

View File

@ -0,0 +1,36 @@
From dac0dd6f729ed6cbdd4c92f5a8b2f5e1c66127fb Mon Sep 17 00:00:00 2001
From: Barry <barry@barrys-emacs.org>
Date: Fri, 25 Nov 2022 16:36:26 +0000
Subject: [PATCH] When json_load_file fails report the error details
information (#103)
* When json_load_file fails report the error details information returned.
This allows for file I/O issues as well as JSON parsing issues
to be reported.
---
src/keys.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/keys.c b/src/keys.c
index 205bbe5..bbfc374 100644
--- a/src/keys.c
+++ b/src/keys.c
@@ -369,9 +369,12 @@ load_keys(const char* jwkdir)
continue;
}
filepath[sizeof(filepath) - 1] = '\0';
- json_auto_t* json = json_load_file(filepath, 0, NULL);
+ json_error_t error;
+ json_auto_t* json = json_load_file(filepath, 0, &error);
if (!json) {
- fprintf(stderr, "Invalid JSON file (%s); skipping\n", filepath);
+ fprintf(stderr, "Cannot load JSON file (%s); skipping\n", filepath);
+ fprintf(stderr, "error text %s, line %d, col %d, pos %d\n",
+ error.text, error.line, error.column, error.position);
continue;
}
--
2.38.1

View File

@ -1,12 +1,14 @@
Name: tang
Version: 11
Release: 1%{?dist}
Release: 2%{?dist}
Summary: Network Presence Binding Daemon
License: GPLv3+
URL: https://github.com/latchset/%{name}
Source0: https://github.com/latchset/%{name}/releases/download/v%{version}/%{name}-%{version}.tar.xz
Patch: 0001-When-json_load_file-fails-report-the-error-details-i.patch
BuildRequires: gcc
BuildRequires: meson
BuildRequires: git-core
@ -97,6 +99,9 @@ fi
%{_mandir}/man1/tangd-rotate-keys.1.*
%changelog
* Wed Dec 07 2022 Sergio Correia <scorreia@redhat.com> - 11-2
- Report error details when json_load_file() fails
* Tue Dec 14 2021 Sergio Correia <scorreia@redhat.com> - 11-1
- New upstream release - v11.
Resolves: CVE-2021-4076