diff options
author | Dan McGee <dan@archlinux.org> | 2011-09-19 21:51:30 -0500 |
---|---|---|
committer | Dan McGee <dan@archlinux.org> | 2011-09-20 10:23:11 -0500 |
commit | 994cb4da4f6bc8efbb6a649cb7d99d95bce5c37a (patch) | |
tree | 9cec25c9312ce01792d259141d786813bf7776da /lib/libalpm/be_sync.c | |
parent | a27f993600a518ef6a15bd7fb29575b218b58a0a (diff) | |
download | pacman-994cb4da4f6bc8efbb6a649cb7d99d95bce5c37a.tar.xz |
Allow our PGP helper method to pass back the signature results
This will make its way up the call chain eventually to allow trusting
and importing of keys as necessary.
Signed-off-by: Dan McGee <dan@archlinux.org>
Diffstat (limited to 'lib/libalpm/be_sync.c')
-rw-r--r-- | lib/libalpm/be_sync.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/libalpm/be_sync.c b/lib/libalpm/be_sync.c index 7eb2539b..ef0f1ef4 100644 --- a/lib/libalpm/be_sync.c +++ b/lib/libalpm/be_sync.c @@ -70,6 +70,7 @@ static int sync_db_validate(alpm_db_t *db) { alpm_siglevel_t level; const char *dbpath; + alpm_siglist_t *siglist; if(db->status & DB_STATUS_VALID || db->status & DB_STATUS_MISSING) { return 0; @@ -102,10 +103,14 @@ static int sync_db_validate(alpm_db_t *db) if(level & ALPM_SIG_DATABASE) { if(_alpm_check_pgp_helper(db->handle, dbpath, NULL, level & ALPM_SIG_DATABASE_OPTIONAL, level & ALPM_SIG_DATABASE_MARGINAL_OK, - level & ALPM_SIG_DATABASE_UNKNOWN_OK)) { + level & ALPM_SIG_DATABASE_UNKNOWN_OK, &siglist)) { db->handle->pm_errno = ALPM_ERR_DB_INVALID_SIG; + alpm_siglist_cleanup(siglist); + free(siglist); return 1; } + alpm_siglist_cleanup(siglist); + free(siglist); } valid: |