github.com_burnett01_rsync-.../agent-stop

35 lines
783 B
Text
Raw Permalink 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.
2020-01-02 23:48:55 +01:00
if [ -f "$STORE_PATH/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
2020-01-02 23:48:55 +01:00
rm "$STORE_PATH/id"
2020-01-02 23:38:02 +01:00
SSH_AUTH_SOCK=$(cat "$STORE_PATH/sock")
export SSH_AUTH_SOCK
2020-01-02 23:48:55 +01:00
rm "$STORE_PATH/sock"
2020-01-02 23:38:02 +01:00
rmdir "$STORE_PATH"
eval $(ssh-agent -k) >/dev/null
exit $?
else
2020-01-02 23:48:55 +01:00
echo "SSH_AGENT_PID not set, $STORE_PATH/id doesn't exist!" >&2
exit 1
fi
2020-01-02 16:57:06 +01:00
fi