~mdw
/
profile
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
dot/emacs: Permit duplicate entry names.
[profile]
/
bin
/
start-ssh-agent
diff --git
a/bin/start-ssh-agent
b/bin/start-ssh-agent
index
bfb2608
..
d5389d8
100755
(executable)
--- a/
bin/start-ssh-agent
+++ b/
bin/start-ssh-agent
@@
-68,13
+68,20
@@
case $foundp in
nil)
mkdir -p -m700 "$dir"
SSH_AUTH_SOCK=$socket
nil)
mkdir -p -m700 "$dir"
SSH_AUTH_SOCK=$socket
+ p=$PATH
+ runes=
+ while :; do
+ case $p in *:*) d=${p%%:*} p=${p#*:} ;; *) d=$p p= ;; esac
+ if [ -x "${d+$d/}setsid" ]; then runes="$runes setsid"; break; fi
+ case $p in "") break ;; esac
+ done
set +e; ssh-add -l >/dev/null 2>&1; rc=$?; set -e
if [ $rc -ge 2 ]; then
if [ -f "$pid" ]; then
kill $(cat "$pid") >/dev/null 2>&1 || :
fi
rm -f "$socket" "$pid"
set +e; ssh-add -l >/dev/null 2>&1; rc=$?; set -e
if [ $rc -ge 2 ]; then
if [ -f "$pid" ]; then
kill $(cat "$pid") >/dev/null 2>&1 || :
fi
rm -f "$socket" "$pid"
- (cd /; exec
ssh-agent -d -a "$socket"
>/dev/null 2>&1)&
+ (cd /; exec
$runes ssh-agent -d -a "$socket" </dev/null
>/dev/null 2>&1)&
echo $! >"$pid"
SSH_AUTH_SOCK=$socket
fi
echo $! >"$pid"
SSH_AUTH_SOCK=$socket
fi