diff options
Diffstat (limited to 'g10/keyserver.c')
-rw-r--r-- | g10/keyserver.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/g10/keyserver.c b/g10/keyserver.c index ab0eb627c..e9de4962e 100644 --- a/g10/keyserver.c +++ b/g10/keyserver.c @@ -1190,10 +1190,13 @@ keyserver_import_keyid (ctrl_t ctrl, static int keyidlist(strlist_t users,KEYDB_SEARCH_DESC **klist,int *count,int fakev3) { - int rc=0,ndesc,num=100; - KBNODE keyblock=NULL,node; + int rc = 0; + int num = 100; + kbnode_t keyblock = NULL; + kbnode_t node; KEYDB_HANDLE kdbhd; - KEYDB_SEARCH_DESC *desc; + int ndesc; + KEYDB_SEARCH_DESC *desc = NULL; strlist_t sl; *count=0; @@ -1201,6 +1204,11 @@ keyidlist(strlist_t users,KEYDB_SEARCH_DESC **klist,int *count,int fakev3) *klist=xmalloc(sizeof(KEYDB_SEARCH_DESC)*num); kdbhd = keydb_new (); + if (!kdbhd) + { + rc = gpg_error_from_syserror (); + goto leave; + } keydb_disable_caching (kdbhd); /* We are looping the search. */ if(!users) |