import UBI libfastjson-0.99.9-5.el9
This commit is contained in:
parent
4b598d40fe
commit
966f4c657c
|
@ -0,0 +1,52 @@
|
||||||
|
diff --git a/printbuf.c b/printbuf.c
|
||||||
|
index e9cde11..b02a363 100644
|
||||||
|
--- a/printbuf.c
|
||||||
|
+++ b/printbuf.c
|
||||||
|
@@ -13,6 +13,7 @@
|
||||||
|
|
||||||
|
#include "config.h"
|
||||||
|
|
||||||
|
+#include <limits.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <string.h>
|
||||||
|
@@ -68,9 +69,16 @@ static int printbuf_extend(struct printbuf *p, int min_size)
|
||||||
|
if (p->size >= min_size)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
- new_size = p->size * 2;
|
||||||
|
- if (new_size < min_size + 8)
|
||||||
|
- new_size = min_size + 8;
|
||||||
|
+ /* Prevent signed integer overflows with large buffers. */
|
||||||
|
+ if (min_size > INT_MAX - 8)
|
||||||
|
+ return -1;
|
||||||
|
+ if (p->size > INT_MAX / 2)
|
||||||
|
+ new_size = min_size + 8;
|
||||||
|
+ else {
|
||||||
|
+ new_size = p->size * 2;
|
||||||
|
+ if (new_size < min_size + 8)
|
||||||
|
+ new_size = min_size + 8;
|
||||||
|
+ }
|
||||||
|
#ifdef PRINTBUF_DEBUG
|
||||||
|
MC_DEBUG("printbuf_memappend: realloc "
|
||||||
|
"bpos=%d min_size=%d old_size=%d new_size=%d\n",
|
||||||
|
@@ -85,6 +93,9 @@ static int printbuf_extend(struct printbuf *p, int min_size)
|
||||||
|
|
||||||
|
int printbuf_memappend(struct printbuf *p, const char *buf, int size)
|
||||||
|
{
|
||||||
|
+ /* Prevent signed integer overflows with large buffers. */
|
||||||
|
+ if (size > INT_MAX - p->bpos - 1)
|
||||||
|
+ return -1;
|
||||||
|
if (p->size <= p->bpos + size + 1) {
|
||||||
|
if (printbuf_extend(p, p->bpos + size + 1) < 0)
|
||||||
|
return -1;
|
||||||
|
@@ -136,6 +147,9 @@ int printbuf_memset(struct printbuf *pb, int offset, int charvalue, int len)
|
||||||
|
|
||||||
|
if (offset == -1)
|
||||||
|
offset = pb->bpos;
|
||||||
|
+ /* Prevent signed integer overflows with large buffers. */
|
||||||
|
+ if (len > INT_MAX - offset)
|
||||||
|
+ return -1;
|
||||||
|
size_needed = offset + len;
|
||||||
|
if (pb->size < size_needed)
|
||||||
|
{
|
|
@ -1,6 +1,6 @@
|
||||||
Name: libfastjson
|
Name: libfastjson
|
||||||
Version: 0.99.9
|
Version: 0.99.9
|
||||||
Release: 3%{?dist}
|
Release: 5%{?dist}
|
||||||
Summary: A JSON implementation in C
|
Summary: A JSON implementation in C
|
||||||
License: MIT
|
License: MIT
|
||||||
URL: https://github.com/rsyslog/libfastjson
|
URL: https://github.com/rsyslog/libfastjson
|
||||||
|
@ -9,6 +9,8 @@ Source0: http://download.rsyslog.com/libfastjson/libfastjson-%{version}.tar.gz
|
||||||
BuildRequires: autoconf automake libtool
|
BuildRequires: autoconf automake libtool
|
||||||
BuildRequires: make
|
BuildRequires: make
|
||||||
|
|
||||||
|
Patch0: libfastjson-CVE-2020-12762.patch
|
||||||
|
|
||||||
%description
|
%description
|
||||||
LIBFASTJSON implements a reference counting object
|
LIBFASTJSON implements a reference counting object
|
||||||
model that allows you to easily construct JSON
|
model that allows you to easily construct JSON
|
||||||
|
@ -26,6 +28,7 @@ developing applications that use libfastjson.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
|
%patch0 -p1 -b .CVE-2020-12762
|
||||||
|
|
||||||
for doc in ChangeLog; do
|
for doc in ChangeLog; do
|
||||||
iconv -f iso-8859-1 -t utf8 $doc > $doc.new &&
|
iconv -f iso-8859-1 -t utf8 $doc > $doc.new &&
|
||||||
|
@ -59,6 +62,14 @@ make V=1 check
|
||||||
%{_libdir}/pkgconfig/libfastjson.pc
|
%{_libdir}/pkgconfig/libfastjson.pc
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Aug 02 2023 Attila Lakatos <alakatos@redhat.com> - 0.99.9-5
|
||||||
|
- Rebuild
|
||||||
|
Resolves: rhbz#2227786
|
||||||
|
|
||||||
|
* Tue May 16 2023 Attila Lakatos <alakatos@redhat.com> - 0.99.9-4
|
||||||
|
- Address CVE-2020-12762
|
||||||
|
Resolves: rhbz#2203172
|
||||||
|
|
||||||
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 0.99.9-3
|
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 0.99.9-3
|
||||||
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
||||||
Related: rhbz#1991688
|
Related: rhbz#1991688
|
||||||
|
|
Loading…
Reference in New Issue