aboutsummaryrefslogtreecommitdiffstats
path: root/agent/command-ssh.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2013-08-19 09:44:59 +0000
committerWerner Koch <[email protected]>2014-03-07 08:59:32 +0000
commit90688b29f3701f4d3e2a5a49c5544fe8d2a84b2d (patch)
tree61b12e2711cc1316bde6f42619861b8627c9e654 /agent/command-ssh.c
parentgpgv: Init Libgcrypt to avoid syslog warning. (diff)
downloadgnupg-90688b29f3701f4d3e2a5a49c5544fe8d2a84b2d.tar.gz
gnupg-90688b29f3701f4d3e2a5a49c5544fe8d2a84b2d.zip
agent: Fix UPDATESTARTUPTTY for ssh.
* agent/command-ssh.c (setup_ssh_env): Fix env setting. -- gniibe reported this to gnupg-devel on 2012-07-04: [...] (2) UPDATESTARTUPTTY doesn't work to switch TTY for pinentry for SSH. [...] Current implementation: In the function start_command_handler_ssh, the logic puts priority on ctrl->session_env which is initialized by agent_init_default_ctrl. There are always GPG_TTY and TERM defined, because lines around 968 in gpg-agent.c, it says: /* Make sure that we have a default ttyname. */ While UPDATESTARTUPTTY updates opt.startup_env, it doesn't affect at all. Here is a patch to point the issue. Tested and works for me. Signed-off-by: Werner Koch <[email protected]> (cherry picked from commit 9f5578c29adba6d4f7d3650121d07322c2f8d254)
Diffstat (limited to 'agent/command-ssh.c')
-rw-r--r--agent/command-ssh.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/agent/command-ssh.c b/agent/command-ssh.c
index 4bd1aa7a7..4191d6f0c 100644
--- a/agent/command-ssh.c
+++ b/agent/command-ssh.c
@@ -3370,8 +3370,7 @@ setup_ssh_env (ctrl_t ctrl)
const char *value;
for (idx=0; !err && names[idx]; idx++)
- if (!session_env_getenv (ctrl->session_env, names[idx])
- && (value = session_env_getenv (opt.startup_env, names[idx])))
+ if ((value = session_env_getenv (opt.startup_env, names[idx])))
err = session_env_setenv (ctrl->session_env, names[idx], value);
if (!err && !ctrl->lc_ctype && opt.startup_lc_ctype)