* keygen.c (start_tree): New function to "prime" a KBNODE list.
authorDavid Shaw <dshaw@jabberwocky.com>
Thu, 5 May 2005 22:08:37 +0000 (22:08 +0000)
committerDavid Shaw <dshaw@jabberwocky.com>
Thu, 5 May 2005 22:08:37 +0000 (22:08 +0000)
(do_generate_keypair): Use it here rather than creating and deleting a
comment packet.

* keygen.c (gen_elg, gen_dsa): Do not put public factors in secret key as
a comment.

* options.h, encode.c (encode_simple, encode_crypt), keygen.c (do_create):
Remove disabled comment packet code.

g10/ChangeLog
g10/encode.c
g10/keygen.c
g10/options.h

index 6bf97dc..efdedcc 100644 (file)
@@ -1,5 +1,15 @@
 2005-05-05  David Shaw  <dshaw@jabberwocky.com>
 
+       * keygen.c (start_tree): New function to "prime" a KBNODE list.
+       (do_generate_keypair): Use it here rather than creating and
+       deleting a comment packet.
+
+       * keygen.c (gen_elg, gen_dsa): Do not put public factors in secret
+       key as a comment.
+
+       * options.h, encode.c (encode_simple, encode_crypt), keygen.c
+       (do_create): Remove disabled comment packet code.
+
        * keygen.c (keygen_set_std_prefs): Add SHA256 and BZip2 to default
        preferences.
 
