Re: [pacman-dev] [PATCH 1/3] add specific error for missing gpg support

2018-11-27 Thread Allan McRae
On 25/11/18 9:56 am, Andrew Gregory wrote:
> "wrong or NULL argument passed" is a useless error for end users.
> 
> Fixes FS#60880.
> 
> Signed-off-by: Andrew Gregory 
> ---

This patch series looks good to me.

Allan


[pacman-dev] [PATCH 1/3] add specific error for missing gpg support

2018-11-24 Thread Andrew Gregory
"wrong or NULL argument passed" is a useless error for end users.

Fixes FS#60880.

Signed-off-by: Andrew Gregory 
---
 lib/libalpm/alpm.h| 4 +++-
 lib/libalpm/be_sync.c | 2 +-
 lib/libalpm/error.c   | 3 +++
 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;
-- 
2.19.1