]> git.pld-linux.org Git - packages/lirc.git/blob - lircd.init
- rebuild for kernel-3.7.10-3
[packages/lirc.git] / lircd.init
1 #!/bin/sh
2 #
3 # lircd         Linux Infrared Remote Control daemon
4 #
5 # chkconfig:    2345 65 35
6 # description:  LIRC is a package that allows you to decode and send \
7 #               infra-red signals of many (but not all) commonly used \
8 #               remote controls.
9 #
10 # processname:  lircd
11 # pidfile:      /var/run/lirc/lircd.pid
12 # config:       /etc/lirc/lircd.conf
13 # config:       /etc/sysconfig/lircd
14
15 # Source function library
16 . /etc/rc.d/init.d/functions
17
18 # Get service config
19 [ -f /etc/sysconfig/lircd ] && . /etc/sysconfig/lircd
20
21 start() {
22         # Check if the service is already running?
23         if [ -f /var/lock/subsys/lircd ]; then
24                 msg_already_running "Linux Infrared Remote Control daemon"
25                 return
26         fi
27
28         msg_starting "Linux Infrared Remote Control daemon"
29         OPTIONS=""
30         [ -n "$DRIVER" ] && OPTIONS="--driver=$DRIVER"
31         [ -n "$DEVICE" ] && OPTIONS="$OPTIONS --device=$DEVICE"
32         #Check if use serial port
33         [ -n "$COM_PORT" ] && setserial $COM_PORT uart none
34         MODULE_OPTIONS=""
35         [ -n "$DRIVER_OPTS" ] && MODULE_OPTIONS="$DRIVER_OPTS"
36         modprobe -s lirc $MODULE_OPTIONS > /dev/null 2>&1
37         ln -sf /tmp/.lircd /dev/lircd
38                         daemon lircd $OPTIONS
39         RETVAL=$?
40         [ $RETVAL -eq 0 ] && touch /var/lock/subsys/lircd
41 }
42
43 stop() {
44         # Stop daemons.
45         if [ ! -f /var/lock/subsys/lircd ]; then
46                 msg_not_running "Linux Infrared Remote Control daemon"
47                 return
48         fi
49
50         msg_stopping "Linux Infrared Remote Control daemon"
51         killproc lircd
52         rm -f /dev/lircd
53         rm -f /var/lock/subsys/lircd >/dev/null 2>&1
54 }
55
56 restart() {
57         test -f /var/lock/subsys/lircmd && RESTART_LIRCMD=yes
58         test -n "$RESTART_LIRCMD" && /sbin/service lircmd stop
59         stop
60         start
61         test -n "$RESTART_LIRCMD" && /sbin/service lircmd start
62 }
63
64 condrestart() {
65         if [ ! -f /var/lock/subsys/lircd ]; then
66                 msg_not_running "Linux Infrared Remote Control daemon"
67                 RETVAL=$1
68                 return
69         fi
70
71         restart
72 }
73
74 reload() {
75         if [ ! -f /var/lock/subsys/lircd ]; then
76                 msg_not_running "Linux Infrared Remote Control daemon"
77                 RETVAL=7
78                 return
79         fi
80
81         msg_reloading "Linux Infrared Remote Control daemon"
82         killproc lircd -HUP
83         RETVAL=$?
84 }
85
86 RETVAL=0
87 # See how we were called.
88 case "$1" in
89   start)
90         start
91         ;;
92   stop)
93         stop
94         ;;
95   restart)
96         restart
97         ;;
98   try-restart)
99         condrestart 0
100         ;;
101   reload|force-reload)
102         reload
103         ;;
104   status)
105         status lircd
106         exit $?
107         ;;
108   *)
109         msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|status}"
110         exit 3
111 esac
112
113 exit $RETVAL
This page took 0.033623 seconds and 3 git commands to generate.