[Pkg-gnupg-commit] [gnupg2] 131/160: gpg: Move a function from import.c to export.c.

Daniel Kahn Gillmor dkg at fifthhorseman.net
Fri Jul 15 09:36:43 UTC 2016


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

dkg pushed a commit to branch upstream
in repository gnupg2.

commit 0f5b105d96780a29cc58893285e6c38482e0cc2d
Author: Werner Koch <wk at gnupg.org>
Date:   Tue Jul 12 13:59:10 2016 +0200

    gpg: Move a function from import.c to export.c.
    
    * g10/import.c (write_keyblock_to_output): Move to ...
    * g10/export.c (write_keyblock_to_output): here.  Add arg WITH_ARMOR.
    Also make sure never to export ring trust packets.
---
 g10/export.c | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 g10/import.c | 59 +----------------------------------------------------------
 g10/main.h   |  5 ++++-
 3 files changed, 62 insertions(+), 59 deletions(-)

diff --git a/g10/export.c b/g10/export.c
index d31b09a..3ce8185 100644
--- a/g10/export.c
+++ b/g10/export.c
@@ -1203,6 +1203,63 @@ receive_seckey_from_agent (ctrl_t ctrl, gcry_cipher_hd_t cipherhd,
 }
 
 
+/* Write KEYBLOCK either to stdout or to the file set with the
+ * --output option.  */
+gpg_error_t
+write_keyblock_to_output (kbnode_t keyblock, int with_armor)
+{
+  gpg_error_t err;
+  const char *fname;
+  iobuf_t out;
+  kbnode_t node;
+  armor_filter_context_t *afx = NULL;
+
+  fname = opt.outfile? opt.outfile : "-";
+  if (is_secured_filename (fname) )
+    return gpg_error (GPG_ERR_EPERM);
+
+  out = iobuf_create (fname, 0);
+  if (!out)
+    {
+      err = gpg_error_from_syserror ();
+      log_error(_("can't create '%s': %s\n"), fname, gpg_strerror (err));
+      return err;
+    }
+  if (opt.verbose)
+    log_info (_("writing to '%s'\n"), iobuf_get_fname_nonnull (out));
+
+  if (with_armor)
+    {
+      afx = new_armor_context ();
+      afx->what = 1;
+      push_armor_filter (afx, out);
+    }
+
+  for (node = keyblock; node; node = node->next)
+    {
+      if (!is_deleted_kbnode (node) && node->pkt->pkttype != PKT_RING_TRUST)
+	{
+	  err = build_packet (out, node->pkt);
+	  if (err)
+	    {
+	      log_error ("build_packet(%d) failed: %s\n",
+			 node->pkt->pkttype, gpg_strerror (err) );
+	      goto leave;
+	    }
+	}
+    }
+  err = 0;
+
+ leave:
+  if (err)
+    iobuf_cancel (out);
+  else
+    iobuf_close (out);
+  release_armor_context (afx);
+  return err;
+}
+
+
 /* Helper for apply_keep_uid_filter.  */
 static const char *
 filter_getval (void *cookie, const char *propname)
diff --git a/g10/import.c b/g10/import.c
index e035328..371f095 100644
--- a/g10/import.c
+++ b/g10/import.c
@@ -937,63 +937,6 @@ fix_bad_direct_key_sigs (kbnode_t keyblock, u32 *keyid)
 }
 
 
-/* Write the keyblock either to stdin or to the file set with
- * the --output option.  */
-static gpg_error_t
-write_keyblock_to_output (kbnode_t keyblock)
-{
-  gpg_error_t err;
-  const char *fname;
-  iobuf_t out;
-  kbnode_t node;
-  armor_filter_context_t *afx = NULL;
-
-  fname = opt.outfile? opt.outfile : "-";
-  if (is_secured_filename (fname) )
-    return gpg_error (GPG_ERR_EPERM);
-
-  out = iobuf_create (fname, 0);
-  if (!out)
-    {
-      err = gpg_error_from_syserror ();
-      log_error(_("can't create '%s': %s\n"), fname, gpg_strerror (err));
-      return err;
-    }
-  if (opt.verbose)
-    log_info (_("writing to '%s'\n"), iobuf_get_fname_nonnull (out));
-
-  if (opt.armor)
-    {
-      afx = new_armor_context ();
-      afx->what = 1;
-      push_armor_filter (afx, out);
-    }
-
-  for (node = keyblock; node; node = node->next)
-    {
-      if (!is_deleted_kbnode (node))
-	{
-	  err = build_packet (out, node->pkt);
-	  if (err)
-	    {
-	      log_error ("build_packet(%d) failed: %s\n",
-			 node->pkt->pkttype, gpg_strerror (err) );
-	      goto leave;
-	    }
-	}
-    }
-  err = 0;
-
- leave:
-  if (err)
-    iobuf_cancel (out);
-  else
-    iobuf_close (out);
-  release_armor_context (afx);
-  return err;
-}
-
-
 static void
 print_import_ok (PKT_public_key *pk, unsigned int reason)
 {
@@ -1387,7 +1330,7 @@ import_one (ctrl_t ctrl,
           merge_keys_and_selfsig (keyblock);
           merge_keys_done = 1;
         }
-      rc = write_keyblock_to_output (keyblock);
+      rc = write_keyblock_to_output (keyblock, opt.armor);
       goto leave;
     }
 
diff --git a/g10/main.h b/g10/main.h
index ec20b28..92a26a7 100644
--- a/g10/main.h
+++ b/g10/main.h
@@ -396,9 +396,12 @@ gpg_error_t export_pubkey_buffer (ctrl_t ctrl, const char *keyspec,
 
 gpg_error_t receive_seckey_from_agent (ctrl_t ctrl, gcry_cipher_hd_t cipherhd,
                                        int cleartext,
-                                       char **cache_nonce_addr, const char *hexgrip,
+                                       char **cache_nonce_addr,
+                                       const char *hexgrip,
                                        PKT_public_key *pk);
 
+gpg_error_t write_keyblock_to_output (kbnode_t keyblock, int with_armor);
+
 gpg_error_t export_ssh_key (ctrl_t ctrl, const char *userid);
 
 /*-- dearmor.c --*/

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