[pacman-dev] [PATCH 4/4] Move default siglevel value from backend to frontend

Dan McGee dan at archlinux.org
Wed Sep 21 11:18:16 EDT 2011


This takes the libraries hidden default out of the equation: hidden in
the sense that we can't even find out what it is until we create a
handle. This is a chicken-and-egg problem where we have probably already
parsed the config, so it is hard to get the bitmask value right.

Move it to the frontend so the caller can do whatever the heck they
want. This also exposes a shortcoming where the frontend doesn't know if
the library even supports signatures, so we should probably add a
alpm_capabilities() method which exposes things like HAS_DOWNLOADER,
HAS_SIGNATURES, etc.

Signed-off-by: Dan McGee <dan at archlinux.org>
---
 lib/libalpm/handle.c |    7 +------
 src/pacman/conf.c    |    3 ++-
 2 files changed, 3 insertions(+), 7 deletions(-)

diff --git a/lib/libalpm/handle.c b/lib/libalpm/handle.c
index dcd81ce..7402be5 100644
--- a/lib/libalpm/handle.c
+++ b/lib/libalpm/handle.c
@@ -39,17 +39,12 @@
 #include "trans.h"
 #include "alpm.h"
 
-alpm_handle_t *_alpm_handle_new()
+alpm_handle_t *_alpm_handle_new(void)
 {
 	alpm_handle_t *handle;
 
 	CALLOC(handle, 1, sizeof(alpm_handle_t), return NULL);
 
-#ifdef HAVE_LIBGPGME
-	handle->siglevel = ALPM_SIG_PACKAGE | ALPM_SIG_PACKAGE_OPTIONAL |
-		ALPM_SIG_DATABASE | ALPM_SIG_DATABASE_OPTIONAL;
-#endif
-
 	return handle;
 }
 
diff --git a/src/pacman/conf.c b/src/pacman/conf.c
index e8b34f7..7f4b006 100644
--- a/src/pacman/conf.c
+++ b/src/pacman/conf.c
@@ -54,7 +54,8 @@ config_t *config_new(void)
 	newconfig->op = PM_OP_MAIN;
 	newconfig->logmask = ALPM_LOG_ERROR | ALPM_LOG_WARNING;
 	newconfig->configfile = strdup(CONFFILE);
-	newconfig->siglevel = ALPM_SIG_USE_DEFAULT;
+	newconfig->siglevel = ALPM_SIG_PACKAGE | ALPM_SIG_PACKAGE_OPTIONAL |
+		ALPM_SIG_DATABASE | ALPM_SIG_DATABASE_OPTIONAL;
 
 	return newconfig;
 }
-- 
1.7.6.3



More information about the pacman-dev mailing list