| #! /bin/sh |
| ### BEGIN INIT INFO |
| # Provides: irda |
| # Required-Start: $network $remote_fs |
| # Required-Stop: $network $remote_fs |
| # Default-Start: 2 3 4 5 |
| # Default-Stop: 0 1 6 |
| # Short-Description: Infrared port support |
| ### END INIT INFO |
| |
| NAME="irattach" |
| test -x "$IRDA_DAEMON" || IRDA_DAEMON=/usr/sbin/irattach |
| test -z "$IRATTACH_PID" && IRATTACH_PID=/var/run/irattach.pid |
| |
| # Source function library. |
| . /etc/init.d/functions |
| |
| module_id() { |
| awk 'BEGIN { FS=": " } /Hardware/ { print $2 } ' </proc/cpuinfo |
| } |
| |
| if [ ! -f /etc/sysconfig/irda ]; then |
| case `module_id` in |
| "HP iPAQ H2200" | "HP iPAQ HX4700" | "HTC Universal") |
| IRDA=yes |
| DEVICE=/dev/ttyS2 |
| DONGLE= |
| DISCOVERY= |
| ;; |
| *) |
| IRDA=yes |
| DEVICE=/dev/ttyS1 |
| DONGLE= |
| DISCOVERY= |
| ;; |
| esac |
| else |
| . /etc/sysconfig/irda |
| fi |
| |
| # Check that irda is up. |
| [ ${IRDA} = "no" ] && exit 0 |
| |
| [ -f /usr/sbin/irattach ] || exit 0 |
| |
| ARGS= |
| if [ $DONGLE ]; then |
| ARGS="$ARGS -d $DONGLE" |
| fi |
| if [ "$DISCOVERY" = "yes" ];then |
| ARGS="$ARGS -s" |
| fi |
| |
| case "$1" in |
| start) |
| echo -n "Starting IrDA: $NAME" |
| start-stop-daemon --start --quiet --exec "$IRDA_DAEMON" ${DEVICE} ${ARGS} --pidfile "$IRATTACH_PID" |
| sleep 1 |
| [ -f /var/run/irattach.pid ] && echo " done" || echo " fail" |
| ;; |
| stop) |
| echo "Stopping IrDA: $NAME" |
| start-stop-daemon --stop --quiet --exec "$IRDA_DAEMON" --pidfile "$IRATTACH_PID" |
| ;; |
| restart|force-reload) |
| $0 stop |
| $0 start |
| ;; |
| status) |
| status irattach |
| exit $? |
| ;; |
| *) |
| N=/etc/init.d/$NAME |
| echo "Usage: $N {start|stop|restart|force-reload|status}" >&2 |
| exit 1 |
| ;; |
| esac |