]> git.pld-linux.org Git - packages/openssh.git/blob - ssh-agent.sh
- similar to gnupg-agent-agent.sh, much simpler than keychain.
[packages/openssh.git] / ssh-agent.sh
1 #!/bin/sh
2 # ssh-agent.sh - linux ver. (make against procps-3.2.1), sh/bash/zsh compatible
3 # like gnupg-agent-agent.sh (what the long & insane name!?) put this
4 # in /etc/profile.d/ chmod 755 /etc/profile.d/ssh-agent.sh
5 # make ln -s /etc/profile.d/ssh-agent.sh /etc/X11/xinit/xinitrc.d/ssh-agent.sh
6 # echo "ssh_agent_enable=yes" > $HOME/.ssh/ssh-agent.conf and forget about keychain
7
8 SSH_AGENT_CONF="${HOME}/.ssh/ssh-agent.conf"
9 if [ -s "$SSH_AGENT_CONF" ] ; then
10         . "$SSH_AGENT_CONF" || :
11         if [ "$ssh_agent_enable" = "yes" -o "$ssh_agent_enable" = "YES" ] ; then
12                 SSH_AGENT_DATA="${HOME}/.ssh/SSH-AGENT-DATA"
13                 if [ -s "$SSH_AGENT_DATA" ] ; then
14                         . "$SSH_AGENT_DATA" > /dev/null
15                         if [ "$(ps -p "$SSH_AGENT_PID" | tail -n1 | awk '{print $4}')" != "ssh-agent" ] ; then
16                                 ssh-agent > "$SSH_AGENT_DATA" 2>&1
17                                 . "$SSH_AGENT_DATA" > /dev/null
18                         fi
19                 else
20                         ssh-agent > "$SSH_AGENT_DATA" 2>&1
21                         . "$SSH_AGENT_DATA" > /dev/null
22                 fi
23         fi
24 fi
25
This page took 0.02399 seconds and 4 git commands to generate.