summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rwxr-xr-xroot/etc/init.d/opie14
1 files changed, 10 insertions, 4 deletions
diff --git a/root/etc/init.d/opie b/root/etc/init.d/opie
index ada0431..75f4f7b 100755
--- a/root/etc/init.d/opie
+++ b/root/etc/init.d/opie
@@ -30,58 +30,64 @@ killproc() {
case $1 in
'start')
cd $HOME
rm -f /etc/rc2.d/S99x # Can't have both running!
if [ -e /proc/hal/model ] ; then
IPAQ=`cat /proc/hal/model`
echo iPAQ type $IPAQ
case $IPAQ in
"3100" ) export QWS_DISPLAY=Transformed:Rot90:0 ;;
"3600" ) export QWS_DISPLAY=Transformed:Rot270:0 ;;
"3700" ) export QWS_DISPLAY=Transformed:Rot270:0 ;;
"3800" ) export QWS_DISPLAY=Transformed:Rot90:0 ;;
*) echo "Unknown processor type -`module_id`-!" ;;
esac
else
export QWS_DISPLAY=Transformed:Rot270:0
fi
+ if [ -x /usr/bin/ssh-agent ]; then
+ SSHAGENT=/usr/bin/ssh-agent
+ else
+ SSHAGENT=""
+ fi
+
if [ -x $OPIEDIR/bin/opie-login ]; then
if ! killall -0 syslogd 2>/dev/null >/dev/null; then
echo Starting Opie-login....
- $OPIEDIR/bin/opie-login 2>/dev/null >/dev/null &
+ $SSHAGENT $OPIEDIR/bin/opie-login 2>/dev/null >/dev/null &
else
echo Starting Opie-login with syslog logging.....
- ($OPIEDIR/bin/opie-login 2>&1 | logger ) &
+ ($SSHAGENT $OPIEDIR/bin/opie-login 2>&1 | logger ) &
fi
else
if ! killall -0 syslogd 2>/dev/null >/dev/null; then
echo Starting Opie....
- $OPIEDIR/bin/qpe 2>/dev/null >/dev/null &
+ $SSHAGENT $OPIEDIR/bin/qpe 2>/dev/null >/dev/null &
else
echo Starting Opie with syslog logging.....
- ($OPIEDIR/bin/qpe 2>&1 | logger ) &
+ ($SSHAGENT $OPIEDIR/bin/qpe 2>&1 | logger ) &
fi
fi
;;
'stop')
echo "Killing Opie..."
if [ -f /var/run/opie.pid ]; then
kill -TERM `cat /var/run/opie.pid`
else
killproc qpe
fi
killproc opie-login
;;
*)
echo "usage: $0 { start | stop }"
;;
esac