[Pkg-gnupg-commit] [gnupg2] 104/205: sm: Always create a keybox header when creating a new keybox.

Daniel Kahn Gillmor dkg at fifthhorseman.net
Wed May 11 08:38:23 UTC 2016


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

dkg pushed a commit to branch experimental
in repository gnupg2.

commit 1aad5c6277ea3852ff57bbf680f61c9136ce4d5c
Author: Werner Koch <wk at gnupg.org>
Date:   Thu Mar 17 15:15:48 2016 +0100

    sm: Always create a keybox header when creating a new keybox.
    
    * sm/keydb.c (maybe_create_keybox): Create the header blob.
    --
    
    This is required so that g10/keydb.c can properly detect that a keybox
    file is actually there.  Just writing a 0 zero length keybox file is
    not sufficient because a file with that name may also be an old-style
    OpenPGP keyring.
    
    GnuPG-bug-id: 2275
    Signed-off-by: Werner Koch <wk at gnupg.org>
---
 sm/keydb.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/sm/keydb.c b/sm/keydb.c
index f5705cb..495eb49 100644
--- a/sm/keydb.c
+++ b/sm/keydb.c
@@ -213,6 +213,18 @@ maybe_create_keybox (char *filename, int force, int *r_created)
     }
   umask (oldmask);
 
+  /* Make sure that at least one record is in a new keybox file, so
+     that the detection magic for OpenPGP keyboxes works the next time
+     it is used.  */
+  rc = _keybox_write_header_blob (fp, 0);
+  if (rc)
+    {
+      fclose (fp);
+      log_error (_("error creating keybox '%s': %s\n"),
+                 filename, gpg_strerror (rc));
+      goto leave;
+    }
+
   if (!opt.quiet)
     log_info (_("keybox '%s' created\n"), filename);
   if (r_created)

-- 
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