]> git.pld-linux.org Git - packages/poldek.git/commitdiff
- fix building with rpm.org 4.15+
authorJan Rękorajski <baggins@pld-linux.org>
Wed, 7 Oct 2020 21:36:40 +0000 (23:36 +0200)
committerJan Rękorajski <baggins@pld-linux.org>
Wed, 7 Oct 2020 21:36:40 +0000 (23:36 +0200)
poldek.spec
rpm-4.15.patch [new file with mode: 0644]

index 13fac60f402ca0fc0c60facdd962f525f5c75de2..2f23bb306b2c722b8312bc85d000e35fa014014b 100644 (file)
@@ -57,6 +57,7 @@ Patch2:               %{name}-ext-down-enable.patch
 Patch3:                %{name}-pc.patch
 Patch4:                %{name}-info.patch
 Patch5:                %{name}-multiarch-x32.patch
+Patch6:                rpm-4.15.patch
 URL:           http://poldek.pld-linux.org/
 BuildRequires: %{db_pkg}-devel >= %{ver_db}
 BuildRequires: autoconf >= 2.63
@@ -236,6 +237,7 @@ Moduły języka Python dla poldka.
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
+%patch6 -p1
 
 %{__rm} doc/poldek.info
 %{__rm} m4/libtool.m4 m4/lt*.m4
diff --git a/rpm-4.15.patch b/rpm-4.15.patch
new file mode 100644 (file)
index 0000000..193d2b8
--- /dev/null
@@ -0,0 +1,113 @@
+--- poldek-0.42.2/pm/rpmorg/signature.c.orig   2020-10-07 23:33:17.051835958 +0200
++++ poldek-0.42.2/pm/rpmorg/signature.c        2020-10-07 23:34:10.408960665 +0200
+@@ -101,18 +101,18 @@
+             case RPMSIGTAG_RSA:
+             case RPMSIGTAG_PGP5:      /* XXX legacy */
+             case RPMSIGTAG_PGP:
+-                flags |= VRFYSIG_SIGNPGP;
++                flags |= PKGVERIFY_PGP;
+                 break;
+             case RPMSIGTAG_DSA:
+             case RPMSIGTAG_GPG:
+-                flags |= VRFYSIG_SIGNGPG;
++                flags |= PKGVERIFY_GPG;
+                 break;
+             case RPMSIGTAG_LEMD5_2:
+             case RPMSIGTAG_LEMD5_1:
+             case RPMSIGTAG_MD5:
+-                flags |= VRFYSIG_DGST;
++                flags |= PKGVERIFY_MD;
+                 break;
+             default:
+@@ -137,7 +137,7 @@
+     int                       rc;
+-    n_assert(flags & (VRFYSIG_DGST | VRFYSIG_SIGN));
++    n_assert(flags & (PKGVERIFY_MD | PKGVERIFY_GPG | PKGVERIFY_PGP));
+     if (!rpm_signatures(path, &presented_signs, NULL))
+         return 0;
+@@ -146,13 +146,13 @@
+         char signam[255];
+         int n = 0;
+-        if (flags & VRFYSIG_DGST)
++        if (flags & PKGVERIFY_MD)
+             n += n_snprintf(&signam[n], sizeof(signam) - n, "digest/");
+-        if (flags & VRFYSIG_SIGNGPG)
++        if (flags & PKGVERIFY_GPG)
+             n += n_snprintf(&signam[n], sizeof(signam) - n, "gpg/");
+-        if (flags & VRFYSIG_SIGNPGP)
++        if (flags & PKGVERIFY_PGP)
+             n += n_snprintf(&signam[n], sizeof(signam) - n, "pgp/");
+         n_assert(n > 0);
+@@ -163,12 +163,12 @@
+     }
+     unsigned qva_flags = RPMVSF_DEFAULT;
+-    if ((flags & (VRFYSIG_SIGNPGP | VRFYSIG_SIGNGPG)) == 0) {
++    if ((flags & (PKGVERIFY_PGP | PKGVERIFY_GPG)) == 0) {
+         qva_flags |= RPMVSF_MASK_NOSIGNATURES;
+     }
+     // always check digests - without them rpmVerifySignature returns error
+-    //if ((flags & VRFYSIG_DGST) == 0)
++    //if ((flags & PKGVERIFY_MD) == 0)
+     //   qva_flags |= RPMVSF_MASK_NODIGESTS;
+     memset(&qva, '\0', sizeof(qva));
+@@ -183,7 +183,7 @@
+         rpmtsFree(ts);
+         DBGF("rpmVerifySignatures[md=%d, sign=%d] %s %s\n",
+-             flags & VRFYSIG_DGST ? 1:0, flags & VRFYSIG_SIGN ? 1:0,
++             flags & PKGVERIFY_MD ? 1:0, flags & (PKGVERIFY_GPG | PKGVERIFY_PGP) ? 1:0,
+              n_basenam(path), rc == 0 ? "OK" : "BAD");
+     }
+@@ -196,24 +196,12 @@
+ static
+ int do_pm_rpm_verify_signature(void *pm_rpm, const char *path, unsigned flags)
+ {
+-    unsigned rpmflags = 0;
+-
+-    pm_rpm = pm_rpm;
+     if (access(path, R_OK) != 0) {
+         logn(LOGERR, "%s: verify signature failed: %m", path);
+         return 0;
+     }
+-    if (flags & PKGVERIFY_GPG)
+-        rpmflags |= VRFYSIG_SIGNGPG;
+-
+-    if (flags & PKGVERIFY_PGP)
+-        rpmflags |= VRFYSIG_SIGNPGP;
+-
+-    if (flags & PKGVERIFY_MD)
+-        rpmflags |= VRFYSIG_DGST;
+-
+-    return do_verify_signature(path, rpmflags);
++    return do_verify_signature(path, flags);
+ }
+ extern int pm_rpm_verbose;
+--- poldek-0.42.2/pm/rpmorg/pm_rpm.h.orig      2020-10-07 23:34:34.276110954 +0200
++++ poldek-0.42.2/pm/rpmorg/pm_rpm.h   2020-10-07 23:34:40.173648478 +0200
+@@ -69,10 +69,6 @@
+                               struct poldek_ts *ts);
+ #include <rpm/rpmcli.h>
+-#define VRFYSIG_DGST     VERIFY_DIGEST
+-#define VRFYSIG_SIGN     VERIFY_SIGNATURE
+-#define VRFYSIG_SIGNGPG  VERIFY_SIGNATURE
+-#define VRFYSIG_SIGNPGP  VERIFY_SIGNATURE
+ int pm_rpm_verify_signature(void *pm_rpm, const char *path, unsigned flags);
This page took 0.03473 seconds and 4 git commands to generate.