]> git.pld-linux.org Git - packages/openssh.git/blob - ssh-agent.sh
- allow to pass flags & parameters for ssh-agent via ssh_agent_flags.
[packages/openssh.git] / ssh-agent.sh
1 #!/bin/sh
2 # ssh-agent.sh sh/bash/zsh compatible script for /etc/profile.d/ .
3 # Works like gnupg-agent-agent.sh . Copy this in /etc/profile.d/ ,
4 # make ln -s /etc/profile.d/ssh-agent.sh /etc/X11/xinit/xinitrc.d/ssh-agent.sh
5 # run echo "ssh_agent_enable=yes" > $HOME/.ssh/ssh-agent.conf . 
6
7 [ -f /etc/ssh/ssh-agent.conf ] && SSH_AGENT_CONF="/etc/ssh/ssh-agent.conf"
8 [ -f "${HOME}/.ssh/ssh-agent.conf" ] && 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_flags" > "$SSH_AGENT_DATA" 2>&1
17                                 . "$SSH_AGENT_DATA" > /dev/null
18                         fi
19                 else
20                         ssh-agent "$ssh_agent_flags" > "$SSH_AGENT_DATA" 2>&1
21                         . "$SSH_AGENT_DATA" > /dev/null
22                 fi
23         fi
24 fi
25
This page took 0.027905 seconds and 4 git commands to generate.