Fix regression with gpgsm 2.0 due to "OPTION with-secret".
authorWerner Koch <wk@gnupg.org>
Mon, 8 Jun 2015 10:34:49 +0000 (12:34 +0200)
committerWerner Koch <wk@gnupg.org>
Mon, 8 Jun 2015 10:34:49 +0000 (12:34 +0200)
commitddbd54ef881bd2c3481d62b89bef7241667b64ee
tree0ca8940dceec227a335e4eb14fdaacc4be559fb6
parent7addffc0826e7f36afcc7f66268e9ee2a37e2042
Fix regression with gpgsm 2.0 due to "OPTION with-secret".

* src/engine-gpgsm.c (gpgsm_assuan_simple_command): Do not terminate
on a status lines.
--

This bug has been with us since the support for gpgsm: If there is no
status line handler but a status line is received anyway the command
handling loop terminates and thus the command/answer order gets out of
sync.  In the case of the bug report this is triggered by sending an
option which starts the agent and that starting emits a "PROGRESS"
status line.

The solution is not to stop reading after a status line but record a
possible error code and return that only after OK or ERR.

GnuPG-bug-id: 1795
Signed-off-by: Werner Koch <wk@gnupg.org>
src/engine-gpgsm.c