Only use the sentinal if it exists

This commit is contained in:
Kevin Cotugno 2017-10-19 22:55:20 -07:00
parent ec871aedab
commit 847943f807
2 changed files with 33 additions and 2 deletions

View File

@ -48,10 +48,12 @@ function passgen () {
tr "$tr1" "$tr2" && echo tr "$tr1" "$tr2" && echo
} }
if [[ -f "$HOME/.ssh-sentinel.sh" ]]; then
source "$HOME/.ssh-sentinel.sh"
fi
export EDITOR='nvim' export EDITOR='nvim'
alias l="ls -lah" alias l="ls -lah"
alias ll="ls -lh" alias ll="ls -lh"
alias la="ls -lah" alias la="ls -lah"
source $HOME/.ssh-sentinel.sh

29
ssh-sentinel.sh Normal file
View File

@ -0,0 +1,29 @@
#!/usr/bin/env bash
file="$HOME/.ssh-agent"
found=0
which ssh-agent &> /dev/null
if (( $? )); then
exit 1
fi
if [[ -e $file ]]; then
sockenv=`cat $file | grep SSH_AUTH_SOCK`
pidenv=`cat $file | grep SSH_AGENT_PID`
sock=`echo "$sockenv" | grep -oP "(?<=\=)/.*$"`
pid=`echo "$pidenv" | grep -o "[0-9]*"`
proc=`ps ax | grep "^ $pid.*ssh-agent"`
if [[ -S "$sock" && -O "$sock" && -n "$proc" ]]; then
export "$sockenv"
export "$pidenv"
found=1
fi
fi
if (( ! $found )); then
export `ssh-agent -s | grep -oP "^.+(?=; export)" | tee "$file"`
fi
chmod 600 "$file"