Compare commits
18 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
57eac98acf | ||
|
ccf94094f6 | ||
|
2b3e078cd8 | ||
|
6d565de8ba | ||
|
f7e334cc31 | ||
|
9d7555ec18 | ||
|
2f934f74c1 | ||
|
e9f16869e5 | ||
|
5dcbc52b06 | ||
|
8236e13693 | ||
|
939a076801 | ||
|
5bbe8ba040 | ||
|
f48ff999e9 | ||
|
06575f9eb7 | ||
|
b9834a0d0f | ||
|
f2574ea6f6 | ||
|
ac8998e37f | ||
|
a89f4ed709 |
1
.gitignore
vendored
1
.gitignore
vendored
@ -1 +1,2 @@
|
||||
/jq-1.3.tar.gz
|
||||
/jq-1.5.tar.gz
|
||||
|
37
CVE-2015-8863.patch
Normal file
37
CVE-2015-8863.patch
Normal file
@ -0,0 +1,37 @@
|
||||
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
79
jq.spec
@ -1,16 +1,19 @@
|
||||
Name: jq
|
||||
Version: 1.3
|
||||
Release: 2%{?dist}
|
||||
Version: 1.5
|
||||
Release: 13%{?dist}
|
||||
Summary: Command-line JSON processor
|
||||
|
||||
License: MIT and ASL 2.0 and CC-BY and GPLv3
|
||||
URL: http://stedolan.github.io/jq/
|
||||
Source0: http://stedolan.github.io/%{name}/download/source/%{name}-%{version}.tar.gz
|
||||
Source0: https://github.com/stedolan/jq/releases/download/%{name}-%{version}/%{name}-%{version}.tar.gz
|
||||
Patch0: CVE-2015-8863.patch
|
||||
|
||||
BuildRequires: gcc
|
||||
BuildRequires: flex
|
||||
BuildRequires: bison
|
||||
BuildRequires: oniguruma-devel
|
||||
|
||||
%ifarch %{ix86} x86_64
|
||||
%ifnarch s390
|
||||
BuildRequires: valgrind
|
||||
%endif
|
||||
|
||||
@ -31,12 +34,20 @@ lightweight and flexible command-line JSON processor
|
||||
program to do so is often shorter and simpler than
|
||||
you'd expect.
|
||||
|
||||
%package devel
|
||||
Summary: Development files for %{name}
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
|
||||
%description devel
|
||||
Development files for %{name}
|
||||
|
||||
|
||||
%prep
|
||||
%setup -qn %{name}-%{version}
|
||||
%patch0 -p2 -b .cve-2015-8863
|
||||
|
||||
%build
|
||||
%configure
|
||||
%configure --disable-static
|
||||
make %{?_smp_mflags}
|
||||
# Docs already shipped in jq's tarball.
|
||||
# In order to build the manual page, it
|
||||
@ -54,6 +65,7 @@ make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
make DESTDIR=%{buildroot} install
|
||||
find %{buildroot} -name '*.la' -exec rm -f {} ';'
|
||||
|
||||
%check
|
||||
# Valgrind used, so restrict architectures for check
|
||||
@ -61,15 +73,72 @@ make DESTDIR=%{buildroot} install
|
||||
make check
|
||||
%endif
|
||||
|
||||
%ldconfig_scriptlets
|
||||
|
||||
%files
|
||||
%{_bindir}/%{name}
|
||||
%{_libdir}/libjq.so.*
|
||||
%{_datadir}/man/man1/jq.1.gz
|
||||
%{_datadir}/doc/jq/AUTHORS
|
||||
%{_datadir}/doc/jq/COPYING
|
||||
%{_datadir}/doc/jq/README
|
||||
%{_datadir}/doc/jq/README.md
|
||||
|
||||
%files devel
|
||||
%{_includedir}/jq.h
|
||||
%{_includedir}/jv.h
|
||||
%{_libdir}/libjq.so
|
||||
|
||||
|
||||
%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
|
||||
- Added check, manpage
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user