mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-02 22:46:30 +02:00
2009-08-20 Daiki Ueno <ueno@unixuser.org>
* mainproc.c (proc_encrypted): Clear passphrase cached with S2K cache ID if decryption failed. * passphrase.c (passphrase_to_dek_ext): Set dek->s2k_cacheid. * gpgv.c (passphrase_clear_cache): New stub.
This commit is contained in:
parent
43387e13c0
commit
7cde92403c
7 changed files with 37 additions and 9 deletions
|
@ -586,6 +586,13 @@ proc_encrypted( CTX c, PACKET *pkt )
|
|||
write_status( STATUS_DECRYPTION_FAILED );
|
||||
}
|
||||
else {
|
||||
if (gpg_err_code (result) == GPG_ERR_BAD_KEY
|
||||
&& *c->dek->s2k_cacheid != '\0')
|
||||
{
|
||||
log_debug(_("cleared passphrase cached with ID: %s\n"),
|
||||
c->dek->s2k_cacheid);
|
||||
passphrase_clear_cache (NULL, c->dek->s2k_cacheid, 0);
|
||||
}
|
||||
write_status( STATUS_DECRYPTION_FAILED );
|
||||
log_error(_("decryption failed: %s\n"), g10_errstr(result));
|
||||
/* Hmmm: does this work when we have encrypted using multiple
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue