? !#:+ ? Makefile.am-N ? db ? db-SAVE ? ip ? t ? x ? xx ? y ? db3/db3lobjs ? db3/x ? m4/codeset.m4 ? m4/gettext.m4 ? m4/glibc2.m4 ? m4/glibc21.m4 ? m4/iconv.m4 ? m4/intdiv0.m4 ? m4/intl.m4 ? m4/intldir.m4 ? m4/intmax.m4 ? m4/inttypes-pri.m4 ? m4/inttypes_h.m4 ? m4/lcmessage.m4 ? m4/lib-ld.m4 ? m4/lib-link.m4 ? m4/lib-prefix.m4 ? m4/lock.m4 ? m4/longdouble.m4 ? m4/longlong.m4 ? m4/nls.m4 ? m4/po.m4 ? m4/printf-posix.m4 ? m4/progtest.m4 ? m4/size_max.m4 ? m4/stdint_h.m4 ? m4/uintmax_t.m4 ? m4/ulonglong.m4 ? m4/visibility.m4 ? m4/wchar_t.m4 ? m4/wint_t.m4 ? m4/xsize.m4 ? rpmio/macro.c-NEW ? rpmio/macro.c-ORIG ? rpmio/macro.c-V0 ? rpmio/macro.c.diff ? rpmio/test ? rpmio/testmacros Index: devtool.conf =================================================================== RCS file: /v/rpm/cvs/rpm/devtool.conf,v retrieving revision 2.81 diff -u -b -B -w -p -r2.81 devtool.conf --- devtool.conf 26 Jul 2007 08:10:31 -0000 2.81 +++ devtool.conf 30 Jul 2007 16:21:58 -0000 @@ -52,6 +52,7 @@ %configure "$@" %jbj + %checkout %system %system @@ -61,7 +62,6 @@ # Linux-based system like Fedora. This requires both the latest # development tools and the third-party libraries to be installed # in system locations. - %checkout %autogen %configure \ --verbose \ @@ -79,7 +79,12 @@ --with-libelf \ --with-selinux \ --with-python \ +<<<<<<< devtool.conf + --with-perl \ + --disable-build-lafiles \ +======= --without-perl \ +>>>>>>> 2.81 --enable-build-pic \ --enable-build-pie \ --enable-build-versionscript \ Index: lib/package.c =================================================================== RCS file: /v/rpm/cvs/rpm/lib/package.c,v retrieving revision 2.140 diff -u -b -B -w -p -r2.140 package.c --- lib/package.c 16 Jul 2007 01:32:28 -0000 2.140 +++ lib/package.c 30 Jul 2007 16:21:58 -0000 @@ -112,6 +112,7 @@ void headerMergeLegacySigs(Header h, con case RPMSIGTAG_SIZE: tag = RPMTAG_SIGSIZE; /*@switchbreak@*/ break; +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_LEMD5_1: tag = RPMTAG_SIGLEMD5_1; /*@switchbreak@*/ break; @@ -121,15 +122,18 @@ void headerMergeLegacySigs(Header h, con case RPMSIGTAG_LEMD5_2: tag = RPMTAG_SIGLEMD5_2; /*@switchbreak@*/ break; +#endif case RPMSIGTAG_MD5: tag = RPMTAG_SIGMD5; /*@switchbreak@*/ break; +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_GPG: tag = RPMTAG_SIGGPG; /*@switchbreak@*/ break; case RPMSIGTAG_PGP5: tag = RPMTAG_SIGPGP5; /*@switchbreak@*/ break; +#endif case RPMSIGTAG_PAYLOADSIZE: tag = RPMTAG_ARCHIVESIZE; /*@switchbreak@*/ break; @@ -192,6 +196,7 @@ Header headerRegenSigHeader(const Header case RPMTAG_SIGSIZE: stag = RPMSIGTAG_SIZE; /*@switchbreak@*/ break; +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMTAG_SIGLEMD5_1: stag = RPMSIGTAG_LEMD5_1; /*@switchbreak@*/ break; @@ -201,15 +206,18 @@ Header headerRegenSigHeader(const Header case RPMTAG_SIGLEMD5_2: stag = RPMSIGTAG_LEMD5_2; /*@switchbreak@*/ break; +#endif case RPMTAG_SIGMD5: stag = RPMSIGTAG_MD5; /*@switchbreak@*/ break; +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMTAG_SIGGPG: stag = RPMSIGTAG_GPG; /*@switchbreak@*/ break; case RPMTAG_SIGPGP5: stag = RPMSIGTAG_PGP5; /*@switchbreak@*/ break; +#endif case RPMTAG_ARCHIVESIZE: /* XXX rpm-4.1 and later has archive size in signature header. */ if (noArchiveSize) @@ -853,6 +861,7 @@ rpmRC rpmReadPackageFile(rpmts ts, void if (_chk(RPMVSF_NORSAHEADER) && headerIsEntry(sigh, RPMSIGTAG_RSA)) { sigtag = RPMSIGTAG_RSA; } else +#if defined(SUPPORT_RPMV3_SIGNATURES) if (_chk(RPMVSF_NODSA|RPMVSF_NEEDPAYLOAD) && headerIsEntry(sigh, RPMSIGTAG_GPG)) { @@ -867,6 +876,7 @@ rpmRC rpmReadPackageFile(rpmts ts, void fdInitDigest(fd, PGPHASHALGO_MD5, 0); opx = RPMTS_OP_SIGNATURE; } else +#endif if (_chk(RPMVSF_NOSHA1HEADER) && headerIsEntry(sigh, RPMSIGTAG_SHA1)) { sigtag = RPMSIGTAG_SHA1; } else @@ -980,6 +990,7 @@ rpmRC rpmReadPackageFile(rpmts ts, void rpmtsOp(ts, RPMTS_OP_DIGEST)->count--; /* XXX one too many */ uh = headerFreeData(uh, uht); } break; +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_GPG: case RPMSIGTAG_PGP5: /* XXX legacy */ case RPMSIGTAG_PGP: @@ -994,6 +1005,7 @@ rpmRC rpmReadPackageFile(rpmts ts, void goto exit; } /*@fallthrough@*/ +#endif case RPMSIGTAG_MD5: /* Legacy signatures need the compressed payload in the digest too. */ (void) rpmswEnter(rpmtsOp(ts, RPMTS_OP_DIGEST), 0); Index: lib/rpmchecksig.c =================================================================== RCS file: /v/rpm/cvs/rpm/lib/rpmchecksig.c,v retrieving revision 1.119 diff -u -b -B -w -p -r1.119 rpmchecksig.c --- lib/rpmchecksig.c 17 Jul 2007 23:49:14 -0000 1.119 +++ lib/rpmchecksig.c 30 Jul 2007 16:21:58 -0000 @@ -284,11 +284,13 @@ static int rpmReSign(/*@unused@*/ rpmts nh = headerFree(nh); } +#if defined(SUPPORT_RPMV3_SIGNATURES) /* Eliminate broken digest values. */ xx = headerRemoveEntry(sigh, RPMSIGTAG_LEMD5_1); xx = headerRemoveEntry(sigh, RPMSIGTAG_LEMD5_2); xx = headerRemoveEntry(sigh, RPMSIGTAG_BADSHA1_1); xx = headerRemoveEntry(sigh, RPMSIGTAG_BADSHA1_2); +#endif /* Toss and recalculate header+payload size and digests. */ xx = headerRemoveEntry(sigh, RPMSIGTAG_SIZE); @@ -299,10 +301,12 @@ static int rpmReSign(/*@unused@*/ rpmts xx = rpmAddSignature(sigh, sigtarget, RPMSIGTAG_SHA1, qva->passPhrase); if (deleting) { /* Nuke all the signature tags. */ +#if defined(SUPPORT_RPMV3_SIGNATURES) xx = headerRemoveEntry(sigh, RPMSIGTAG_GPG); - xx = headerRemoveEntry(sigh, RPMSIGTAG_DSA); xx = headerRemoveEntry(sigh, RPMSIGTAG_PGP5); xx = headerRemoveEntry(sigh, RPMSIGTAG_PGP); +#endif + xx = headerRemoveEntry(sigh, RPMSIGTAG_DSA); xx = headerRemoveEntry(sigh, RPMSIGTAG_RSA); } else /* If gpg/pgp is configured, replace the signature. */ if ((sigtag = rpmLookupSignatureType(RPMLOOKUPSIG_QUERY)) > 0) { @@ -312,6 +316,7 @@ static int rpmReSign(/*@unused@*/ rpmts memset(oldsignid, 0, sizeof(oldsignid)); xx = getSignid(sigh, sigtag, oldsignid); +#if defined(SUPPORT_RPMV3_SIGNATURES) switch (sigtag) { case RPMSIGTAG_DSA: xx = headerRemoveEntry(sigh, RPMSIGTAG_GPG); @@ -327,6 +332,7 @@ static int rpmReSign(/*@unused@*/ rpmts xx = headerRemoveEntry(sigh, RPMSIGTAG_RSA); /*@switchbreak@*/ break; } +#endif xx = headerRemoveEntry(sigh, sigtag); xx = rpmAddSignature(sigh, sigtarget, sigtag, qva->passPhrase); @@ -797,10 +803,12 @@ int rpmVerifySignatures(QVA_t qva, rpmts sigtag = RPMSIGTAG_DSA; else if (headerIsEntry(sigh, RPMSIGTAG_RSA)) sigtag = RPMSIGTAG_RSA; +#if defined(SUPPORT_RPMV3_SIGNATURES) else if (headerIsEntry(sigh, RPMSIGTAG_GPG)) sigtag = RPMSIGTAG_GPG; else if (headerIsEntry(sigh, RPMSIGTAG_PGP)) sigtag = RPMSIGTAG_PGP; +#endif } if (sigtag == 0 && !nodigests) { if (headerIsEntry(sigh, RPMSIGTAG_MD5)) @@ -814,23 +822,34 @@ assert(dig != NULL); sigp = rpmtsSignature(ts); /* XXX RSA needs the hash_algo, so decode early. */ - if (sigtag == RPMSIGTAG_RSA || sigtag == RPMSIGTAG_PGP) { + if (sigtag == RPMSIGTAG_RSA +#if defined(SUPPORT_RPMV3_SIGNATURES) + || sigtag == RPMSIGTAG_PGP +#endif + ) { xx = headerGetEntry(sigh, sigtag, &sigtype, (void **)&sig, &siglen); xx = pgpPrtPkts(sig, siglen, dig, 0); sig = headerFreeData(sig, sigtype); +#if defined(SUPPORT_RPMV3_SIGNATURES) /* XXX assume same hash_algo in header-only and header+payload */ if ((headerIsEntry(sigh, RPMSIGTAG_PGP) || headerIsEntry(sigh, RPMSIGTAG_PGP5)) && dig->signature.hash_algo != PGPHASHALGO_MD5) fdInitDigest(fd, dig->signature.hash_algo, 0); +#endif } - if (headerIsEntry(sigh, RPMSIGTAG_PGP) + if (headerIsEntry(sigh, RPMSIGTAG_MD5) +#if defined(SUPPORT_RPMV3_SIGNATURES) + || headerIsEntry(sigh, RPMSIGTAG_PGP) || headerIsEntry(sigh, RPMSIGTAG_PGP5) - || headerIsEntry(sigh, RPMSIGTAG_MD5)) +#endif + ) fdInitDigest(fd, PGPHASHALGO_MD5, 0); +#if defined(SUPPORT_RPMV3_SIGNATURES) if (headerIsEntry(sigh, RPMSIGTAG_GPG)) fdInitDigest(fd, PGPHASHALGO_SHA1, 0); +#endif /* Read the file, generating digest(s) on the fly. */ if (dig == NULL || sigp == NULL || readFile(fd, fn, dig)) { @@ -861,9 +880,11 @@ assert(dig != NULL); switch (sigtag) { case RPMSIGTAG_RSA: case RPMSIGTAG_DSA: +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_GPG: case RPMSIGTAG_PGP5: /* XXX legacy */ case RPMSIGTAG_PGP: +#endif if (nosignatures) continue; xx = pgpPrtPkts(sig, siglen, dig, @@ -884,17 +905,21 @@ assert(dig != NULL); if (!nosignatures && sigtag == RPMSIGTAG_DSA) continue; /*@switchbreak@*/ break; +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_LEMD5_2: case RPMSIGTAG_LEMD5_1: +#endif case RPMSIGTAG_MD5: if (nodigests) continue; +#if defined(SUPPORT_RPMV3_SIGNATURES) /* * Don't bother with md5 if pgp, as RSA/MD5 is more reliable * than the -- now unsupported -- legacy md5 breakage. */ if (!nosignatures && sigtag == RPMSIGTAG_PGP) continue; +#endif /*@switchbreak@*/ break; default: continue; @@ -920,16 +945,19 @@ assert(dig != NULL); b = stpcpy(b, "SHA1 "); res2 = 1; /*@switchbreak@*/ break; +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_LEMD5_2: case RPMSIGTAG_LEMD5_1: case RPMSIGTAG_MD5: b = stpcpy(b, "MD5 "); res2 = 1; /*@switchbreak@*/ break; +#endif case RPMSIGTAG_RSA: b = stpcpy(b, "RSA "); res2 = 1; /*@switchbreak@*/ break; +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_PGP5: /* XXX legacy */ case RPMSIGTAG_PGP: switch (res3) { @@ -962,10 +990,12 @@ assert(dig != NULL); /*@innerbreak@*/ break; } /*@switchbreak@*/ break; +#endif case RPMSIGTAG_DSA: b = stpcpy(b, "(SHA1) DSA "); res2 = 1; /*@switchbreak@*/ break; +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_GPG: /* Do not consider this a failure */ switch (res3) { @@ -985,6 +1015,7 @@ assert(dig != NULL); /*@innerbreak@*/ break; } /*@switchbreak@*/ break; +#endif default: b = stpcpy(b, "?UnknownSignatureType? "); res2 = 1; @@ -1003,24 +1034,30 @@ assert(dig != NULL); case RPMSIGTAG_SHA1: b = stpcpy(b, "sha1 "); /*@switchbreak@*/ break; +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_LEMD5_2: case RPMSIGTAG_LEMD5_1: +#endif case RPMSIGTAG_MD5: b = stpcpy(b, "md5 "); /*@switchbreak@*/ break; case RPMSIGTAG_RSA: b = stpcpy(b, "rsa "); /*@switchbreak@*/ break; +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_PGP5: /* XXX legacy */ case RPMSIGTAG_PGP: b = stpcpy(b, "(md5) pgp "); /*@switchbreak@*/ break; +#endif case RPMSIGTAG_DSA: b = stpcpy(b, "(sha1) dsa "); /*@switchbreak@*/ break; +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_GPG: b = stpcpy(b, "gpg "); /*@switchbreak@*/ break; +#endif default: b = stpcpy(b, "??? "); /*@switchbreak@*/ break; Index: lib/rpmlib.h =================================================================== RCS file: /v/rpm/cvs/rpm/lib/rpmlib.h,v retrieving revision 2.427 diff -u -b -B -w -p -r2.427 rpmlib.h --- lib/rpmlib.h 26 Jul 2007 00:58:57 -0000 2.427 +++ lib/rpmlib.h 30 Jul 2007 16:21:58 -0000 @@ -193,16 +193,20 @@ typedef enum rpmTag_e { /* XXX 2nd underscore prevents tagTable generation */ RPMTAG_SIG_BASE = HEADER_SIGBASE, RPMTAG_SIGSIZE = RPMTAG_SIG_BASE+1, /* i */ +#if defined(SUPPORT_RPMV3_SIGNATURES) RPMTAG_SIGLEMD5_1 = RPMTAG_SIG_BASE+2, /* internal - obsolete */ RPMTAG_SIGPGP = RPMTAG_SIG_BASE+3, /* x */ RPMTAG_SIGLEMD5_2 = RPMTAG_SIG_BASE+4, /* x internal - obsolete */ +#endif RPMTAG_SIGMD5 = RPMTAG_SIG_BASE+5, /* x */ #define RPMTAG_PKGID RPMTAG_SIGMD5 /* x */ +#if defined(SUPPORT_RPMV3_SIGNATURES) RPMTAG_SIGGPG = RPMTAG_SIG_BASE+6, /* x */ RPMTAG_SIGPGP5 = RPMTAG_SIG_BASE+7, /* internal - obsolete */ RPMTAG_BADSHA1_1 = RPMTAG_SIG_BASE+8, /* internal - obsolete */ RPMTAG_BADSHA1_2 = RPMTAG_SIG_BASE+9, /* internal - obsolete */ +#endif RPMTAG_PUBKEYS = RPMTAG_SIG_BASE+10, /* s[] */ RPMTAG_DSAHEADER = RPMTAG_SIG_BASE+11, /* x */ RPMTAG_RSAHEADER = RPMTAG_SIG_BASE+12, /* x */ @@ -1016,15 +1020,21 @@ struct rpmlead { */ enum rpmtagSignature { RPMSIGTAG_SIZE = 1000, /*!< internal Header+Payload size in bytes. */ +#if defined(SUPPORT_RPMV3_SIGNATURES) RPMSIGTAG_LEMD5_1 = 1001, /*!< internal Broken MD5, take 1 @deprecated legacy. */ RPMSIGTAG_PGP = 1002, /*!< internal PGP 2.6.3 signature. */ RPMSIGTAG_LEMD5_2 = 1003, /*!< internal Broken MD5, take 2 @deprecated legacy. */ +#endif RPMSIGTAG_MD5 = 1004, /*!< internal MD5 signature. */ +#if defined(SUPPORT_RPMV3_SIGNATURES) RPMSIGTAG_GPG = 1005, /*!< internal GnuPG signature. */ RPMSIGTAG_PGP5 = 1006, /*!< internal PGP5 signature @deprecated legacy. */ +#endif RPMSIGTAG_PAYLOADSIZE = 1007,/*!< internal uncompressed payload size in bytes. */ +#if defined(SUPPORT_RPMV3_SIGNATURES) RPMSIGTAG_BADSHA1_1 = RPMTAG_BADSHA1_1, /*!< internal Broken SHA1, take 1. */ RPMSIGTAG_BADSHA1_2 = RPMTAG_BADSHA1_2, /*!< internal Broken SHA1, take 2. */ +#endif RPMSIGTAG_SHA1 = RPMTAG_SHA1HEADER, /*!< internal sha1 header digest. */ RPMSIGTAG_DSA = RPMTAG_DSAHEADER, /*!< internal DSA header signature. */ RPMSIGTAG_RSA = RPMTAG_RSAHEADER /*!< internal RSA header signature. */ Index: lib/signature.c =================================================================== RCS file: /v/rpm/cvs/rpm/lib/signature.c,v retrieving revision 2.169 diff -u -b -B -w -p -r2.169 signature.c --- lib/signature.c 30 Jul 2007 01:40:35 -0000 2.169 +++ lib/signature.c 30 Jul 2007 16:21:58 -0000 @@ -48,12 +48,14 @@ int rpmLookupSignatureType(int action) rc = 0; else if (!xstrcasecmp(name, "none")) rc = 0; +#if defined(SUPPORT_RPMV3_SIGNATURES) else if (!xstrcasecmp(name, "pgp")) rc = RPMSIGTAG_PGP; else if (!xstrcasecmp(name, "pgp5")) /* XXX legacy */ rc = RPMSIGTAG_PGP; else if (!xstrcasecmp(name, "gpg")) rc = RPMSIGTAG_GPG; +#endif else rc = -1; /* Invalid %_signature spec in macro file */ name = _free(name); @@ -661,6 +663,7 @@ static int makeGPGSignature(const char * case RPMSIGTAG_MD5: case RPMSIGTAG_SHA1: break; +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_GPG: /* XXX check MD5 hash too? */ if (sigp->pubkey_algo == PGPPUBKEYALGO_RSA) @@ -671,6 +674,7 @@ static int makeGPGSignature(const char * if (sigp->pubkey_algo == PGPPUBKEYALGO_DSA) *sigTagp = RPMSIGTAG_GPG; break; +#endif case RPMSIGTAG_DSA: /* XXX check MD5 hash too? */ if (sigp->pubkey_algo == PGPPUBKEYALGO_RSA) @@ -711,9 +715,11 @@ static int makeHDRSignature(Header sigh, switch (sigTag) { case RPMSIGTAG_SIZE: case RPMSIGTAG_MD5: +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_PGP5: /* XXX legacy */ case RPMSIGTAG_PGP: case RPMSIGTAG_GPG: +#endif goto exit; /*@notreached@*/ break; case RPMSIGTAG_SHA1: @@ -824,6 +830,7 @@ int rpmAddSignature(Header sigh, const c break; ret = 0; break; +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_PGP5: /* XXX legacy */ case RPMSIGTAG_PGP: if (makePGPSignature(file, &sigTag, &pkt, &pktlen, passPhrase) @@ -842,6 +849,7 @@ int rpmAddSignature(Header sigh, const c /* XXX Piggyback a header-only DSA signature as well. */ ret = makeHDRSignature(sigh, file, RPMSIGTAG_DSA, passPhrase); break; +#endif case RPMSIGTAG_RSA: case RPMSIGTAG_DSA: case RPMSIGTAG_SHA1: @@ -888,7 +896,9 @@ static int checkPassPhrase(const char * unsetenv("MALLOC_CHECK_"); switch (sigTag) { case RPMSIGTAG_DSA: +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_GPG: +#endif { const char *gpg_path = rpmExpand("%{?_gpg_path}", NULL); /*@-boundsread@*/ @@ -907,8 +917,10 @@ static int checkPassPhrase(const char * strerror(errno)); } /*@notreached@*/ break; case RPMSIGTAG_RSA: +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_PGP5: /* XXX legacy */ case RPMSIGTAG_PGP: +#endif { const char *pgp_path = rpmExpand("%{?_pgp_path}", NULL); const char *path; pgpVersion pgpVer; @@ -970,7 +982,9 @@ char * rpmGetPassPhrase(const char * pro switch (sigTag) { case RPMSIGTAG_DSA: +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_GPG: +#endif /*@-boundsread@*/ { const char *name = rpmExpand("%{?_gpg_name}", NULL); aok = (name && *name != '\0'); @@ -983,8 +997,10 @@ char * rpmGetPassPhrase(const char * pro _("You must set \"%%_gpg_name\" in your macro file\n")); break; case RPMSIGTAG_RSA: +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_PGP5: /* XXX legacy */ case RPMSIGTAG_PGP: +#endif /*@-boundsread@*/ { const char *name = rpmExpand("%{?_pgp_name}", NULL); aok = (name && *name != '\0'); @@ -1234,7 +1250,12 @@ assert(sigp != NULL); /* Verify the desired signature match. */ switch (sigp->pubkey_algo) { case PGPPUBKEYALGO_RSA: - if (sigtag == RPMSIGTAG_PGP || sigtag == RPMSIGTAG_PGP5 || sigtag == RPMSIGTAG_RSA) + if (sigtag == RPMSIGTAG_RSA +#if defined(SUPPORT_RPMV3_SIGNATURES) + || sigtag == RPMSIGTAG_PGP + || sigtag == RPMSIGTAG_PGP5 +#endif + ) break; /*@fallthrough@*/ default: @@ -1424,7 +1445,12 @@ assert(sigp != NULL); } /* XXX sanity check on sigtag and signature agreement. */ - if (!((sigtag == RPMSIGTAG_GPG || sigtag == RPMSIGTAG_DSA) + if (!( +#if defined(SUPPORT_RPMV3_SIGNATURES) + (sigtag == RPMSIGTAG_GPG || sigtag == RPMSIGTAG_DSA) +#else + (sigtag == RPMSIGTAG_DSA) +#endif && sigp->pubkey_algo == PGPPUBKEYALGO_DSA && sigp->hash_algo == PGPHASHALGO_SHA1)) { @@ -1515,15 +1541,18 @@ rpmVerifySignature(const rpmts ts, char case RPMSIGTAG_RSA: res = verifyRSASignature(ts, result, dig->hdrmd5ctx); break; +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_PGP5: /* XXX legacy */ case RPMSIGTAG_PGP: res = verifyRSASignature(ts, result, ((dig->signature.hash_algo == PGPHASHALGO_MD5) ? dig->md5ctx : dig->sha1ctx)); break; +#endif case RPMSIGTAG_DSA: res = verifyDSASignature(ts, result, dig->hdrsha1ctx); break; +#if defined(SUPPORT_RPMV3_SIGNATURES) case RPMSIGTAG_GPG: res = verifyDSASignature(ts, result, dig->sha1ctx); break; @@ -1532,6 +1561,7 @@ rpmVerifySignature(const rpmts ts, char sprintf(result, _("Broken MD5 digest: UNSUPPORTED\n")); res = RPMRC_NOTFOUND; break; +#endif default: sprintf(result, _("Signature: UNKNOWN (%d)\n"), sigtag); res = RPMRC_NOTFOUND;