diff options
Diffstat (limited to 'src/verify.c')
| -rw-r--r-- | src/verify.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/verify.c b/src/verify.c index 19ac5d71..7ae18cb8 100644 --- a/src/verify.c +++ b/src/verify.c @@ -996,9 +996,14 @@ _gpgme_verify_status_handler (void *priv, gpgme_status_code_t code, char *args) case GPGME_STATUS_TRUST_MARGINAL: case GPGME_STATUS_TRUST_FULLY: case GPGME_STATUS_TRUST_ULTIMATE: + /* In de-vs compliance mode TRUST_ status is emitted during + * decryption if validation of the encryption certificate + * fails. Silently, ignore such a status line if no NEWSIG + * was seen. */ + if (!sig) + break; opd->only_newsig_seen = 0; - return sig ? parse_trust (sig, code, args) - : trace_gpg_error (GPG_ERR_INV_ENGINE); + return parse_trust (sig, code, args); case GPGME_STATUS_PKA_TRUST_BAD: case GPGME_STATUS_PKA_TRUST_GOOD: |
