[Pkg-gnupg-commit] [gnupg2] 02/21: gpg: Fix key generation with only an email part.
Daniel Kahn Gillmor
dkg at fifthhorseman.net
Tue Sep 19 15:33:53 UTC 2017
This is an automated email from the git hooks/post-receive script.
dkg pushed a commit to branch master
in repository gnupg2.
commit 7089dcc54099a4909ce7d386c07ab87e1398e2eb
Author: Werner Koch <wk at gnupg.org>
Date: Mon Sep 11 11:29:13 2017 +0200
gpg: Fix key generation with only an email part.
* g10/keygen.c (proc_parameter_file): Special case the email only
case.
--
Using a parameter file like
%ask-passphrase
key-type: RSA
key-length: 2048
key-usage: sign
subkey-type: RSA
subkey-length: 2048
subkey-usage: encrypt
name-email: foo at example.org
with "gpg --gen-key --patch" the result was this key
pub rsa2048 2017-09-11 [SC]
63A8C1BA12CC289A0E8072C971C7F8D4A18CE0BE
uid [ultimate] <foo at example.org>
sub rsa2048 2017-09-11 [E]
At least the the extra leading space the left angle bracket is wrong.
Further some mail providers reject keys which consist of more than
just a plain mail address. Using just a mail address is anyway the
new new suggested content for a user id. With this patch the key
will be
pub rsa2048 2017-09-11 [SC]
B302343C20EA6DECDB6A155135352F2520397080
uid [ultimate] foo at example.org
sub rsa2048 2017-09-11 [E]
Signed-off-by: Werner Koch <wk at gnupg.org>
---
g10/keygen.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/g10/keygen.c b/g10/keygen.c
index 6a3d323..08bc621 100644
--- a/g10/keygen.c
+++ b/g10/keygen.c
@@ -3530,7 +3530,14 @@ proc_parameter_file (ctrl_t ctrl, struct para_data_s *para, const char *fname,
if( s2 )
p = stpcpy(stpcpy(stpcpy(p," ("), s2 ),")");
if( s3 )
- p = stpcpy(stpcpy(stpcpy(p," <"), s3 ),">");
+ {
+ /* If we have only the email part, do not add the space
+ * and the angle brackets. */
+ if (*p)
+ p = stpcpy(stpcpy(stpcpy(p," <"), s3 ),">");
+ else
+ p = stpcpy (p, s3);
+ }
append_to_parameter (para, r);
have_user_id=1;
}
--
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