[git] GnuPG - branch, master, updated. gnupg-2.1.0beta3-13-g3f59561

by David Shaw cvs at cvs.gnupg.org
Tue Jan 10 17:25:11 CET 2012


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "The GNU Privacy Guard".

The branch, master has been updated
       via  3f59561cee635c6801e0a59d3abff1c064fcbdbe (commit)
      from  957fe728466893bc63f5ccad197d3e245dca4bf3 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 3f59561cee635c6801e0a59d3abff1c064fcbdbe
Author: David Shaw <dshaw at jabberwocky.com>
Date:   Tue Jan 10 10:23:54 2012 -0500

    Adapt HKP fix for fingerprint/long keyid retrievals for dirmngr
    
    * dirmngr/ks-engine-hkp.c (ks_hkp_get): Use the longest valid keyid form

diff --git a/dirmngr/ks-engine-hkp.c b/dirmngr/ks-engine-hkp.c
index 98187ab..aa4a818 100644
--- a/dirmngr/ks-engine-hkp.c
+++ b/dirmngr/ks-engine-hkp.c
@@ -1,5 +1,5 @@
 /* ks-engine-hkp.c - HKP keyserver engine
- * Copyright (C) 2011 Free Software Foundation, Inc.
+ * Copyright (C) 2011, 2012 Free Software Foundation, Inc.
  *
  * This file is part of GnuPG.
  *
@@ -761,7 +761,7 @@ ks_hkp_get (ctrl_t ctrl, parsed_uri_t uri, const char *keyspec, estream_t *r_fp)
 {
   gpg_error_t err;
   KEYDB_SEARCH_DESC desc;
-  char kidbuf[8+1];
+  char kidbuf[40+1];
   char *hostport = NULL;
   char *request = NULL;
   estream_t fp = NULL;
@@ -778,18 +778,20 @@ ks_hkp_get (ctrl_t ctrl, parsed_uri_t uri, const char *keyspec, estream_t *r_fp)
   switch (desc.mode)
     {
     case KEYDB_SEARCH_MODE_SHORT_KID:
-    case KEYDB_SEARCH_MODE_LONG_KID:
       snprintf (kidbuf, sizeof kidbuf, "%08lX", (ulong)desc.u.kid[1]);
       break;
+    case KEYDB_SEARCH_MODE_LONG_KID:
+      snprintf (kidbuf, sizeof kidbuf, "%08lX%08lX",
+		(ulong)desc.u.kid[0], (ulong)desc.u.kid[1]);
+      break;
     case KEYDB_SEARCH_MODE_FPR20:
     case KEYDB_SEARCH_MODE_FPR:
-      /* This is a v4 fingerprint.  Take the last 8 hex digits from
-         the fingerprint which is the expected short keyid.  */
-      bin2hex (desc.u.fpr+16, 4, kidbuf);
+      /* This is a v4 fingerprint. */
+      bin2hex (desc.u.fpr, 20, kidbuf);
       break;
 
     case KEYDB_SEARCH_MODE_FPR16:
-      log_error ("HKP keyserver do not support v3 fingerprints\n");
+      log_error ("HKP keyservers do not support v3 fingerprints\n");
     default:
       return gpg_error (GPG_ERR_INV_USER_ID);
     }

-----------------------------------------------------------------------

Summary of changes:
 dirmngr/ks-engine-hkp.c |   16 +++++++++-------
 1 files changed, 9 insertions(+), 7 deletions(-)


hooks/post-receive
-- 
The GNU Privacy Guard
http://git.gnupg.org




More information about the Gnupg-commits mailing list