rpm/rpmio
Panu Matilainen 725ca51695 Allow building rpm without OpenPGP support
For bootstrapping purposes, having rpm depend on Rust is painful, but
directing people to unmaintained crypto code as an alternative is
hair-raising. As a middle ground, let rpm be built without OpenPGP
support at all, which at least gives you a functional rpm and rpm-build
even if you can't sign or verify signatures.

Achieving this is a moderately complex dance which can't meaningfully
be split into multiple commits because everything is interconnected:

Add a new WITH_SEQUOIA option to control use of Sequoia, on by default.
When Sequoia is disabled, default to a newly added dummy PGP implementation
instead which just returns error on everything. And finally, if the
older WITH_INTERNAL_OPENPGP is enabled, use the old PGP implementation.

As the intent is to cut out rpmpgp_legacy to a separate repository,
sanity requires that we also split the openssl/libgcrypt code at the
digest/signature fault line. It's not ideal, but the alternative of
having unused crypto code on which an external component depends on
is just not sustainable. This way, the signature side of things is
quite neatly cut off with the PGP stuff. The diff looks big but there
are no code/functional changes in the libgcrypt/openssl split.
2024-03-20 12:42:33 +02:00
..
rpmpgp_legacy Allow building rpm without OpenPGP support 2024-03-20 12:42:33 +02:00
CMakeLists.txt Allow building rpm without OpenPGP support 2024-03-20 12:42:33 +02:00
argv.c Convert some obvious cases to use rstrndup() instead of manual work 2020-11-09 09:28:54 +02:00
base64.c Fix off-by-one error 2016-05-25 12:31:19 +01:00
digest.c Eliminate some unnecessary rpmpgp.h includes 2023-10-06 10:59:38 +03:00
digest_libgcrypt.c Allow building rpm without OpenPGP support 2024-03-20 12:42:33 +02:00
digest_openssl.c Allow building rpm without OpenPGP support 2024-03-20 12:42:33 +02:00
expression.c Fix an UB in expression code (when built without -fno-strict-overflow) 2024-01-31 10:55:38 +02:00
lposix.c Document fork, exec, wait and redirect2null Lua functions as deprecated 2024-03-14 15:16:11 +01:00
lposix.h Merge Lua posix extension into librpmio 2022-04-08 14:11:44 +03:00
macro.c Issue a warning when passing arguments to non-parametric macros 2024-03-14 10:30:30 +01:00
modemuncher.c Merge Lua posix extension into librpmio 2022-04-08 14:11:44 +03:00
rgetopt.c Drop top-level source for our global include directories 2023-09-13 13:34:17 +03:00
rpmfileutil.c Drop top-level source for our global include directories 2023-09-13 13:34:17 +03:00
rpmglob.c Fix unconditional dependency on non-POSIX GLOB_ONLYDIR flag 2024-01-08 12:32:35 +02:00
rpmhook.c Drop top-level source for our global include directories 2023-09-13 13:34:17 +03:00
rpmhook.h Switch the floating point type in rpmhook from float to double 2021-11-22 16:35:56 +02:00
rpmio.c Hide FDIO_t type definition 2023-12-01 14:21:30 +02:00
rpmio_internal.h Remove leading directories from doxygen notation 2022-03-10 08:40:07 +02:00
rpmkeyring.c Add pgpVerifySignature2() and pgpPrtParams2() 2023-04-20 14:08:55 +03:00
rpmlog.c Remove stillborn rpmlog facility definitions 2022-04-29 10:20:12 +03:00
rpmlua.c Fix a bunch of argv leaks in the Lua extension 2024-01-31 10:13:08 +02:00
rpmlua.h Add optional readline history support in rpmlua interactive mode 2021-12-20 12:19:07 +02:00
rpmmacro_internal.h Remove leading directories from doxygen notation 2022-03-10 08:40:07 +02:00
rpmmalloc.c Drop silly "register" use from our allocation routines 2024-03-18 10:12:39 +02:00
rpmpgp.c Eliminate remaining pgpValStr() uses in the codebase 2023-10-12 14:57:17 +03:00
rpmpgp_dummy.c Allow building rpm without OpenPGP support 2024-03-20 12:42:33 +02:00
rpmpgp_sequoia.c Add pgpVerifySignature2() and pgpPrtParams2() 2023-04-20 14:08:55 +03:00
rpmpgpval.h Bury pgpValStr() inside rpmpgp.c now that we can 2023-10-12 11:46:36 +03:00
rpmsq.c Remove most of rpmsq signal machinery, no longer needed 2022-04-08 12:00:11 +03:00
rpmstring.c And another one bites the dust, pgpHexStr() isn't needed anymore 2022-04-08 12:00:11 +03:00
rpmstrpool.c Fix possible read beyond buffer in rstrnlenhash() 2020-09-04 13:05:38 +03:00
rpmsw.c Rip i386-specific RDTSC support from rpmsw, use gettimeofday() everywhere 2008-04-21 12:39:18 +03:00
rpmver.c Shut up bogus Doxygen warnings about undocumented parameters 2020-10-28 10:40:41 +02:00
rpmvercmp.c Move rpmvercmp() to librpmio 2020-05-27 14:14:00 +02:00
url.c Eliminate bunch of obvious dead NULL-assignments around librpmio 2011-05-28 19:43:52 +03:00