!36 [sync] PR-34: Update json-c to 0.16
From: @openeuler-sync-bot Reviewed-by: @yanan-rock Signed-off-by: @yanan-rock
This commit is contained in:
commit
21bf2054ca
@ -1,48 +0,0 @@
|
|||||||
From 296db618e9d1862aea788e90e751b4999db41a2a Mon Sep 17 00:00:00 2001
|
|
||||||
From: Even Rouault <even.rouault@spatialys.com>
|
|
||||||
Date: Wed, 12 Jan 2022 23:43:03 +0100
|
|
||||||
Subject: [PATCH] json_escape_str(): avoid harmless unsigned integer overflow
|
|
||||||
|
|
||||||
Current behaviour is perfectly valid, since wrap-over upon overflow is
|
|
||||||
well defined behaviour for unsigned types, but it is nevertheless nice to be
|
|
||||||
able to build with -fsanitize=undefined,unsigned-integer-overflow
|
|
||||||
|
|
||||||
There is no significant effect on the generated assembly as can be seen
|
|
||||||
on the diff of objdump -d output on a optimized build (the compiler
|
|
||||||
just decided to switch the order of a comparison):
|
|
||||||
|
|
||||||
@@ -135,8 +135,8 @@
|
|
||||||
1d0: 0f 84 70 ff ff ff je 146 <json_escape_str+0x146>
|
|
||||||
1d6: 4c 3b 24 24 cmp (%rsp),%r12
|
|
||||||
1da: 0f 85 2d ff ff ff jne 10d <json_escape_str+0x10d>
|
|
||||||
- 1e0: 49 39 f4 cmp %rsi,%r12
|
|
||||||
- 1e3: 0f 87 b7 00 00 00 ja 2a0 <json_escape_str+0x2a0>
|
|
||||||
+ 1e0: 4c 39 e6 cmp %r12,%rsi
|
|
||||||
+ 1e3: 0f 82 b7 00 00 00 jb 2a0 <json_escape_str+0x2a0>
|
|
||||||
1e9: 48 8b 44 24 18 mov 0x18(%rsp),%rax
|
|
||||||
1ee: 64 48 33 04 25 28 00 xor %fs:0x28,%rax
|
|
||||||
1f5: 00 00
|
|
||||||
|
|
||||||
Conflict:NA
|
|
||||||
Reference:https://github.com/json-c/json-c/commit/296db618e9d1862aea788e90e751b4999db41a2a
|
|
||||||
---
|
|
||||||
json_object.c | 3 ++-
|
|
||||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/json_object.c b/json_object.c
|
|
||||||
index 9198257..3216941 100644
|
|
||||||
--- a/json_object.c
|
|
||||||
+++ b/json_object.c
|
|
||||||
@@ -216,8 +216,9 @@ static int json_escape_str(struct printbuf *pb, const char *str, size_t len, int
|
|
||||||
{
|
|
||||||
int pos = 0, start_offset = 0;
|
|
||||||
unsigned char c;
|
|
||||||
- while (len--)
|
|
||||||
+ while (len)
|
|
||||||
{
|
|
||||||
+ --len;
|
|
||||||
c = str[pos];
|
|
||||||
switch (c)
|
|
||||||
{
|
|
||||||
--
|
|
||||||
2.27.0
|
|
||||||
Binary file not shown.
BIN
json-c-0.16-20220414.tar.gz
Normal file
BIN
json-c-0.16-20220414.tar.gz
Normal file
Binary file not shown.
13
json-c.spec
13
json-c.spec
@ -1,12 +1,12 @@
|
|||||||
%{!?_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
|
%{!?_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
|
||||||
|
|
||||||
%global so_ver 5
|
%global so_ver 5
|
||||||
%global reldate 20200726
|
%global reldate 20220414
|
||||||
|
|
||||||
|
|
||||||
Name: json-c
|
Name: json-c
|
||||||
Version: 0.15
|
Version: 0.16
|
||||||
Release: 5
|
Release: 1
|
||||||
Summary: JSON implementation in C
|
Summary: JSON implementation in C
|
||||||
|
|
||||||
License: MIT
|
License: MIT
|
||||||
@ -27,8 +27,6 @@ Summary: Development files for %{name}
|
|||||||
|
|
||||||
Requires: %{name}%{?_isa} == %{version}-%{release}
|
Requires: %{name}%{?_isa} == %{version}-%{release}
|
||||||
|
|
||||||
Patch6001: backport-json-escape-str-avoid-harmless-unsigned-integer-overflow.patch
|
|
||||||
|
|
||||||
%description devel
|
%description devel
|
||||||
This package contains libraries and header files for
|
This package contains libraries and header files for
|
||||||
developing applications that use %{name}.
|
developing applications that use %{name}.
|
||||||
@ -69,13 +67,11 @@ doxygen -s -u doc/Doxyfile.in
|
|||||||
%{!?__cmake_in_source_build:-B "%{_vpath_builddir}"} \
|
%{!?__cmake_in_source_build:-B "%{_vpath_builddir}"} \
|
||||||
|
|
||||||
%__cmake --build "%{_vpath_builddir}" %{?_smp_mflags} --verbose --target all doc
|
%__cmake --build "%{_vpath_builddir}" %{?_smp_mflags} --verbose --target all doc
|
||||||
#%cmake_build
|
|
||||||
|
|
||||||
%check
|
%check
|
||||||
%ninja_test -C %{_vpath_builddir}
|
%ninja_test -C %{_vpath_builddir}
|
||||||
|
|
||||||
%install
|
%install
|
||||||
#%cmake_install
|
|
||||||
DESTDIR="%{buildroot}" %__cmake --install "%{_vpath_builddir}"
|
DESTDIR="%{buildroot}" %__cmake --install "%{_vpath_builddir}"
|
||||||
|
|
||||||
|
|
||||||
@ -105,6 +101,9 @@ end
|
|||||||
%doc %{_pkgdocdir}
|
%doc %{_pkgdocdir}
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Sat Nov 5 2022 zhangrui <zhangrui182@huawei.com> - 0.16-1
|
||||||
|
- Update to 0.16
|
||||||
|
|
||||||
* Tue May 24 2022 fengtao <fengtao40@huawei.com> - 0.15-5
|
* Tue May 24 2022 fengtao <fengtao40@huawei.com> - 0.15-5
|
||||||
- we got upgrade error when upgrade json-c from very low version,
|
- we got upgrade error when upgrade json-c from very low version,
|
||||||
for example json-c-0.11-5. because old version has a softlink:
|
for example json-c-0.11-5. because old version has a softlink:
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user