index d1898b3..90735c1 100644 (file)
@@ -1,6 +1,6 @@
 /* encode.c - encode data
- * Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003,
- *               2004 Free Software Foundation, Inc.
+ * Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+ *               2005 Free Software Foundation, Inc.
  *
  * This file is part of GnuPG.
  *
@@ -248,14 +248,7 @@ encode_simple( const char *filename, int mode, int use_seskey )
 
     if( opt.armor )
        iobuf_push_filter( out, armor_filter, &afx );
-#ifdef ENABLE_COMMENT_PACKETS
-    else {
-       write_comment( out, "#created by GNUPG v" VERSION " ("
-                                           PRINTABLE_OS_NAME ")");
-       if( opt.comment_string )
-           write_comment( out, opt.comment_string );
-    }
-#endif
+
     if( s2k && !RFC1991 ) {
        PKT_symkey_enc *enc = m_alloc_clear( sizeof *enc + seskeylen + 1 );
        enc->version = 4;
@@ -504,14 +497,7 @@ encode_crypt( const char *filename, STRLIST remusr, int use_symkey )
 
     if( opt.armor )
        iobuf_push_filter( out, armor_filter, &afx );
-#ifdef ENABLE_COMMENT_PACKETS
-    else {
-       write_comment( out, "#created by GNUPG v" VERSION " ("
-                                           PRINTABLE_OS_NAME ")");
-       if( opt.comment_string )
-           write_comment( out, opt.comment_string );
-    }
-#endif
+
     /* create a session key */
     cfx.dek = m_alloc_secure_clear (sizeof *cfx.dek);
     if( !opt.def_cipher_algo ) { /* try to get it from the prefs */
index 26f3cc6..b6bae94 100644 (file)
@@ -990,7 +990,6 @@ gen_elg(int algo, unsigned nbits, KBNODE pub_root, KBNODE sec_root, DEK *dek,
        STRING2KEY *s2k, PKT_secret_key **ret_sk, u32 expireval, int is_subkey)
 {
     int rc;
-    int i;
     PACKET *pkt;
     PKT_secret_key *sk;
     PKT_public_key *pk;
@@ -1060,9 +1059,6 @@ gen_elg(int algo, unsigned nbits, KBNODE pub_root, KBNODE sec_root, DEK *dek,
     pkt->pkttype = is_subkey ? PKT_SECRET_SUBKEY : PKT_SECRET_KEY;
     pkt->pkt.secret_key = sk;
     add_kbnode(sec_root, new_kbnode( pkt ));
-    for(i=0; factors[i]; i++ )
-       add_kbnode( sec_root,
-                   make_mpi_comment_node("#:ELG_factor:", factors[i] ));
 
     return 0;
 }
@@ -1076,7 +1072,6 @@ gen_dsa(unsigned int nbits, KBNODE pub_root, KBNODE sec_root, DEK *dek,
        STRING2KEY *s2k, PKT_secret_key **ret_sk, u32 expireval, int is_subkey)
 {
     int rc;
-    int i;
     PACKET *pkt;
     PKT_secret_key *sk;
     PKT_public_key *pk;
@@ -1150,9 +1145,6 @@ gen_dsa(unsigned int nbits, KBNODE pub_root, KBNODE sec_root, DEK *dek,
     pkt->pkttype = is_subkey ? PKT_SECRET_SUBKEY : PKT_SECRET_KEY;
     pkt->pkt.secret_key = sk;
     add_kbnode(sec_root, new_kbnode( pkt ));
-    for(i=1; factors[i]; i++ ) /* the first one is q */
-       add_kbnode( sec_root,
-                   make_mpi_comment_node("#:DSA_factor:", factors[i] ));
 
     return 0;
 }
@@ -1916,16 +1908,6 @@ do_create( int algo, unsigned int nbits, KBNODE pub_root, KBNODE sec_root,
   else
     BUG();
 
-#ifdef ENABLE_COMMENT_PACKETS
-  if( !rc ) {
-    add_kbnode( pub_root,
-               make_comment_node("#created by GNUPG v" VERSION " ("
-                                 PRINTABLE_OS_NAME ")"));
-    add_kbnode( sec_root,
-               make_comment_node("#created by GNUPG v" VERSION " ("
-                                 PRINTABLE_OS_NAME ")"));
-  }
-#endif
   return rc;
 }
 
@@ -2732,6 +2714,17 @@ generate_raw_key (int algo, unsigned int nbits, u32 created_at,
 }
 #endif /* ENABLE_CARD_SUPPORT */
 
+/* Create and delete a dummy packet to start off a list of kbnodes. */
+static void
+start_tree(KBNODE *tree)
+{
+  PACKET *pkt;
+
+  pkt=m_alloc_clear(sizeof(*pkt));
+  pkt->pkttype=PKT_NONE;
+  *tree=new_kbnode(pkt);
+  delete_kbnode(*tree);
+}
 
 static void
 do_generate_keypair( struct para_data_s *para,
@@ -2745,11 +2738,11 @@ do_generate_keypair( struct para_data_s *para,
     int rc;
     int did_sub = 0;
 
-    if( outctrl->dryrun ) {
+    if( outctrl->dryrun )
+      {
        log_info("dry-run mode - key generation skipped\n");
        return;
-    }
-
+      }
 
     if( outctrl->use_files ) {
        if( outctrl->pub.newfname ) {
@@ -2821,13 +2814,14 @@ do_generate_keypair( struct para_data_s *para,
     }
 
 
-    /* we create the packets as a tree of kbnodes. Because the structure
-     * we create is known in advance we simply generate a linked list
-     * The first packet is a dummy comment packet which we flag
+    /* we create the packets as a tree of kbnodes. Because the
+     * structure we create is known in advance we simply generate a
+     * linked list.  The first packet is a dummy packet which we flag
      * as deleted.  The very first packet must always be a KEY packet.
      */
-    pub_root = make_comment_node("#"); delete_kbnode(pub_root);
-    sec_root = make_comment_node("#"); delete_kbnode(sec_root);
+    
+    start_tree(&pub_root);
+    start_tree(&sec_root);
 
     if (!card)
       {
index d661366..294dec8 100644 (file)
@@ -26,8 +26,6 @@
 #include "main.h"
 #include "packet.h"
 
-#undef ENABLE_COMMENT_PACKETS  /* don't create comment packets */
-
 #ifndef EXTERN_UNLESS_MAIN_MODULE
 /* Norcraft can't cope with common symbols */
 #if defined (__riscos__) && !defined (INCLUDED_BY_MAIN_MODULE)