summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorColin Watson <cjwatson@debian.org>2014-03-27 15:42:11 +0000
committerColin Watson <cjwatson@debian.org>2014-03-28 15:06:57 +0000
commit27e16e697626bddce174f09f0defab3821221bfd (patch)
treea77be72ba49e01a0636eff692c3a2a8a693591b8
parent3948fd275d9542b549dbddc37091b6fa1e0f354d (diff)
Don't start ssh-agent from the Upstart user session job if something like Xsession has already done so (based on work by Bruno Vasselle; LP: #1244736).
-rw-r--r--debian/changelog3
-rw-r--r--debian/ssh-agent.user-session.upstart4
2 files changed, 7 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog
index 332515dc7..4bfbbfb9d 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -22,6 +22,9 @@ openssh (1:6.6p1-1) UNRELEASED; urgency=medium
22 - Japanese (thanks, victory). 22 - Japanese (thanks, victory).
23 - German (thanks, Stephan Beck; closes: #742541). 23 - German (thanks, Stephan Beck; closes: #742541).
24 - Italian (thanks, Beatrice Torracca). 24 - Italian (thanks, Beatrice Torracca).
25 * Don't start ssh-agent from the Upstart user session job if something
26 like Xsession has already done so (based on work by Bruno Vasselle;
27 LP: #1244736).
25 28
26 [ Matthew Vernon ] 29 [ Matthew Vernon ]
27 * CVE-2014-2653: Fix failure to check SSHFP records if server presents a 30 * CVE-2014-2653: Fix failure to check SSHFP records if server presents a
diff --git a/debian/ssh-agent.user-session.upstart b/debian/ssh-agent.user-session.upstart
index 8553e12f1..f127e221d 100644
--- a/debian/ssh-agent.user-session.upstart
+++ b/debian/ssh-agent.user-session.upstart
@@ -6,14 +6,18 @@ start on starting xsession-init
6pre-start script 6pre-start script
7 [ -e /etc/X11/Xsession.options ] || { stop; exit 0; } 7 [ -e /etc/X11/Xsession.options ] || { stop; exit 0; }
8 grep -q "^use-ssh-agent$" /etc/X11/Xsession.options || { stop; exit 0; } 8 grep -q "^use-ssh-agent$" /etc/X11/Xsession.options || { stop; exit 0; }
9 [ -z "$SSH_AUTH_SOCK" ] || { stop; exit 0; }
9 10
10 eval "$(ssh-agent)" >/dev/null 11 eval "$(ssh-agent)" >/dev/null
11 initctl set-env --global SSH_AUTH_SOCK=$SSH_AUTH_SOCK 12 initctl set-env --global SSH_AUTH_SOCK=$SSH_AUTH_SOCK
12 initctl set-env --global SSH_AGENT_PID=$SSH_AGENT_PID 13 initctl set-env --global SSH_AGENT_PID=$SSH_AGENT_PID
14 initctl set-env --global SSH_AGENT_LAUNCHER=upstart
13end script 15end script
14 16
15post-stop script 17post-stop script
18 [ "$SSH_AGENT_LAUNCHER" = upstart ] || exit 0
16 kill $SSH_AGENT_PID 2>/dev/null || true 19 kill $SSH_AGENT_PID 2>/dev/null || true
17 initctl unset-env --global SSH_AUTH_SOCK 20 initctl unset-env --global SSH_AUTH_SOCK
18 initctl unset-env --global SSH_AGENT_PID 21 initctl unset-env --global SSH_AGENT_PID
22 initctl unset-env --global SSH_AGENT_LAUNCHER
19end script 23end script