aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2010-02-17 10:23:42 +0000
committerWerner Koch <[email protected]>2010-02-17 10:23:42 +0000
commit1b7c79118643da11906b2088178021ba8cae3852 (patch)
tree327fd7904e1a1153667f40d0dc31575dcfac645a
parentLink to the bug tracker in the gpg man page. (diff)
downloadgnupg-1b7c79118643da11906b2088178021ba8cae3852.tar.gz
gnupg-1b7c79118643da11906b2088178021ba8cae3852.zip
Fix bug#1186.
Diffstat (limited to '')
-rw-r--r--g10/ChangeLog5
-rw-r--r--g10/keygen.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/g10/ChangeLog b/g10/ChangeLog
index 1058c576e..63741015a 100644
--- a/g10/ChangeLog
+++ b/g10/ChangeLog
@@ -1,3 +1,8 @@
+2010-02-17 Werner Koch <[email protected]>
+
+ * keygen.c (ask_user_id): Avoid infinite loop in case of invalid
+ data. Fixes bug#1186.
+
2010-02-02 Werner Koch <[email protected]>
* keyedit.c (keyedit_menu): Change prompt to "gpg".
diff --git a/g10/keygen.c b/g10/keygen.c
index a623252f4..efef372a0 100644
--- a/g10/keygen.c
+++ b/g10/keygen.c
@@ -2203,7 +2203,7 @@ ask_user_id (int mode, KBNODE keyblock)
if( strlen(ansstr) != 10 )
BUG();
if( cpr_enabled() ) {
- answer = xstrdup(ansstr+6);
+ answer = xstrdup (ansstr + (fail?8:6));
answer[1] = 0;
}
else {