diff options
author | Florian Pritz <bluewind@xinu.at> | 2011-07-06 17:24:19 +0200 |
---|---|---|
committer | Dan McGee <dan@archlinux.org> | 2011-07-18 10:44:07 -0500 |
commit | 89c070b263a9e1e4e0734b25c8bc33367a34e504 (patch) | |
tree | 824718f06aa74cf3aecb8c2064c564c6c3fa89a2 /lib | |
parent | 29a96bcfe179a82adbd575057e2ef9d48a6a72fb (diff) |
signing.c: check if needed files are readable
If we can't read the keyring, gpgme will output confusing debug
information and fail to verify the signature, so we should log some
debug information.
Signed-off-by: Florian Pritz <bluewind@xinu.at>
Signed-off-by: Dan McGee <dan@archlinux.org>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/libalpm/signing.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/libalpm/signing.c b/lib/libalpm/signing.c index ae90378d..819e5f54 100644 --- a/lib/libalpm/signing.c +++ b/lib/libalpm/signing.c @@ -118,6 +118,12 @@ static int init_gpgme(alpm_handle_t *handle) sigdir = alpm_option_get_gpgdir(handle); + if (_alpm_access(handle, sigdir, "pubring.gpg", R_OK) + || _alpm_access(handle, sigdir, "trustdb.gpg", R_OK)) { + handle->pm_errno = ALPM_ERR_NOT_A_FILE; + _alpm_log(handle, ALPM_LOG_DEBUG, "Signature verification will fail!\n"); + } + /* calling gpgme_check_version() returns the current version and runs * some internal library setup code */ version = gpgme_check_version(NULL); |