- Update to 4.13.0.2

This commit is contained in:
Panu Matilainen 2017-10-26 11:27:57 +03:00
parent b5840c3d8c
commit 5bc7574e78
7 changed files with 7 additions and 154 deletions

1
.gitignore vendored
View File

@ -23,3 +23,4 @@
/rpm-4.13.0-rc2.tar.bz2
/rpm-4.13.0.tar.bz2
/rpm-4.13.0.1.tar.bz2
/rpm-4.13.0.2.tar.bz2

View File

@ -1,22 +0,0 @@
From eb632e5158fa4ef993b0e5df2a354f0be7a7a71d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Nikola=20Forr=C3=B3?= <nforro@redhat.com>
Date: Wed, 20 Apr 2016 15:39:36 +0200
Subject: [PATCH] Use correct source file for rpmsign module
---
python/setup.py.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/python/setup.py.in b/python/setup.py.in
index b2c394136..f94873fe5 100644
--- a/python/setup.py.in
+++ b/python/setup.py.in
@@ -48,7 +48,7 @@ rpmbuild_mod = Extension('rpm._rpmb',
)
rpmsign_mod = Extension('rpm._rpms',
- sources = ['rpmbmodule.c'],
+ sources = ['rpmsmodule.c'],
include_dirs = pkgconfig('--cflags'),
libraries = pkgconfig('--libs') + ['rpmsign'],
extra_compile_args = cflags,

View File

@ -1,21 +0,0 @@
commit 36db47bf59213befbb0afb37032b82e634c7ba78
Author: Panu Matilainen <pmatilai@redhat.com>
Date: Wed May 10 09:17:20 2017 +0300
Fix testsuite with newer NSS versions which require /dev/urandom
(cherry picked from commit 9e3256d2e8fa1bed042f7c4ded7e40e232342539)
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 7a5cc6544..1e71d685f 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -109,7 +109,7 @@ testing$(bindir)/rpmbuild: ../rpmbuild
$(MAKE) DESTDIR=`pwd`/${subdir}/testing install)
cp -r ${srcdir}/data/ testing/
for d in dev etc magic tmp var; do if [ ! -d testing/$${d} ]; then mkdir testing/$${d}; fi; done
- for node in stdin stderr stdout null; do ln -s /dev/$${node} testing/dev/$${node}; done
+ for node in urandom stdin stderr stdout null; do ln -s /dev/$${node} testing/dev/$${node}; done
for cf in hosts resolv.conf passwd shadow group gshadow mtab fstab; do [ -f /etc/$${cf} ] && ln -s /etc/$${cf} testing/etc/$${cf}; done
ln -s ../$(bindir) testing/usr/bin
for prog in gzip cat patch tar sh ln chmod rm mkdir uname grep sed find file ionice mktemp nice cut sort diff touch; do p=`which $${prog}`; ln -s $${p} testing/$${p}; done

View File

@ -1,25 +0,0 @@
commit 5e311d32e4079bf7f2db001d4f08db3ac0d93af9
Author: Panu Matilainen <pmatilai@redhat.com>
Date: Fri Aug 11 12:48:23 2017 +0300
Really ignore unknown signature tags (RhBug:1480407)
Rather embarrassingly, rpm 4.13 fails rpmkeys -K signature verification
of rpm 4.14 packages because it doesn't really ignore unknown
signature tags like it claims to, and should. And so it reports a
bogus failure on the new SHA256 header-only digest. This bug as it is
only exists in 4.13.x, older versions are fine and >= 4.14 only
ever looks for tags it knows about.
diff --git a/lib/signature.c b/lib/signature.c
index 1b9fe345f..41bf85893 100644
--- a/lib/signature.c
+++ b/lib/signature.c
@@ -71,6 +71,7 @@ rpmRC rpmSigInfoParse(rpmtd td, const char *origin,
break;
default:
/* anything unknown just falls through for now */
+ sinfo->type = RPMSIG_OTHER_TYPE;
break;
}

View File

