1 #!/bin/sh
2 # Start/stop the GOsa support daemon infrastructure.
3 #
4 ### BEGIN INIT INFO
5 # Provides: gosa-si
6 # Required-Start: $network $named $syslog $time
7 # Required-Stop: $network $named $syslog $time
8 # Default-Start: 2 3 4 5
9 # Default-Stop: 0 1 6
10 # Short-Description: GOsa message server/client component
11 # Description: gosa-si establishes the communication between a couple of
12 # GOsa hosting servers and optionally clients to do event
13 # signaling for all communication partners.
14 ### END INIT INFO
16 # Load defaults
17 [ -r /etc/default/gosa-si ] && . /etc/default/gosa-si
19 # Load LSB support functions
20 . /lib/lsb/init-functions
23 start_client() {
24 start-stop-daemon --start --quiet --pidfile /var/run/gosa-si-client.pid --name gosa-si-client --startas /usr/sbin/gosa-si-client -- $DEBUG
25 }
28 start_server() {
29 start-stop-daemon --start --quiet --pidfile /var/run/gosa-si-server.pid --name gosa-si-server --startas /usr/sbin/gosa-si-server -- $1 $DEBUG
30 }
33 stop_client() {
34 start-stop-daemon --stop --retry 5 --quiet --pidfile /var/run/gosa-si-client.pid --name gosa-si-client
35 kill `ps -C gosa-si-client -o pid=` > /dev/null 2>&1
36 ! ps -C gosa-si-client -o pid= > /dev/null 2>&1
37 }
40 stop_server() {
41 start-stop-daemon --stop --retry 5 --quiet --pidfile /var/run/gosa-si-server.pid --name gosa-si-server
42 kill `ps -C gosa-si-server -o pid=` > /dev/null 2>&1
43 ! ps -C gosa-si-server -o pid= > /dev/null 2>&1
44 }
47 case "$1" in
48 start) log_daemon_msg "Starting GOsa support infrastructure"
49 if [ -x /usr/sbin/gosa-si-server ]; then
50 log_progress_msg "daemon"
51 start_server
52 fi
53 if [ "$START_CLIENT" = "1" -a -x /usr/sbin/gosa-si-client ]; then
54 log_progress_msg "client"
55 start_client
56 fi
57 log_end_msg $?
58 ;;
59 stop) log_daemon_msg "Stopping GOsa support infrastructure"
60 if [ "$START_CLIENT" = "1" -a -x /usr/sbin/gosa-si-client ]; then
61 log_progress_msg "client"
62 stop_client
63 fi
64 if [ -x /usr/sbin/gosa-si-server ]; then
65 log_progress_msg "daemon"
66 stop_server
67 fi
68 log_end_msg $?
69 ;;
70 reload|force-reload|restart) log_daemon_msg "Restarting GOsa support infrastructure"
71 if [ "$START_CLIENT" = "1" -a -x /usr/sbin/gosa-si-client ]; then
72 stop_client
73 fi
74 if [ -x /usr/sbin/gosa-si-server ]; then
75 stop_server
76 start_server
77 fi
78 if [ "$START_CLIENT" = "1" -a -x /usr/sbin/gosa-si-client ]; then
79 start_client
80 fi
81 log_progress_msg "done"
82 log_end_msg $?
83 ;;
84 *) log_action_msg "Usage: /etc/init.d/gosa-si {start|stop|restart|reload|force-reload}"
85 exit 2
86 ;;
87 esac
88 exit 0