From 4ee851093a22ae113a7ee5f55f95a7bee03545be09c68149e6a6282a2bc25bec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20Schr=C3=B6der?= Date: Tue, 16 Oct 2018 09:54:56 +0000 Subject: [PATCH 1/2] - update to rpm-4.14.2 OBS-URL: https://build.opensuse.org/package/show/Base:System/rpm?expand=0&rev=485 --- dbrointerruptable.diff | 12 ++--- debugedit-bnc1076819.diff | 15 ------ debugedit-riscv.patch | 27 ----------- disttag-macro.diff | 31 ------------ hardlinks.diff | 92 ------------------------------------ python-rpm.spec | 2 +- pythondistdeps.diff | 11 +---- remove-brp-strips.diff | 14 +++--- reproducible-debuginfo.patch | 27 ----------- rpm-4.14.1.tar.bz2 | 3 -- rpm-4.14.2.tar.bz2 | 3 ++ rpm.changes | 17 +++++++ rpm.spec | 16 ++----- safesymlinks.diff | 44 ----------------- verifynodup.diff | 72 ---------------------------- whatrequires-doc.diff | 10 ++-- 16 files changed, 45 insertions(+), 351 deletions(-) delete mode 100644 debugedit-bnc1076819.diff delete mode 100644 debugedit-riscv.patch delete mode 100644 disttag-macro.diff delete mode 100644 hardlinks.diff delete mode 100644 reproducible-debuginfo.patch delete mode 100644 rpm-4.14.1.tar.bz2 create mode 100644 rpm-4.14.2.tar.bz2 delete mode 100644 safesymlinks.diff delete mode 100644 verifynodup.diff diff --git a/dbrointerruptable.diff b/dbrointerruptable.diff index d8ee837..6e44578 100644 --- a/dbrointerruptable.diff +++ b/dbrointerruptable.diff @@ -1,5 +1,5 @@ ---- ./lib/rpmdb.c.orig 2017-10-05 10:05:27.459594162 +0000 -+++ ./lib/rpmdb.c 2017-12-01 14:19:12.361872712 +0000 +--- ./lib/rpmdb.c.orig 2018-08-08 13:40:18.153941351 +0000 ++++ ./lib/rpmdb.c 2018-10-16 09:20:11.196708098 +0000 @@ -387,9 +387,11 @@ int rpmdbClose(rpmdb db) { rpmdb * prev, next; @@ -21,12 +21,12 @@ rpmsqActivate(0); } exit: -@@ -505,7 +507,7 @@ static int openDatabase(const char * pre - /* Try to ensure db home exists, error out if we can't even create */ +@@ -509,7 +511,7 @@ static int openDatabase(const char * pre rc = rpmioMkpath(rpmdbHome(db), 0755, getuid(), getgid()); if (rc == 0) { -- if (rpmdbRock == NULL) { -+ if (rpmdbRock == NULL && (db->db_mode & (O_RDWR|O_WRONLY)) != 0) { + /* Enable signal queue on the first db open */ +- if (db->db_next == NULL) { ++ if (db->db_next == NULL && (db->db_mode & (O_RDWR|O_WRONLY)) != 0) { rpmsqActivate(1); } diff --git a/debugedit-bnc1076819.diff b/debugedit-bnc1076819.diff deleted file mode 100644 index 771eafa..0000000 --- a/debugedit-bnc1076819.diff +++ /dev/null @@ -1,15 +0,0 @@ ---- tools/debugedit.c.orig 2018-01-22 12:09:07.477955907 +0100 -+++ tools/debugedit.c 2018-01-22 12:09:22.210197759 +0100 -@@ -2154,9 +2154,9 @@ - /* Offset (pointing into the line program) moves - from old to new index including the header - size diff. */ -- r_offset += ((dso->lines.table[lndx].new_idx -- - dso->lines.table[lndx].old_idx) -- + dso->lines.table[lndx].size_diff); -+ r_offset += (ssize_t)((dso->lines.table[lndx].new_idx -+ - dso->lines.table[lndx].old_idx) -+ + dso->lines.table[lndx].size_diff); - - if (rtype == SHT_RELA) - { diff --git a/debugedit-riscv.patch b/debugedit-riscv.patch deleted file mode 100644 index d75e440..0000000 --- a/debugedit-riscv.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 86ec4c03de2b7cc6af6ba5b10dd686002e0b588c Mon Sep 17 00:00:00 2001 -From: Andreas Schwab -Date: Mon, 26 Feb 2018 10:34:26 +0100 -Subject: [PATCH] debugedit: handle RISC-V relocation - -Resolves #407 ---- - tools/debugedit.c | 6 ++++++ - 1 file changed, 6 insertions(+) - -Index: tools/debugedit.c -=================================================================== ---- tools/debugedit.c.orig -+++ tools/debugedit.c -@@ -1985,6 +1985,12 @@ edit_dwarf2 (DSO *dso) - if (rtype != R_68K_32) - goto fail; - break; -+#if defined(EM_RISCV) && defined(R_RISCV_32) -+ case EM_RISCV: -+ if (rtype != R_RISCV_32) -+ goto fail; -+ break; -+#endif - default: - fail: - error (1, 0, "%s: Unhandled relocation %d in .debug_info section", diff --git a/disttag-macro.diff b/disttag-macro.diff deleted file mode 100644 index 795e52c..0000000 --- a/disttag-macro.diff +++ /dev/null @@ -1,31 +0,0 @@ -Hmm, SUSE doesn't use it, so what's the purpose of this patch? - ---- ./build/parsePreamble.c.orig 2011-05-11 14:27:32.000000000 +0000 -+++ ./build/parsePreamble.c 2011-05-11 15:59:08.000000000 +0000 -@@ -485,6 +485,7 @@ static struct optionalTag { - { RPMTAG_PACKAGER, "%{packager}" }, - { RPMTAG_DISTRIBUTION, "%{distribution}" }, - { RPMTAG_DISTURL, "%{disturl}" }, -+ { RPMTAG_DISTTAG, "%{disttag}" }, - { RPMTAG_BUGURL, "%{bugurl}" }, - { -1, NULL } - }; ---- ./macros.in.orig 2011-05-11 15:38:44.000000000 +0000 -+++ ./macros.in 2011-05-11 15:59:08.000000000 +0000 -@@ -279,6 +279,16 @@ package or when debugging this package.\ - # - #%bugurl - -+# Configurable distribution tag, same as Disttag: tag in a specfile. -+# The tag will be used to supply reliable information to tools like -+# rpmfind. -+# -+# Note: You should not configure with disturl (or build packages with -+# the Disttag: tag) unless you are willing to supply content in a -+# yet-to-be-determined format at the tag specified. -+# -+#%disttag -+ - # Boolean (i.e. 1 == "yes", 0 == "no") that controls whether files - # marked as %doc should be installed. - #%_excludedocs diff --git a/hardlinks.diff b/hardlinks.diff deleted file mode 100644 index dba3a6b..0000000 --- a/hardlinks.diff +++ /dev/null @@ -1,92 +0,0 @@ ---- lib/rpmfiles.h.orig -+++ lib/rpmfiles.h -@@ -156,7 +156,7 @@ typedef rpmFlags rpmfiFlags; - - #define RPMFI_FLAGS_ERASE \ - (RPMFI_NOFILECLASS | RPMFI_NOFILELANGS | \ -- RPMFI_NOFILEMTIMES | RPMFI_NOFILERDEVS | RPMFI_NOFILEINODES | \ -+ RPMFI_NOFILEMTIMES | RPMFI_NOFILERDEVS | \ - RPMFI_NOFILEVERIFYFLAGS) - - #define RPMFI_FLAGS_INSTALL \ ---- lib/transaction.c.orig -+++ lib/transaction.c -@@ -231,11 +231,11 @@ static void rpmtsUpdateDSI(const rpmts ts, dev_t dev, const char *dirName, - dsi->bneeded += bneeded; - dsi->ineeded++; - if (prevSize) { -- dsi->bdelta += BLOCK_ROUND(prevSize, dsi->bsize); -+ dsi->bdelta += BLOCK_ROUND(prevSize - 1, dsi->bsize); - dsi->idelta++; - } - if (fixupSize) { -- dsi->bdelta += BLOCK_ROUND(fixupSize, dsi->bsize); -+ dsi->bdelta += BLOCK_ROUND(fixupSize - 1, dsi->bsize); - dsi->idelta++; - } - -@@ -412,6 +412,9 @@ static void handleInstInstalledFile(const rpmts ts, rpmte p, rpmfiles fi, int fx - { - rpmfs fs = rpmteGetFileStates(p); - int isCfgFile = ((rpmfilesFFlags(otherFi, ofx) | rpmfilesFFlags(fi, fx)) & RPMFILE_CONFIG); -+ rpm_loff_t otherFileSize; -+ int nlink; -+ const int *links; - - if (XFA_SKIPPING(rpmfsGetAction(fs, fx))) - return; -@@ -481,7 +484,15 @@ static void handleInstInstalledFile(const rpmts ts, rpmte p, rpmfiles fi, int fx - } - } - -- rpmfilesSetFReplacedSize(fi, fx, rpmfilesFSize(otherFi, ofx)); -+ otherFileSize = rpmfilesFSize(otherFi, ofx); -+ -+ /* Only account for the last file of a hardlink set */ -+ nlink = rpmfilesFLinks(otherFi, ofx, &links); -+ if (nlink > 1 && links[nlink - 1] != ofx) -+ otherFileSize = 0; -+ -+ /* Add one to make sure the size is not zero */ -+ rpmfilesSetFReplacedSize(fi, fx, otherFileSize + 1); - } - - /** -@@ -506,6 +517,9 @@ static void handleOverlappedFiles(rpmts ts, fingerPrintCache fpc, rpmte p, rpmfi - rpmfileAttrs FFlags; - struct rpmffi_s * recs; - int numRecs; -+ rpm_loff_t fileSize; -+ int nlink; -+ const int *links; - - if (XFA_SKIPPING(rpmfsGetAction(fs, i))) - continue; -@@ -628,7 +642,8 @@ assert(otherFi != NULL); - break; - - /* Try to get the disk accounting correct even if a conflict. */ -- fixupSize = rpmfilesFSize(otherFi, otherFileNum); -+ /* Add one to make sure the size is not zero */ -+ fixupSize = rpmfilesFSize(otherFi, otherFileNum) + 1; - - if (rpmfilesConfigConflict(fi, i)) { - /* Here is an overlapped pre-existing config file. */ -@@ -675,9 +690,16 @@ assert(otherFi != NULL); - } - rpmfilesFree(otherFi); - -+ fileSize = rpmfilesFSize(fi, i); -+ nlink = rpmfilesFLinks(fi, i, &links); -+ if (nlink > 1 && links[nlink - 1] != i) { -+ /* Only account for the last file of a hardlink set */ -+ fileSize = 0; -+ fixupSize = fixupSize ? 1 : 0; -+ } - /* Update disk space info for a file. */ - rpmtsUpdateDSI(ts, fpEntryDev(fpc, fiFps), fpEntryDir(fpc, fiFps), -- rpmfilesFSize(fi, i), rpmfilesFReplacedSize(fi, i), -+ fileSize, rpmfilesFReplacedSize(fi, i), - fixupSize, rpmfsGetAction(fs, i)); - - } diff --git a/python-rpm.spec b/python-rpm.spec index 6ca0189..bb130ff 100644 --- a/python-rpm.spec +++ b/python-rpm.spec @@ -20,7 +20,7 @@ # Enable Python build sourced from rpm spec %global with_python 1 Name: python-rpm -Version: 4.14.1 +Version: 4.14.2 Release: 0 Summary: Python Bindings for Manipulating RPM Packages License: GPL-2.0-or-later diff --git a/pythondistdeps.diff b/pythondistdeps.diff index cb4b6c8..6e2f513 100644 --- a/pythondistdeps.diff +++ b/pythondistdeps.diff @@ -1,12 +1,5 @@ ---- ./scripts/python-macro-helper.orig 2018-02-05 10:06:51.837690381 +0000 -+++ ./scripts/python-macro-helper 2018-02-05 10:07:22.500594058 +0000 -@@ -1,4 +1,3 @@ --#!/usr/bin/python -Es - - from distutils.sysconfig import get_python_lib - from platform import python_version_tuple ---- ./scripts/pythondistdeps.py.orig 2017-10-05 10:04:57.587602034 +0000 -+++ ./scripts/pythondistdeps.py 2018-02-05 10:06:37.013736947 +0000 +--- ./scripts/pythondistdeps.py.orig 2018-08-08 13:40:18.173941320 +0000 ++++ ./scripts/pythondistdeps.py 2018-10-16 09:30:49.271004917 +0000 @@ -1,4 +1,3 @@ -#!/usr/bin/python # -*- coding: utf-8 -*- diff --git a/remove-brp-strips.diff b/remove-brp-strips.diff index 466a948..ab2ed3d 100644 --- a/remove-brp-strips.diff +++ b/remove-brp-strips.diff @@ -3,14 +3,14 @@ Subject: remove references to removed brp scripts Some brp-scripts are not used in openSUSE, remove references to it ---- ./platform.in.orig 2011-05-11 15:02:03.000000000 +0000 -+++ ./platform.in 2011-05-11 15:38:05.000000000 +0000 -@@ -55,8 +55,6 @@ +--- ./platform.in.orig 2018-10-16 09:22:16.004374524 +0000 ++++ ./platform.in 2018-10-16 09:24:58.891939175 +0000 +@@ -80,8 +80,6 @@ %__os_install_post \ - %{_rpmconfigdir}/brp-compress \ - %{_rpmconfigdir}/brp-strip %{__strip} \ -- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \ -- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \ + %{?__brp_compress} \ + %{?__brp_strip} \ +- %{?__brp_strip_static_archive} \ +- %{?__brp_strip_comment_note} \ %{nil} %__spec_install_post\ diff --git a/reproducible-debuginfo.patch b/reproducible-debuginfo.patch deleted file mode 100644 index 58de531..0000000 --- a/reproducible-debuginfo.patch +++ /dev/null @@ -1,27 +0,0 @@ -commit 5b29a1d4b1d25a16c24c2365980ac5fd847e1aa6 -Author: Bernhard M. Wiedemann -Date: Mon Jul 30 19:02:46 2018 +0200 - - find-debuginfo.sh: sort output of find - - to make build results more reproducible - in spite of indeterministic filesystem readdir order. - - For openSUSE, this helped to make squid, openssh, postfix and shadow - packages build reproducibly. - - See https://reproducible-builds.org/ for why this is good. - -diff --git a/scripts/find-debuginfo.sh b/scripts/find-debuginfo.sh -index 44d164299..11397b7e8 100755 ---- scripts/find-debuginfo.sh -+++ scripts/find-debuginfo.sh -@@ -487,7 +487,7 @@ fi - # Invoke the DWARF Compressor utility. - if $run_dwz \ - && [ -d "${RPM_BUILD_ROOT}/usr/lib/debug" ]; then -- readarray dwz_files < <(cd "${RPM_BUILD_ROOT}/usr/lib/debug"; find -type f -name \*.debug) -+ readarray dwz_files < <(cd "${RPM_BUILD_ROOT}/usr/lib/debug"; find -type f -name \*.debug | LC_ALL=C sort) - if [ ${#dwz_files[@]} -gt 0 ]; then - dwz_multifile_name="${RPM_PACKAGE_NAME}-${RPM_PACKAGE_VERSION}-${RPM_PACKAGE_RELEASE}.${RPM_ARCH}" - dwz_multifile_suffix= diff --git a/rpm-4.14.1.tar.bz2 b/rpm-4.14.1.tar.bz2 deleted file mode 100644 index 80149fd..0000000 --- a/rpm-4.14.1.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:43f40e2ccc3ca65bd3238f8c9f8399d4957be0878c2e83cba2746d2d0d96793b -size 4103880 diff --git a/rpm-4.14.2.tar.bz2 b/rpm-4.14.2.tar.bz2 new file mode 100644 index 0000000..ad1d211 --- /dev/null +++ b/rpm-4.14.2.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80cbc2c1e8e24e67c6f88b41d8ab5633b653a9a79d50d4750474a18cdb69352b +size 4151934 diff --git a/rpm.changes b/rpm.changes index 94e98f6..10447c7 100644 --- a/rpm.changes +++ b/rpm.changes @@ -1,3 +1,20 @@ +------------------------------------------------------------------- +Tue Oct 16 11:27:36 CEST 2018 - mls@suse.de + +- update to rpm-4.14.2 + * new configurable, mandatory package verification level + * new package verification phase in rpmtsRun() + * new --setcaps and --restore options + * new --whatobsoletes and --whatconflicts query options +- dropped patches: + * disttag-macro.diff + * reproducible-debuginfo.patch + * debugedit-bnc1076819.diff + * hardlinks.diff + * debugedit-riscv.patch + * safesymlinks.diff + * verifynodup.diff + ------------------------------------------------------------------- Mon Oct 1 12:08:32 UTC 2018 - Martin Liška diff --git a/rpm.spec b/rpm.spec index 127bd65..d672108 100644 --- a/rpm.spec +++ b/rpm.spec @@ -54,7 +54,7 @@ Requires: /usr/bin/awk Summary: The RPM Package Manager License: GPL-2.0-or-later Group: System/Packages -Version: 4.14.1 +Version: 4.14.2 Release: 0 Source: http://ftp.rpm.org/releases/rpm-4.14.x/rpm-%{version}.tar.bz2 Source1: RPM-HOWTO.tar.bz2 @@ -98,7 +98,6 @@ Patch46: remove-brp-strips.diff Patch47: requires-ge-macro.diff Patch49: finddebuginfo-absolute-links.diff Patch51: specfilemacro.diff -Patch53: disttag-macro.diff Patch55: debugsubpkg.diff Patch56: debuglink.diff Patch57: debuginfo-mono.patch @@ -121,18 +120,11 @@ Patch93: weakdepscompat.diff Patch94: checksepwarn.diff Patch99: enable-postin-scripts-error.diff Patch100: rpm-findlang-inject-metainfo.patch -# https://github.com/rpm-software-management/rpm/pull/485 -Patch101: reproducible-debuginfo.patch Patch102: emptymanifest.diff Patch103: find-lang-qt-qm.patch Patch108: debugedit-macro.diff Patch109: pythondistdeps.diff -Patch111: debugedit-bnc1076819.diff -Patch112: hardlinks.diff -Patch113: debugedit-riscv.patch Patch114: source_date_epoch_buildtime.diff -Patch115: safesymlinks.diff -Patch116: verifynodup.diff Patch117: findsupplements.diff Patch118: dwz-compression.patch Patch6464: auto-config-update-aarch64-ppc64le.diff @@ -226,13 +218,13 @@ rm -f rpmdb/db.h %patch -P 20 -P 21 -P 24 -P 25 -P 26 -P 27 -P 29 %patch -P 30 -P 32 -P 33 -P 34 -P 35 -P 36 -P 38 %patch -P 43 -P 45 -P 46 -P 47 -P 49 -%patch -P 51 -P 53 -P 55 -P 56 -P 57 -P 58 +%patch -P 51 -P 55 -P 56 -P 57 -P 58 %patch -P 60 -P 61 -P 66 -P 67 -P 68 -P 69 %patch -P 70 -P 71 -P 73 -P 74 -P 75 -P 77 -P 78 %patch -P 85 %patch -P 93 -P 94 -P 99 -%patch -P 100 -P 101 -P 102 -P 103 -P 108 -%patch -P 109 -P 111 -P 112 -P 113 -P 114 -P 115 -P 116 -P 117 -P 118 +%patch -P 100 -P 102 -P 103 -P 108 +%patch -P 109 -P 114 -P 117 -P 118 %ifarch aarch64 ppc64le riscv64 %patch6464 diff --git a/safesymlinks.diff b/safesymlinks.diff deleted file mode 100644 index 4d99f91..0000000 --- a/safesymlinks.diff +++ /dev/null @@ -1,44 +0,0 @@ ---- ./lib/fsm.c.orig 2018-06-15 11:15:50.320133057 +0000 -+++ ./lib/fsm.c 2018-06-15 11:15:56.240118124 +0000 -@@ -653,7 +653,7 @@ static int fsmUtime(const char *path, mo - return rc; - } - --static int fsmVerify(const char *path, rpmfi fi, const struct stat *fsb) -+static int fsmVerify(const char *path, rpmfi fi) - { - int rc; - int saveerrno = errno; -@@ -684,7 +684,7 @@ static int fsmVerify(const char *path, r - if (rc) return rc; - errno = saveerrno; - /* Only permit directory symlinks by target owner and root */ -- if (S_ISDIR(dsb.st_mode) && (luid == 0 || luid == fsb->st_uid)) -+ if (S_ISDIR(dsb.st_mode) && (luid == 0 || luid == dsb.st_uid)) - return 0; - } - } else if (S_ISLNK(mode)) { -@@ -928,7 +928,7 @@ int rpmPackageFilesInstall(rpmts ts, rpm - } - /* Assume file does't exist when tmp suffix is in use */ - if (!suffix) { -- rc = fsmVerify(fpath, fi, &sb); -+ rc = fsmVerify(fpath, fi); - } else { - rc = (action == FA_TOUCH) ? 0 : RPMERR_ENOENT; - } ---- ./lib/verify.c.orig 2018-06-15 11:16:03.904098773 +0000 -+++ ./lib/verify.c 2018-06-15 11:23:42.842941766 +0000 -@@ -98,11 +98,8 @@ rpmVerifyAttrs rpmfilesVerify(rpmfiles f - struct stat dsb; - /* ...if it actually points to a directory */ - if (stat(fn, &dsb) == 0 && S_ISDIR(dsb.st_mode)) { -- uid_t fuid; - /* ...and is by a legit user, to match fsmVerify() behavior */ -- if (sb.st_uid == 0 || -- (rpmugUid(rpmfilesFUser(fi, ix), &fuid) == 0 && -- sb.st_uid == fuid)) { -+ if (sb.st_uid == 0 || sb.st_uid == dsb.st_uid) { - sb = dsb; /* struct assignment */ - } - } diff --git a/verifynodup.diff b/verifynodup.diff deleted file mode 100644 index 21e7617..0000000 --- a/verifynodup.diff +++ /dev/null @@ -1,72 +0,0 @@ ---- ./lib/verify.c.orig 2018-06-15 11:25:09.142724319 +0000 -+++ ./lib/verify.c 2018-06-15 11:27:32.246363744 +0000 -@@ -59,7 +59,7 @@ rpmVerifyAttrs rpmfilesVerify(rpmfiles f - rpmfileAttrs fileAttrs = rpmfilesFFlags(fi, ix); - rpmVerifyAttrs flags = rpmfilesVFlags(fi, ix); - const char * fn = rpmfilesFN(fi, ix); -- struct stat sb; -+ struct stat sb, fsb; - rpmVerifyAttrs vfy = RPMVERIFY_NONE; - - /* -@@ -88,7 +88,7 @@ rpmVerifyAttrs rpmfilesVerify(rpmfiles f - break; - } - -- if (fn == NULL || lstat(fn, &sb) != 0) { -+ if (fn == NULL || lstat(fn, &sb) != 0 || rpmfilesStat(fi, ix, 0, &fsb)) { - vfy |= RPMVERIFY_LSTATFAIL; - goto exit; - } -@@ -243,47 +243,11 @@ rpmVerifyAttrs rpmfilesVerify(rpmfiles f - vfy |= RPMVERIFY_MTIME; - } - -- if (flags & RPMVERIFY_USER) { -- const char * name = rpmugUname(sb.st_uid); -- const char * fuser = rpmfilesFUser(fi, ix); -- uid_t uid; -- int namematch = 0; -- int idmatch = 0; -- -- if (name && fuser) -- namematch = rstreq(name, fuser); -- if (fuser && rpmugUid(fuser, &uid) == 0) -- idmatch = (uid == sb.st_uid); -- -- if (namematch != idmatch) { -- rpmlog(RPMLOG_WARNING, -- _("Duplicate username or UID for user %s\n"), fuser); -- } -- -- if (!(namematch || idmatch)) -- vfy |= RPMVERIFY_USER; -- } -- -- if (flags & RPMVERIFY_GROUP) { -- const char * name = rpmugGname(sb.st_gid); -- const char * fgroup = rpmfilesFGroup(fi, ix); -- gid_t gid; -- int namematch = 0; -- int idmatch = 0; -- -- if (name && fgroup) -- namematch = rstreq(name, fgroup); -- if (fgroup && rpmugGid(fgroup, &gid) == 0) -- idmatch = (gid == sb.st_gid); -- -- if (namematch != idmatch) { -- rpmlog(RPMLOG_WARNING, -- _("Duplicate groupname or GID for group %s\n"), fgroup); -- } -+ if ((flags & RPMVERIFY_USER) && (sb.st_uid != fsb.st_uid)) -+ vfy |= RPMVERIFY_USER; - -- if (!(namematch || idmatch)) -- vfy |= RPMVERIFY_GROUP; -- } -+ if ((flags & RPMVERIFY_GROUP) && (sb.st_gid != fsb.st_gid)) -+ vfy |= RPMVERIFY_GROUP; - - exit: - return vfy; diff --git a/whatrequires-doc.diff b/whatrequires-doc.diff index 5cc652f..a4aec84 100644 --- a/whatrequires-doc.diff +++ b/whatrequires-doc.diff @@ -1,6 +1,6 @@ ---- ./doc/rpm.8.orig 2017-01-19 12:57:41.380527116 +0000 -+++ ./doc/rpm.8 2017-01-19 12:58:12.693437688 +0000 -@@ -592,6 +592,11 @@ Query all packages that provide the \fIC +--- ./doc/rpm.8.orig 2018-08-21 10:38:02.035078442 +0000 ++++ ./doc/rpm.8 2018-10-16 09:21:26.948505637 +0000 +@@ -632,6 +632,11 @@ Query all packages that provide the \fIC .TP \fB--whatrequires \fICAPABILITY\fB\fR Query all packages that require \fICAPABILITY\fR for proper functioning. @@ -10,5 +10,5 @@ +other packages may depend. To see the complete dependencies +for a package, use \fB-e --test \fIPACKAGE_NAME\fB\fR .TP - \fB--whatrecommends \fICAPABILITY\fB\fR - Query all packages that recommend \fICAPABILITY\fR. + \fB--whatconflicts \fICAPABILITY\fB\fR + Query all packages that conflict with \fICAPABILITY\fR. From 98c39aeee690f75d4d99b40843d778488ce75bd7ad0de043e13ab78fc29d5fdb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20Schr=C3=B6der?= Date: Mon, 22 Oct 2018 12:03:45 +0000 Subject: [PATCH 2/2] - update to rpm-4.14.2.1 OBS-URL: https://build.opensuse.org/package/show/Base:System/rpm?expand=0&rev=486 --- python-rpm.spec | 2 +- rpm-4.14.2.1.tar.bz2 | 3 +++ rpm-4.14.2.tar.bz2 | 3 --- rpm.changes | 6 ++++++ rpm.spec | 2 +- 5 files changed, 11 insertions(+), 5 deletions(-) create mode 100644 rpm-4.14.2.1.tar.bz2 delete mode 100644 rpm-4.14.2.tar.bz2 diff --git a/python-rpm.spec b/python-rpm.spec index bb130ff..4d6c460 100644 --- a/python-rpm.spec +++ b/python-rpm.spec @@ -20,7 +20,7 @@ # Enable Python build sourced from rpm spec %global with_python 1 Name: python-rpm -Version: 4.14.2 +Version: 4.14.2.1 Release: 0 Summary: Python Bindings for Manipulating RPM Packages License: GPL-2.0-or-later diff --git a/rpm-4.14.2.1.tar.bz2 b/rpm-4.14.2.1.tar.bz2 new file mode 100644 index 0000000..a0e9f52 --- /dev/null +++ b/rpm-4.14.2.1.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1139c24b7372f89c0a697096bf9809be70ba55e006c23ff47305c1849d98acda +size 4156574 diff --git a/rpm-4.14.2.tar.bz2 b/rpm-4.14.2.tar.bz2 deleted file mode 100644 index ad1d211..0000000 --- a/rpm-4.14.2.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:80cbc2c1e8e24e67c6f88b41d8ab5633b653a9a79d50d4750474a18cdb69352b -size 4151934 diff --git a/rpm.changes b/rpm.changes index 10447c7..87db8e4 100644 --- a/rpm.changes +++ b/rpm.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Mon Oct 22 13:26:55 CEST 2018 - mls@suse.de + +- update to rpm-4.14.2.1 + * fix regression in --setperms and --setugids + ------------------------------------------------------------------- Tue Oct 16 11:27:36 CEST 2018 - mls@suse.de diff --git a/rpm.spec b/rpm.spec index d672108..236e792 100644 --- a/rpm.spec +++ b/rpm.spec @@ -54,7 +54,7 @@ Requires: /usr/bin/awk Summary: The RPM Package Manager License: GPL-2.0-or-later Group: System/Packages -Version: 4.14.2 +Version: 4.14.2.1 Release: 0 Source: http://ftp.rpm.org/releases/rpm-4.14.x/rpm-%{version}.tar.bz2 Source1: RPM-HOWTO.tar.bz2