aboutsummaryrefslogtreecommitdiffstats
path: root/sm/call-agent.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--sm/call-agent.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/sm/call-agent.c b/sm/call-agent.c
index 47e45aba3..190931f42 100644
--- a/sm/call-agent.c
+++ b/sm/call-agent.c
@@ -875,13 +875,11 @@ learn_cb (void *opaque, const void *buffer, size_t length)
return 0;
}
+ /* We do not store a certifciate with missing issuers as ephemeral
+ because we can assume that the --learn-card command has been used
+ on purpose. */
rc = gpgsm_basic_cert_check (parm->ctrl, cert);
- if (gpg_err_code (rc) == GPG_ERR_MISSING_CERT)
- { /* For later use we store it in the ephemeral database. */
- log_info ("issuer certificate missing - storing as ephemeral\n");
- keydb_store_cert (cert, 1, NULL);
- }
- else if (rc)
+ if (rc && gpg_err_code (rc) != GPG_ERR_MISSING_CERT)
log_error ("invalid certificate: %s\n", gpg_strerror (rc));
else
{