aboutsummaryrefslogtreecommitdiffstats
path: root/g10/keygen.c
diff options
context:
space:
mode:
Diffstat (limited to 'g10/keygen.c')
-rw-r--r--g10/keygen.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/g10/keygen.c b/g10/keygen.c
index f9e68a083..1c9a2efbe 100644
--- a/g10/keygen.c
+++ b/g10/keygen.c
@@ -535,11 +535,11 @@ generate_keypair()
/* 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 comment packet, followed by the userid and
- * the self signature.
+ * The first packet is a dummy comment packet which we flag
+ * as deleted. The very first packet must always be a CERT packet.
*/
- pub_root = make_comment_node("#created by G10 pre-release " VERSION );
- sec_root = make_comment_node("#created by G10 pre-release " VERSION );
+ pub_root = make_comment_node("#"); delete_kbnode(pub_root, pub_root);
+ sec_root = make_comment_node("#"); delete_kbnode(sec_root, sec_root);
tty_printf(_(
"We need to generate a lot of random bytes. It is a good idea to perform\n"
@@ -557,6 +557,12 @@ generate_keypair()
rc = gen_dsa(nbits, pub_root, sec_root, dek, &skc );
else
BUG();
+ if( !rc ) {
+ add_kbnode( pub_root,
+ make_comment_node("#created by G10 release " VERSION ));
+ add_kbnode( sec_root,
+ make_comment_node("#created by G10 release " VERSION ));
+ }
if( !rc )
write_uid(pub_root, uid );
if( !rc )