aboutsummaryrefslogtreecommitdiffstats
path: root/g10/call-agent.c
diff options
context:
space:
mode:
authorMarcus Brinkmann <[email protected]>2017-07-24 15:18:42 +0000
committerMarcus Brinkmann <[email protected]>2017-07-24 15:18:42 +0000
commit872137b5921dd297e7d2c1def6e3868b7595feb5 (patch)
tree53c0721072ffa237566240d57f510e0afa4e0331 /g10/call-agent.c
parentw32: Change directory on daemon startup. (diff)
downloadgnupg-872137b5921dd297e7d2c1def6e3868b7595feb5.tar.gz
gnupg-872137b5921dd297e7d2c1def6e3868b7595feb5.zip
g10: Make sure to emit NEED_PASSPHRASE on --import of secret key.
* call-agent.h (agent_import_key): Add keyid parameters. * call-agent.c (agent_import_key): Set keyid parameters. * import.c (transfer_secret_keys): Pass keyid parameters. Signed-off-by: Marcus Brinkmann <[email protected]> GnuPG-bug-id: 2667
Diffstat (limited to '')
-rw-r--r--g10/call-agent.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/g10/call-agent.c b/g10/call-agent.c
index b17c2e65f..1ce6641af 100644
--- a/g10/call-agent.c
+++ b/g10/call-agent.c
@@ -2096,7 +2096,8 @@ inq_import_key_parms (void *opaque, const char *line)
/* Call the agent to import a key into the agent. */
gpg_error_t
agent_import_key (ctrl_t ctrl, const char *desc, char **cache_nonce_addr,
- const void *key, size_t keylen, int unattended, int force)
+ const void *key, size_t keylen, int unattended, int force,
+ u32 *keyid, u32 *mainkeyid, int pubkey_algo)
{
gpg_error_t err;
struct import_key_parm_s parm;
@@ -2106,6 +2107,9 @@ agent_import_key (ctrl_t ctrl, const char *desc, char **cache_nonce_addr,
memset (&dfltparm, 0, sizeof dfltparm);
dfltparm.ctrl = ctrl;
+ dfltparm.keyinfo.keyid = keyid;
+ dfltparm.keyinfo.mainkeyid = mainkeyid;
+ dfltparm.keyinfo.pubkey_algo = pubkey_algo;
err = start_agent (ctrl, 0);
if (err)