Compare commits

..

No commits in common. "master" and "f19" have entirely different histories.
master ... f19

4 changed files with 6 additions and 113 deletions

1
.gitignore vendored
View File

@ -1,2 +1 @@
/jq-1.3.tar.gz /jq-1.3.tar.gz
/jq-1.5.tar.gz

View File

@ -1,37 +0,0 @@
From 8eb1367ca44e772963e704a700ef72ae2e12babd Mon Sep 17 00:00:00 2001
From: Nicolas Williams <nico@cryptonector.com>
Date: Sat, 24 Oct 2015 17:24:57 -0500
Subject: [PATCH] Heap buffer overflow in tokenadd() (fix #105)
This was an off-by one: the NUL terminator byte was not allocated on
resize. This was triggered by JSON-encoded numbers longer than 256
bytes.
---
src/jv_parse.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/jv_parse.c b/src/jv_parse.c
index 3102ed4..84245b8 100644
--- a/src/jv_parse.c
+++ b/src/jv_parse.c
@@ -383,7 +383,7 @@ static pfunc stream_token(struct jv_parser* p, char ch) {
static void tokenadd(struct jv_parser* p, char c) {
assert(p->tokenpos <= p->tokenlen);
- if (p->tokenpos == p->tokenlen) {
+ if (p->tokenpos >= (p->tokenlen - 1)) {
p->tokenlen = p->tokenlen*2 + 256;
p->tokenbuf = jv_mem_realloc(p->tokenbuf, p->tokenlen);
}
@@ -485,7 +485,7 @@ static pfunc check_literal(struct jv_parser* p) {
TRY(value(p, v));
} else {
// FIXME: better parser
- p->tokenbuf[p->tokenpos] = 0; // FIXME: invalid
+ p->tokenbuf[p->tokenpos] = 0;
char* end = 0;
double d = jvp_strtod(&p->dtoa, p->tokenbuf, &end);
if (end == 0 || *end != 0)
--
2.14.3

79
jq.spec
View File

@ -1,19 +1,16 @@
Name: jq Name: jq
Version: 1.5 Version: 1.3
Release: 13%{?dist} Release: 2%{?dist}
Summary: Command-line JSON processor Summary: Command-line JSON processor
License: MIT and ASL 2.0 and CC-BY and GPLv3 License: MIT and ASL 2.0 and CC-BY and GPLv3
URL: http://stedolan.github.io/jq/ URL: http://stedolan.github.io/jq/
Source0: https://github.com/stedolan/jq/releases/download/%{name}-%{version}/%{name}-%{version}.tar.gz Source0: http://stedolan.github.io/%{name}/download/source/%{name}-%{version}.tar.gz
Patch0: CVE-2015-8863.patch
BuildRequires: gcc
BuildRequires: flex BuildRequires: flex
BuildRequires: bison BuildRequires: bison
BuildRequires: oniguruma-devel
%ifnarch s390 %ifarch %{ix86} x86_64
BuildRequires: valgrind BuildRequires: valgrind
%endif %endif
@ -34,20 +31,12 @@ lightweight and flexible command-line JSON processor
program to do so is often shorter and simpler than program to do so is often shorter and simpler than
you'd expect. you'd expect.
%package devel
Summary: Development files for %{name}
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
Development files for %{name}
%prep %prep
%setup -qn %{name}-%{version} %setup -qn %{name}-%{version}
%patch0 -p2 -b .cve-2015-8863
%build %build
%configure --disable-static %configure
make %{?_smp_mflags} make %{?_smp_mflags}
# Docs already shipped in jq's tarball. # Docs already shipped in jq's tarball.
# In order to build the manual page, it # In order to build the manual page, it
@ -65,7 +54,6 @@ make %{?_smp_mflags}
%install %install
make DESTDIR=%{buildroot} install make DESTDIR=%{buildroot} install
find %{buildroot} -name '*.la' -exec rm -f {} ';'
%check %check
# Valgrind used, so restrict architectures for check # Valgrind used, so restrict architectures for check
@ -73,72 +61,15 @@ find %{buildroot} -name '*.la' -exec rm -f {} ';'
make check make check
%endif %endif
%ldconfig_scriptlets
%files %files
%{_bindir}/%{name} %{_bindir}/%{name}
%{_libdir}/libjq.so.*
%{_datadir}/man/man1/jq.1.gz %{_datadir}/man/man1/jq.1.gz
%{_datadir}/doc/jq/AUTHORS %{_datadir}/doc/jq/AUTHORS
%{_datadir}/doc/jq/COPYING %{_datadir}/doc/jq/COPYING
%{_datadir}/doc/jq/README %{_datadir}/doc/jq/README
%{_datadir}/doc/jq/README.md %{_datadir}/doc/jq/README.md
%files devel
%{_includedir}/jq.h
%{_includedir}/jv.h
%{_libdir}/libjq.so
%changelog %changelog
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.5-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Sun Apr 01 2018 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.5-12
- Rebuild against oniguruma 6.8.1
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.5-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Wed Feb 07 2018 Lon Hohberger <lon@fedoraproject.org> - 1.5-10
- Fix CVE 2015-8863
* Fri Feb 02 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.5-9
- Switch to %%ldconfig_scriptlets
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.5-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.5-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.5-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Sun Oct 30 2016 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.5-5
- Rebuild for oniguruma 6.1.1
* Mon Jul 18 2016 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.5-4
- Rebuild for oniguruma 6
* Sun Mar 13 2016 Peter Robinson <pbrobinson@fedoraproject.org> 1.5-3
- valgrind on all but s390
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Tue Aug 25 2015 Haïkel Guémar <hguemar@fedoraproject.org> - 1.5-1
- Upstream 1.5.0
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Thu Oct 24 2013 Flavio Percoco <flavio@redhat.com> - 1.3-2 * Thu Oct 24 2013 Flavio Percoco <flavio@redhat.com> - 1.3-2
- Added check, manpage - Added check, manpage

View File

@ -1 +1 @@
0933532b086bd8b6a41c1b162b1731f9 jq-1.5.tar.gz 26081b05d22525eca5cbdd8f9f4db17d jq-1.3.tar.gz