aboutsummaryrefslogtreecommitdiffstats
path: root/agent/command.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2015-01-29 15:26:07 +0000
committerWerner Koch <[email protected]>2015-01-29 15:26:07 +0000
commit6ab0fac575a8b04152a199cb300a08436b096753 (patch)
tree8a7309b2ef2a8493c1762963fc58049740a60a19 /agent/command.c
parentpo: Update Japanese Translation. (diff)
downloadgnupg-6ab0fac575a8b04152a199cb300a08436b096753.tar.gz
gnupg-6ab0fac575a8b04152a199cb300a08436b096753.zip
agent: Fix use of imported but unprotected openpgp keys.
* agent/agent.h (PRIVATE_KEY_OPENPGP_NONE): New. * agent/command.c (do_one_keyinfo): Implement it. * agent/findkey.c (agent_key_from_file): Ditto. (agent_key_info_from_file): Ditto. (agent_delete_key): Ditto. * agent/protect.c (agent_private_key_type): Add detection for openpgp "none" method. Signed-off-by: Werner Koch <[email protected]>
Diffstat (limited to 'agent/command.c')
-rw-r--r--agent/command.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/agent/command.c b/agent/command.c
index d5644cbac..ca28e9ba2 100644
--- a/agent/command.c
+++ b/agent/command.c
@@ -1163,7 +1163,9 @@ do_one_keyinfo (ctrl_t ctrl, const unsigned char *grip, assuan_context_t ctx,
{
switch (keytype)
{
- case PRIVATE_KEY_CLEAR: protectionstr = "C"; keytypestr = "D";
+ case PRIVATE_KEY_CLEAR:
+ case PRIVATE_KEY_OPENPGP_NONE:
+ protectionstr = "C"; keytypestr = "D";
break;
case PRIVATE_KEY_PROTECTED: protectionstr = "P"; keytypestr = "D";
break;
@@ -1801,12 +1803,12 @@ cmd_passwd (assuan_context_t ctx, char *line)
}
}
if (!err && opt_preset)
- {
+ {
char hexgrip[40+1];
bin2hex(grip, 20, hexgrip);
err = agent_put_cache (hexgrip, CACHE_MODE_ANY, newpass,
ctrl->cache_ttl_opt_preset);
- }
+ }
xfree (newpass);
}
ctrl->in_passwd--;