aboutsummaryrefslogtreecommitdiffstats
path: root/g10
diff options
context:
space:
mode:
Diffstat (limited to 'g10')
-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 97c2120ed..acd63a0a0 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]>
* card-util.c (card_edit): Change prompt to "gpg/card".
diff --git a/g10/keygen.c b/g10/keygen.c
index 240856568..760e63a08 100644
--- a/g10/keygen.c
+++ b/g10/keygen.c
@@ -1927,7 +1927,7 @@ ask_user_id( int mode )
if( strlen(ansstr) != 10 )
BUG();
if( cpr_enabled() ) {
- answer = xstrdup(ansstr+6);
+ answer = xstrdup (ansstr + (fail?8:6));
answer[1] = 0;
}
else {