• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /netgear-WNDR4500v2-V1.0.0.60_1.0.38/ap/gpl/timemachine/avahi-0.6.25/initscript/debian/
1#!/bin/sh
2
3# $Id$
4
5# This file is part of avahi.
6#
7# avahi is free software; you can redistribute it and/or modify it
8# under the terms of the GNU Lesser General Public License as
9# published by the Free Software Foundation; either version 2 of the
10# License, or (at your option) any later version.
11#
12# avahi is distributed in the hope that it will be useful, but WITHOUT
13# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
14# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
15# License for more details.
16#
17# You should have received a copy of the GNU Lesser General Public
18# License along with avahi; if not, write to the Free Software
19# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
20# USA.
21
22#
23# avahi-dnsconfd     avahi dns configuration daemon
24#                               Daemon for ZeroConf
25#
26# Authors:      <sebastien.estienne@gmail.com>
27#
28
29if [ -f /lib/lsb/init-functions ]
30then
31    . /lib/lsb/init-functions
32else
33    # int log_begin_message (char *message)
34    log_begin_msg () {
35        if [ -z "$1" ]; then
36	    return 1
37        fi
38        echo " * $@"
39    }
40
41    # int log_end_message (int exitstatus)
42    log_end_msg () {
43	
44    # If no arguments were passed, return
45	[ -z "$1" ] && return 1
46	
47    # Only do the fancy stuff if we have an appropriate terminal
48    # and if /usr is already mounted
49	TPUT=/usr/bin/tput
50	EXPR=/usr/bin/expr
51	if [ -x $TPUT ] && [ -x $EXPR ] && $TPUT hpa 60 >/dev/null 2>&1; then
52	    COLS=`$TPUT cols`
53	    if [ -n "$COLS" ]; then
54		COL=`$EXPR $COLS - 7`
55	    else
56		COL=73
57	    fi
58	    UP=`$TPUT cuu1`
59	    END=`$TPUT hpa $COL`
60	    START=`$TPUT hpa 0`
61	    RED=`$TPUT setaf 1`
62	    NORMAL=`$TPUT op`
63	    if [ $1 -eq 0 ]; then
64		echo "$UP$END[ ok ]"
65	    else
66		echo -e "$UP$START $RED*$NORMAL$END[${RED}fail${NORMAL}]"
67	    fi
68	else
69	    if [ $1 -eq 0 ]; then
70		echo "   ...done."
71	    else
72		echo "   ...fail!"
73	    fi
74	fi
75	return $1
76    }
77    
78    log_warning_msg () {
79	if log_use_fancy_output; then
80	    YELLOW=`$TPUT setaf 3`
81	    NORMAL=`$TPUT op`
82	    echo "$YELLOW*$NORMAL $@"
83	else
84	    echo "$@"
85	fi
86    }
87
88fi
89
90#set -e
91
92PATH=/sbin:/bin:/usr/sbin:/usr/bin
93DESC="Avahi Unicast DNS Configuration Daemon"
94NAME="avahi-dnsconfd"
95DAEMON="@sbindir@/$NAME"
96SCRIPTNAME=/etc/init.d/$NAME
97
98# Gracefully exit if the package has been removed.
99test -x $DAEMON || exit 0
100
101# don't start if /etc/default/avahi-dnsconfd says so.
102AVAHI_DNSCONFD_START=1
103test -f /etc/default/avahi-dnsconfd && . /etc/default/avahi-dnsconfd
104
105if [ "$AVAHI_DNSCONFD_START" != "1" -a "$1" != "stop" ]; then
106    log_warning_msg "Not starting $DESC $NAME, disabled via /etc/default/$NAME"
107    exit 0
108fi
109
110#
111#       Function that starts the daemon/service.
112#
113d_start() {
114    $DAEMON -c
115    [ $? = 0 ] && exit 0
116
117    if [ -s /etc/localtime ]; then
118	if [ ! -d /etc/avahi/etc ]; then
119	    mkdir -p @sysconfdir@/avahi/etc >/dev/null 2>&1
120	fi
121	cp -fp /etc/localtime @sysconfdir@/avahi/etc >/dev/null 2>&1
122    fi;
123    
124    $DAEMON -D
125}
126
127#
128#       Function that stops the daemon/service.
129#
130d_stop() {
131    $DAEMON -c
132    [ $? != 0 ] && exit 0
133
134    $DAEMON -k
135}
136
137#
138#       Function that reload the config file for the daemon/service.
139#
140d_refresh() {
141    $DAEMON -c
142    [ $? != 0 ] && exit 0
143
144    $DAEMON -r
145}
146
147#
148#       Function that check the status of the daemon/service.
149#
150d_status() {
151    $DAEMON -c
152    [ $? = 0 ]  && echo "$DESC is running" || echo "$DESC is not running"
153}
154
155case "$1" in
156    start)
157        log_begin_msg "Starting $DESC: $NAME"
158        d_start
159        log_end_msg $?
160        ;;
161    stop)
162        log_begin_msg "Stopping $DESC: $NAME"
163        d_stop
164        log_end_msg $?
165        ;;
166    refresh)
167        log_begin_msg "Refreshing $DESC: $NAME"
168        d_refresh
169        log_end_msg $?
170        ;;
171    reload|restart|force-reload)
172        log_begin_msg "Restarting $DESC: $NAME"
173        $DAEMON -c && d_stop
174        d_start
175        log_end_msg $?
176        ;;
177    status)
178        d_status
179	;;
180    *)
181        echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|reload}" >&2
182        exit 1
183        ;;
184esac
185
186exit 0
187