diff options
author | Andrew Gregory <andrew.gregory.8@gmail.com> | 2018-11-24 15:56:11 -0800 |
---|---|---|
committer | Allan McRae <allan@archlinux.org> | 2018-11-27 22:48:43 +1000 |
commit | 3726693612a7ab34a1cd27916a6d65314299812c (patch) | |
tree | 5d6287997c1e6ff702f58dac9cb16b547bf8fbb5 | |
parent | 508b4e3ec0cb3e365942f4dc0626edda4789932b (diff) | |
download | pacman-3726693612a7ab34a1cd27916a6d65314299812c.tar.xz |
add specific error for missing gpg support
"wrong or NULL argument passed" is a useless error for end users.
Fixes FS#60880.
Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r-- | lib/libalpm/alpm.h | 4 | ||||
-rw-r--r-- | lib/libalpm/be_sync.c | 2 | ||||
-rw-r--r-- | lib/libalpm/error.c | 3 | ||||
-rw-r--r-- | lib/libalpm/handle.c | 6 |
4 files changed, 10 insertions, 5 deletions
diff --git a/lib/libalpm/alpm.h b/lib/libalpm/alpm.h index 2d3d198a..597e11bd 100644 --- a/lib/libalpm/alpm.h +++ b/lib/libalpm/alpm.h @@ -118,7 +118,9 @@ typedef enum _alpm_errno_t { ALPM_ERR_LIBARCHIVE, ALPM_ERR_LIBCURL, ALPM_ERR_EXTERNAL_DOWNLOAD, - ALPM_ERR_GPGME + ALPM_ERR_GPGME, + /* Missing compile-time features */ + ALPM_ERR_MISSING_CAPABILITY_SIGNATURES } alpm_errno_t; /** Returns the current error code from the handle. */ diff --git a/lib/libalpm/be_sync.c b/lib/libalpm/be_sync.c index 5009a7da..6adf1cd9 100644 --- a/lib/libalpm/be_sync.c +++ b/lib/libalpm/be_sync.c @@ -788,7 +788,7 @@ alpm_db_t *_alpm_db_register_sync(alpm_handle_t *handle, const char *treename, #ifndef HAVE_LIBGPGME if(level != ALPM_SIG_USE_DEFAULT) { - RET_ERR(handle, ALPM_ERR_WRONG_ARGS, NULL); + RET_ERR(handle, ALPM_ERR_MISSING_CAPABILITY_SIGNATURES, NULL); } #endif diff --git a/lib/libalpm/error.c b/lib/libalpm/error.c index b4fc99ae..95be9d7b 100644 --- a/lib/libalpm/error.c +++ b/lib/libalpm/error.c @@ -159,6 +159,9 @@ const char SYMEXPORT *alpm_strerror(alpm_errno_t err) return _("gpgme error"); case ALPM_ERR_EXTERNAL_DOWNLOAD: return _("error invoking external downloader"); + /* Missing compile-time features */ + case ALPM_ERR_MISSING_CAPABILITY_SIGNATURES: + return _("compiled without signature support"); /* Unknown error! */ default: return _("unexpected error"); diff --git a/lib/libalpm/handle.c b/lib/libalpm/handle.c index 2213ce53..be5666dc 100644 --- a/lib/libalpm/handle.c +++ b/lib/libalpm/handle.c @@ -807,7 +807,7 @@ int SYMEXPORT alpm_option_set_default_siglevel(alpm_handle_t *handle, handle->siglevel = level; #else if(level != 0 && level != ALPM_SIG_USE_DEFAULT) { - RET_ERR(handle, ALPM_ERR_WRONG_ARGS, -1); + RET_ERR(handle, ALPM_ERR_MISSING_CAPABILITY_SIGNATURES, -1); } #endif return 0; @@ -827,7 +827,7 @@ int SYMEXPORT alpm_option_set_local_file_siglevel(alpm_handle_t *handle, handle->localfilesiglevel = level; #else if(level != 0 && level != ALPM_SIG_USE_DEFAULT) { - RET_ERR(handle, ALPM_ERR_WRONG_ARGS, -1); + RET_ERR(handle, ALPM_ERR_MISSING_CAPABILITY_SIGNATURES, -1); } #endif return 0; @@ -851,7 +851,7 @@ int SYMEXPORT alpm_option_set_remote_file_siglevel(alpm_handle_t *handle, handle->remotefilesiglevel = level; #else if(level != 0 && level != ALPM_SIG_USE_DEFAULT) { - RET_ERR(handle, ALPM_ERR_WRONG_ARGS, -1); + RET_ERR(handle, ALPM_ERR_MISSING_CAPABILITY_SIGNATURES, -1); } #endif return 0; |