github.com_burnett01_rsync-.../agent-stop

35 lines
823 B
Text
Raw Normal View History

2020-01-02 16:57:06 +01:00
#!/bin/sh
if [ ! -z "$SSH_AGENT_PID" ]; then
# Here, the environment is set already, just kill the script.
eval $(ssh-agent -k) >/dev/null
2020-01-02 16:57:06 +01:00
exit $?
else
# The env isn't set, construct the file path.
2020-01-02 23:38:02 +01:00
FOLDER=${1:-default}
STORE_PATH="/tmp/ssh-agent/$FOLDER"
if [ ! -d "$STORE_PATH" ]; then
echo "Store Path $STORE_PATH doesn't exist!" >&2
exit 1
fi
# And check our files exist.
if [ -f "$STORE_PATH/ssh-agent-id" ]; then
# Grab our PID and socket.
2020-01-02 23:38:02 +01:00
SSH_AGENT_PID=$(cat "$STORE_PATH/id")
export SSH_AGENT_PID
rm "$STORE_PATH/ssh-agent-id"
2020-01-02 23:38:02 +01:00
SSH_AUTH_SOCK=$(cat "$STORE_PATH/sock")
export SSH_AUTH_SOCK
rm "$STORE_PATH/ssh-auth-sock"
2020-01-02 23:38:02 +01:00
rmdir "$STORE_PATH"
eval $(ssh-agent -k) >/dev/null
exit $?
else
echo "SSH_AGENT_PID not set, $STORE_PATH/ssh-auth-sock doesn't exist!" >&2
exit 1
fi
2020-01-02 16:57:06 +01:00
fi