diff --git a/g10/getkey.c b/g10/getkey.c index 75b8564f3..6ee9fe5b7 100644 --- a/g10/getkey.c +++ b/g10/getkey.c @@ -3549,6 +3549,13 @@ finish_lookup (kbnode_t keyblock, unsigned int req_usage, int want_exact, continue; } + if ((req_usage & PUBKEY_USAGE_SIG) && agent_probe_secret_key (NULL, pk)) + { + if (DBG_LOOKUP) + log_debug ("\tno secret key for signing\n"); + continue; + } + if (DBG_LOOKUP) log_debug ("\tsubkey might be fine\n"); /* In case a key has a timestamp of 0 set, we make sure