diff options
author | Werner Koch <[email protected]> | 2014-10-09 19:01:49 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2014-10-09 19:01:49 +0000 |
commit | 2ca90f78cee91c43b8d538d1cb92728f8e1452d5 (patch) | |
tree | 2690fc51434a88b781e8efa836c72d51215fc42d /sm/keydb.c | |
parent | gpg: Sync keylist output and warning messages. (diff) | |
download | gnupg-2ca90f78cee91c43b8d538d1cb92728f8e1452d5.tar.gz gnupg-2ca90f78cee91c43b8d538d1cb92728f8e1452d5.zip |
gpg: Skip overlong keys and a print a warning.
* kbx/keybox-search.c (keybox_search): Add arg r_skipped and skip too
long blobs.
* sm/keydb.c (keydb_search): Call keybox_search with a dummy param.
* g10/keydb.c (struct keydb_handle): Add field skipped_long_blobs.
(keydb_search_reset): Reset that field.
(keydb_search): Update that field.
(keydb_get_skipped_counter): New.
* g10/keylist.c (list_all): Print count of skipped keys.
Signed-off-by: Werner Koch <[email protected]>
Diffstat (limited to 'sm/keydb.c')
-rw-r--r-- | sm/keydb.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sm/keydb.c b/sm/keydb.c index fb0947a93..83e573f28 100644 --- a/sm/keydb.c +++ b/sm/keydb.c @@ -958,6 +958,7 @@ int keydb_search (KEYDB_HANDLE hd, KEYDB_SEARCH_DESC *desc, size_t ndesc) { int rc = -1; + unsigned long skipped; if (!hd) return gpg_error (GPG_ERR_INV_VALUE); @@ -970,7 +971,8 @@ keydb_search (KEYDB_HANDLE hd, KEYDB_SEARCH_DESC *desc, size_t ndesc) BUG(); /* we should never see it here */ break; case KEYDB_RESOURCE_TYPE_KEYBOX: - rc = keybox_search (hd->active[hd->current].u.kr, desc, ndesc, NULL); + rc = keybox_search (hd->active[hd->current].u.kr, desc, ndesc, + NULL, &skipped); break; } if (rc == -1) /* EOF -> switch to next resource */ |