Fix for x86_64 build fail
[platform/upstream/connectedhomeip.git] / third_party / ot-br-posix / repo / src / agent / otbr-agent.init.in
1 #!/bin/sh
2 #  Copyright (c) 2018, The OpenThread Authors.
3 #  All rights reserved.
4 #
5 #  Redistribution and use in source and binary forms, with or without
6 #  modification, are permitted provided that the following conditions are met:
7 #  1. Redistributions of source code must retain the above copyright
8 #     notice, this list of conditions and the following disclaimer.
9 #  2. Redistributions in binary form must reproduce the above copyright
10 #     notice, this list of conditions and the following disclaimer in the
11 #     documentation and/or other materials provided with the distribution.
12 #  3. Neither the name of the copyright holder nor the
13 #     names of its contributors may be used to endorse or promote products
14 #     derived from this software without specific prior written permission.
15 #
16 #  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17 #  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18 #  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19 #  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
20 #  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21 #  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22 #  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
23 #  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
24 #  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
25 #  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26 #  POSSIBILITY OF SUCH DAMAGE.
27 #
28 ### BEGIN INIT INFO
29 # Provides:          otbr-agent
30 # Required-Start:
31 # Required-Stop:
32 # Should-Start:
33 # Should-Stop:
34 # Default-Start:     2 3 4 5
35 # Default-Stop:      0 1 6
36 # Short-Description: thread border agent
37 # Description: otbr-agent provides services to access thread device attached to border router
38 ### END INIT INFO
39
40 set -e
41
42 PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
43 DESC="thread border agent"
44 NAME=otbr-agent
45 DAEMON=@CMAKE_INSTALL_FULL_SBINDIR@/otbr-agent
46 PIDFILE=/var/run/otbr-agent.pid
47
48 AGENT_CONF=@CMAKE_INSTALL_FULL_SYSCONFDIR@/default/otbr-agent
49
50 . /lib/lsb/init-functions
51 . /lib/init/vars.sh
52
53 if [ -f $AGENT_CONF ]; then
54     . $AGENT_CONF
55 fi
56
57 start_agent()
58 {
59     if [ -e $PIDFILE ]; then
60         if $0 status > /dev/null ; then
61             log_success_msg "$DESC already started; not starting."
62             return
63         else
64             log_success_msg "Removing stale PID file $PIDFILE."
65             rm -f $PIDFILE
66         fi
67     fi
68
69     log_daemon_msg "Starting $DESC" "$NAME"
70     start-stop-daemon --start --quiet \
71         --pidfile $PIDFILE --make-pidfile \
72         -b --exec $DAEMON -- $OTBR_AGENT_OPTS
73     log_end_msg $?
74 }
75
76 stop_agent()
77 {
78     log_daemon_msg "Stopping $DESC" "$NAME"
79     start-stop-daemon --stop --retry 5 --quiet --oknodo \
80         --pidfile $PIDFILE --remove-pidfile
81     log_end_msg $?
82 }
83
84 case "$1" in
85     start)
86         start_agent
87         ;;
88     restart|reload|force-reload)
89         stop_agent
90         start_agent
91         ;;
92     stop|force-stop)
93         stop_agent
94         ;;
95     status)
96         status_of_proc -p $PIDFILE $DAEMON $NAME && exit 0 || exit $?
97         ;;
98     *)
99         log_action_msg "Usage: /etc/init.d/$NAME {start|stop|status|restart|reload|force-reload}"
100         exit 2
101         ;;
102 esac