gpg: Fix segv in get_best_pubkey_byname.
authorWerner Koch <wk@gnupg.org>
Fri, 28 Jul 2017 08:58:59 +0000 (10:58 +0200)
committerWerner Koch <wk@gnupg.org>
Fri, 28 Jul 2017 08:58:59 +0000 (10:58 +0200)
* g10/getkey.c (get_best_pubkey_byname): Init NEW.
--

We call free_user_id on NEW.uid and thus it needs to be initialized.

This fixes the ref-count or invisible segv bug from
GnuPG-bug-id: 3266

Signed-off-by: Werner Koch <wk@gnupg.org>
g10/getkey.c

index 390e2dc..e0c4bd9 100644 (file)
@@ -1607,7 +1607,7 @@ get_best_pubkey_byname (ctrl_t ctrl, GETKEY_CTX *retctx, PKT_public_key *pk,
     {
       /* Rank results and return only the most relevant key.  */
       struct pubkey_cmp_cookie best = { 0 };
-      struct pubkey_cmp_cookie new;
+      struct pubkey_cmp_cookie new = { 0 };
       kbnode_t new_keyblock;
 
       while (getkey_next (ctrl, ctx, &new.key, &new_keyblock) == 0)