[Pkg-gnupg-commit] [gnupg2] 01/03: bugfix for multiple keyrings (Closes: #878812)

Daniel Kahn Gillmor dkg at fifthhorseman.net
Thu Oct 19 04:32:27 UTC 2017


This is an automated email from the git hooks/post-receive script.

dkg pushed a commit to branch master
in repository gnupg2.

commit 6c3cc14db74e7a68c317c9cbf7630781a38893f0
Author: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
Date:   Thu Oct 19 00:12:04 2017 -0400

    bugfix for multiple keyrings (Closes: #878812)
---
 ...-find_and_check_key-for-multiple-keyrings.patch | 59 ++++++++++++++++++++++
 debian/patches/series                              |  1 +
 2 files changed, 60 insertions(+)

diff --git a/debian/patches/from-master/g10-Fix-find_and_check_key-for-multiple-keyrings.patch b/debian/patches/from-master/g10-Fix-find_and_check_key-for-multiple-keyrings.patch
new file mode 100644
index 0000000..8be38d0
--- /dev/null
+++ b/debian/patches/from-master/g10-Fix-find_and_check_key-for-multiple-keyrings.patch
@@ -0,0 +1,59 @@
+From: NIIBE Yutaka <gniibe at fsij.org>
+Date: Thu, 19 Oct 2017 11:08:24 +0900
+Subject: g10: Fix find_and_check_key for multiple keyrings.
+MIME-Version: 1.0
+Content-Type: text/plain; charset="utf-8"
+Content-Transfer-Encoding: base64
+
+KiBnMTAvcGtjbGlzdC5jIChmaW5kX2FuZF9jaGVja19rZXkpOiBDYWxsIGdldF92YWxpZGl0eSBv
+biBhIHNwZWNpZmljCmtleWJsb2NrLgoKLS0KCldoZW4gd2UgaGF2ZSBtdWx0aXBsZSBrZXlyaW5n
+cywgZ2V0X3ZhbGlkaXR5IGFmdGVyCmdldF9iZXN0X3B1YmtleV9ieW5hbWUgc2hvdWxkIGFjY2Vz
+cyBzYW1lIGtleXJpbmcuICBPciBlbHNlLCB0aGUKc2l0dWF0aW9uIG9mIGFuIGV4cGlyZWQga2V5
+IGluIGtleXJpbmcgQSBidXQgdmFsaWQga2V5IGluIGtleXJpbmcgQgpjYXVzZXMgU0VHVi4KClRo
+YW5rcyB0byBHdWlkbyBHw7xudGhlciBmb3IgdGhlIHVzZSBjYXNlIGFuZCB0aGUgbG9nLgoKRGVi
+aWFuLWJ1Zy1pZDogODc4ODEyClNpZ25lZC1vZmYtYnk6IE5JSUJFIFl1dGFrYSA8Z25paWJlQGZz
+aWoub3JnPgooY2hlcnJ5IHBpY2tlZCBmcm9tIGNvbW1pdCA5OTVjNDZlYTc3Y2ZmNWI5OWIyZmNh
+MTdiNTQ3ZDY1MjVhNGYyMjdlKQo=
+---
+ g10/pkclist.c | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/g10/pkclist.c b/g10/pkclist.c
+index 67d932e..220936c 100644
+--- a/g10/pkclist.c
++++ b/g10/pkclist.c
+@@ -826,6 +826,7 @@ find_and_check_key (ctrl_t ctrl, const char *name, unsigned int use,
+ {
+   int rc;
+   PKT_public_key *pk;
++  KBNODE keyblock = NULL;
+ 
+   if (!name || !*name)
+     return gpg_error (GPG_ERR_INV_USER_ID);
+@@ -838,7 +839,7 @@ find_and_check_key (ctrl_t ctrl, const char *name, unsigned int use,
+   if (from_file)
+     rc = get_pubkey_fromfile (ctrl, pk, name);
+   else
+-    rc = get_best_pubkey_byname (ctrl, NULL, pk, name, NULL, 0, 0);
++    rc = get_best_pubkey_byname (ctrl, NULL, pk, name, &keyblock, 0, 0);
+   if (rc)
+     {
+       int code;
+@@ -861,6 +862,7 @@ find_and_check_key (ctrl_t ctrl, const char *name, unsigned int use,
+   if (rc)
+     {
+       /* Key found but not usable for us (e.g. sign-only key). */
++      release_kbnode (keyblock);
+       send_status_inv_recp (3, name); /* Wrong key usage */
+       log_error (_("%s: skipped: %s\n"), name, gpg_strerror (rc) );
+       free_public_key (pk);
+@@ -872,7 +874,8 @@ find_and_check_key (ctrl_t ctrl, const char *name, unsigned int use,
+     {
+       int trustlevel;
+ 
+-      trustlevel = get_validity (ctrl, NULL, pk, pk->user_id, NULL, 1);
++      trustlevel = get_validity (ctrl, keyblock, pk, pk->user_id, NULL, 1);
++      release_kbnode (keyblock);
+       if ( (trustlevel & TRUST_FLAG_DISABLED) )
+         {
+           /* Key has been disabled. */
diff --git a/debian/patches/series b/debian/patches/series
index 0eb8697..adff014 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -22,3 +22,4 @@ update-defaults/gpg-Default-to-SHA-512-for-all-signature-types-on-RS.patch
 update-defaults/gpg-Prefer-SHA-512-and-SHA-384-in-default-preference.patch
 from-master/gpg-Fix-comparison.patch
 doc-Make-check-sigs-more-prominent.patch
+from-master/g10-Fix-find_and_check_key-for-multiple-keyrings.patch

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-gnupg/gnupg2.git



More information about the Pkg-gnupg-commit mailing list