The recent changes to add variable encryption have left one compilation issue that I found. Attached is a patch that adds the missing ifdefs to resolve the issue.

--Mark
rpmpgp.c: Add missing if defs around crypto implementations

Without these, the system will error trying to find the correct crypto 
library to use.

Signed-off-by: Mark Hatle <mark.ha...@windriver.com>

Index: rpm/rpmio/rpmpgp.c
===================================================================
--- rpm.orig/rpmio/rpmpgp.c
+++ rpm/rpmio/rpmpgp.c
@@ -1339,16 +1339,26 @@ int pgpExportPubkey(pgpDig dig)
 {
     int rc = 0;                /* assume failure */
 
+#if defined(WITH_BEECRYPT)
     if (pgpImplVecs == &rpmbcImplVecs)
        rc = rpmbcExportPubkey(dig);
+#endif
+#if defined(WITH_SSL)
     if (pgpImplVecs == &rpmsslImplVecs)
        rc = rpmsslExportPubkey(dig);
+#endif
+#if defined(WITH_NSS)
     if (pgpImplVecs == &rpmnssImplVecs)
        rc = rpmnssExportPubkey(dig);
+#endif
+#if defined(WITH_GCRYPT)
     if (pgpImplVecs == &rpmgcImplVecs)
        rc = rpmgcExportPubkey(dig);
+#endif
+#if defined(WITH_TOMCRYPT)
     if (pgpImplVecs == &rpmltcImplVecs)
        rc = rpmltcExportPubkey(dig);
+#endif
     return rc;
 }
 
@@ -1356,16 +1366,26 @@ int pgpExportSignature(pgpDig dig, DIGES
 {
     int rc = 0;                /* assume failure */
 
+#if defined(WITH_BEECRYPT)
     if (pgpImplVecs == &rpmbcImplVecs)
        rc = rpmbcExportSignature(dig, ctx);
+#endif
+#if defined(WITH_SSL)
     if (pgpImplVecs == &rpmsslImplVecs)
        rc = rpmsslExportSignature(dig, ctx);
+#endif
+#if defined(WITH_NSS)
     if (pgpImplVecs == &rpmnssImplVecs)
        rc = rpmnssExportSignature(dig, ctx);
+#endif
+#if defined(WITH_GCRYPT)
     if (pgpImplVecs == &rpmgcImplVecs)
        rc = rpmgcExportSignature(dig, ctx);
+#endif
+#if defined(WITH_TOMCRYPT)
     if (pgpImplVecs == &rpmltcImplVecs)
        rc = rpmltcExportSignature(dig, ctx);
+#endif
     return rc;
 }
 

Reply via email to