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 + + * keygen.c (ask_user_id): Avoid infinite loop in case of invalid + data. Fixes bug#1186. + 2010-02-02 Werner Koch * 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 {