diff options
author | Werner Koch <[email protected]> | 2014-03-07 08:46:44 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2014-03-07 08:48:10 +0000 |
commit | 5105c8d2d344fd7301d456d8c13c7e90a54f7e98 (patch) | |
tree | bf8c125202e32087ee5dacefb32fa09babdb1c46 /tools/gpgconf-comp.c | |
parent | agent: Fix binary vs. text mode problem in ssh. (diff) | |
download | gnupg-5105c8d2d344fd7301d456d8c13c7e90a54f7e98.tar.gz gnupg-5105c8d2d344fd7301d456d8c13c7e90a54f7e98.zip |
ssh: Add support for Putty.
* agent/gpg-agent.c [W32]: Include Several Windows header.
(opts): Change help text for enable-ssh-support.
(opts, main): Add option --enable-putty-support
(putty_support, PUTTY_IPC_MAGIC, PUTTY_IPC_MAXLEN): New for W32.
(agent_init_default_ctrl): Add and asssert call.
(putty_message_proc, putty_message_thread): New.
(handle_connections) [W32]: Start putty message thread.
* common/sysutils.c (w32_get_user_sid): New for W32 only
* tools/gpgconf-comp.c (gc_options_gpg_agent): Add
--enable-ssh-support and --enable-putty-support. Make the
configuration group visible at basic level.
* agent/command-ssh.c (serve_mmapped_ssh_request): New for W32 only.
--
This patch enables support for Putty. It has been tested with Putty
0.62 using an Unix created ssh key copied to the private-keys-v1.d
directory on Windows and with a manually crafted sshcontrol file. It
also works with a smartcard key.
May thanks to gniibe who implemented a proxy in Python to test the
putty/gpg-agent communication.
Signed-off-by: Werner Koch <[email protected]>
(cherry picked from commit 9f32499f99a0817f63f7a73b09bdcebe60d4775d)
Resolved conflicts:
NEWS
agent/agent.h
agent/gpg-agent.c: Convert from pth to npth.
common/sysutils.c
common/sysutils.h
Diffstat (limited to 'tools/gpgconf-comp.c')
-rw-r--r-- | tools/gpgconf-comp.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/tools/gpgconf-comp.c b/tools/gpgconf-comp.c index dda4c9a3f..e97c7bd51 100644 --- a/tools/gpgconf-comp.c +++ b/tools/gpgconf-comp.c @@ -492,7 +492,7 @@ static gc_option_t gc_options_gpg_agent[] = GC_ARG_TYPE_NONE, GC_BACKEND_GPG_AGENT }, { "Configuration", - GC_OPT_FLAG_GROUP, GC_LEVEL_EXPERT, + GC_OPT_FLAG_GROUP, GC_LEVEL_BASIC, "gnupg", N_("Options controlling the configuration") }, { "options", GC_OPT_FLAG_NONE, GC_LEVEL_EXPERT, "gnupg", "|FILE|read options from FILE", @@ -500,6 +500,12 @@ static gc_option_t gc_options_gpg_agent[] = { "disable-scdaemon", GC_OPT_FLAG_NONE, GC_LEVEL_ADVANCED, "gnupg", "do not use the SCdaemon", GC_ARG_TYPE_NONE, GC_BACKEND_GPG_AGENT }, + { "enable-ssh-support", GC_OPT_FLAG_NONE, GC_LEVEL_BASIC, + "gnupg", "enable ssh support", + GC_ARG_TYPE_NONE, GC_BACKEND_GPG_AGENT }, + { "enable-putty-support", GC_OPT_FLAG_NONE, GC_LEVEL_BASIC, + "gnupg", "enable putty support", + GC_ARG_TYPE_NONE, GC_BACKEND_GPG_AGENT }, { "Debug", GC_OPT_FLAG_GROUP, GC_LEVEL_ADVANCED, |