aboutsummaryrefslogtreecommitdiffstats
path: root/sm/decrypt.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2002-02-06 14:52:03 +0000
committerWerner Koch <[email protected]>2002-02-06 14:52:03 +0000
commit6aa7267865b2059a107e8d16a678176cd9ad1d74 (patch)
tree9fad8959e8f47c9d25a87d78d15614b0674b5f9e /sm/decrypt.c
parent* cache.c (housekeeping): Fixed linking in the remove case. (diff)
downloadgnupg-6aa7267865b2059a107e8d16a678176cd9ad1d74.tar.gz
gnupg-6aa7267865b2059a107e8d16a678176cd9ad1d74.zip
* decrypt.c (gpgsm_decrypt): Bail out after an decryption error.
* server.c (reset_notify): Close input and output FDs. (cmd_encrypt,cmd_decrypt,cmd_verify,cmd_sign.cmd_import) (cmd_genkey): Close the FDs and release the recipient list even in the error case.
Diffstat (limited to 'sm/decrypt.c')
-rw-r--r--sm/decrypt.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/sm/decrypt.c b/sm/decrypt.c
index 3068262d7..d16bb59e4 100644
--- a/sm/decrypt.c
+++ b/sm/decrypt.c
@@ -385,8 +385,13 @@ gpgsm_decrypt (CTRL ctrl, int in_fd, FILE *out_fp)
&dfparm);
xfree (enc_val);
if (rc)
- log_error ("decrypting session key failed: %s\n",
- gnupg_strerror (rc));
+ {
+ /* fixme: as soon as we support multiple recipients, we
+ should just set a flag and try the next recipient */
+ log_error ("decrypting session key failed: %s\n",
+ gnupg_strerror (rc));
+ goto leave;
+ }
else
{ /* setup the bulk decrypter */
ksba_writer_set_filter (writer,