@ -1,79 +0,0 @@
From aaf691dbc85295aeb09e1ea4081089a24dc28759 Mon Sep 17 00:00:00 2001
From: Pavlina Moravcova Varekova <pmoravco@redhat.com>
Date: Tue, 21 Feb 2017 11:37:20 +0100
Subject: [PATCH] Fix number of references on spec_Type (#114)
After creating a specPkg from a spec file we must increase spec file reference counter. Otherwise spec file may be accidentally deallocated and usage of SpecPkg can cause an error.
---
python/spec-py.c | 14 +++++++++++---
python/spec-py.h | 2 +-
2 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/python/spec-py.c b/python/spec-py.c
index f710f5c..753afba 100644
--- a/python/spec-py.c
+++ b/python/spec-py.c
@@ -45,8 +45,14 @@ struct specPkgObject_s {
PyObject_HEAD
/*type specific fields */
rpmSpecPkg pkg;
+ specObject *source_spec;
};
+static void specPkg_dealloc(specPkgObject * s)
+{
+ Py_DECREF(s->source_spec);
+}
+
static PyObject *pkgGetSection(rpmSpecPkg pkg, int section)
{
char *sect = rpmSpecPkgGetSection(pkg, section);
@@ -95,7 +101,7 @@ PyTypeObject specPkg_Type = {
"rpm.specpkg", /* tp_name */
sizeof(specPkgObject), /* tp_size */
0, /* tp_itemsize */
- 0, /* tp_dealloc */
+ (destructor) specPkg_dealloc, /* tp_dealloc */
0, /* tp_print */
0, /* tp_getattr */
0, /* tp_setattr */
@@ -227,7 +233,7 @@ static PyObject * spec_get_packages(specObject *s, void *closure)
iter = rpmSpecPkgIterInit(s->spec);
while ((pkg = rpmSpecPkgIterNext(iter)) != NULL) {
- PyObject *po = specPkg_Wrap(&specPkg_Type, pkg);
+ PyObject *po = specPkg_Wrap(&specPkg_Type, pkg, s);
if (!po) {
rpmSpecPkgIterFree(iter);
Py_DECREF(pkgList);
@@ -350,12 +356,14 @@ spec_Wrap(PyTypeObject *subtype, rpmSpec spec)
return (PyObject *) s;
}
-PyObject * specPkg_Wrap(PyTypeObject *subtype, rpmSpecPkg pkg)
+PyObject * specPkg_Wrap(PyTypeObject *subtype, rpmSpecPkg pkg, specObject *source)
{
specPkgObject * s = (specPkgObject *)subtype->tp_alloc(subtype, 0);
if (s == NULL) return NULL;
s->pkg = pkg;
+ s->source_spec = source;
+ Py_INCREF(s->source_spec);
return (PyObject *) s;
}
diff --git a/python/spec-py.h b/python/spec-py.h
index 558fbf2..65b8dc3 100644
--- a/python/spec-py.h
+++ b/python/spec-py.h
@@ -13,6 +13,6 @@ extern PyTypeObject specPkg_Type;
#define specPkgObject_Check(v) ((v)->ob_type == &specPkg_Type)
PyObject * spec_Wrap(PyTypeObject *subtype, rpmSpec spec);
-PyObject * specPkg_Wrap(PyTypeObject *subtype, rpmSpecPkg pkg);
+PyObject * specPkg_Wrap(PyTypeObject *subtype, rpmSpecPkg pkg, specObject *source);
#endif /* RPMPYTHON_SPEC */
--
2.7.4

View File

@ -17,7 +17,7 @@
%define rpmhome /usr/lib/rpm
%global rpmver 4.13.0.1
%global rpmver 4.13.0.2
#global snapver rc2
%global srcver %{version}%{?snapver:-%{snapver}}
%global srcdir %{?snapver:testing}%{!?snapver:%{name}-%(v=%{version}; echo ${v%.*}.x)}
@ -29,7 +29,7 @@
Summary: The RPM package management system
Name: rpm
Version: %{rpmver}
Release: %{?snapver:0.%{snapver}.}7%{?dist}
Release: %{?snapver:0.%{snapver}.}1%{?dist}
Group: System Environment/Base
Url: http://www.rpm.org/
Source0: http://rpm.org/releases/%{srcdir}/%{name}-%{srcver}.tar.bz2
@ -52,9 +52,6 @@ Patch4: rpm-4.8.1-use-gpg2.patch
Patch5: rpm-4.12.0-rpm2cpio-hack.patch
# Patches already upstream:
Patch100: rpm-4.13.0-python-rpmsign.patch
Patch101: rpm-4.13.0-unknown-sigtags.patch
Patch102: rpm-4.13.0-testsuite-nss.patch
Patch133: rpm-4.13.x-pythondistdeps.patch
Patch134: rpm-4.13.x-pythondistdeps-Makefile.patch
@ -67,7 +64,6 @@ Patch140: rpm-4.13.x-brp-python-bytecompile-Python3-only.patch
# Upstream PR: https://github.com/rpm-software-management/rpm/pull/154
# rhbz#1421776
Patch141: rpm-4.13.x-pythondistdeps.py-fix-processing-wheels.patch
Patch142: rpm-4.13.x-fix-refcount-for-spec_type.patch
# https://github.com/rpm-software-management/rpm/commit/124ed29259b05fdf574d5e3e145bc1201b24ae4d
Patch143: rpm-4.13.x-RPMCALLBACK_ELEM_PROGRESS-available-header.patch
@ -577,6 +573,9 @@ exit 0
%doc doc/librpm/html/*
%changelog
* Thu Oct 26 2017 Panu Matilainen <pmatilai@redhat.com> - 4.13.0.2-1
- Update to 4.13.0.2 ((http://rpm.org/wiki/Releases/4.13.0.2)
* Wed Aug 23 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 4.13.0.1-7
- backport patch to have headers available in RPMCALLBACK_ELEM_PROGRESS

View File

@ -1 +1 @@
SHA512 (rpm-4.13.0.1.tar.bz2) = b7475dd0803e06a5dd6a95d0bf8add6ff0d8f0620dd389c4d87a85becb0eb4637aa4ff8c48e18d4844ff6feefa25d642d9f876cd210006cb2144006d34a91b91
SHA512 (rpm-4.13.0.2.tar.bz2) = 9b15acb2684bc963f7164763568615b2484478eaec0cea8b3bd4ddb94b862a70b2f4b4ab432d896e5885c9a191c4d7d2ede573a5feabc8ec290108956a8a4917