#!/bin/sh ### BEGIN INIT INFO # Provides: avahi avahi-daemon # Required-Start: $remote_fs dbus # Required-Stop: $remote_fs dbus # Should-Start: $syslog # Should-Stop: $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Avahi mDNS/DNS-SD Daemon # Description: Zeroconf daemon for configuring your network # automatically ### END INIT INFO PATH=/sbin:/bin:/usr/sbin:/usr/bin DESC="Avahi mDNS/DNS-SD Daemon" NAME="avahi-daemon" DAEMON="/usr/sbin/$NAME" SCRIPTNAME=/etc/init.d/$NAME # Gracefully exit if the package has been removed. test -x $DAEMON || exit 0 . /lib/lsb/init-functions # Include avahi-daemon defaults if available. test -f /etc/default/avahi-daemon && . /etc/default/avahi-daemon DISABLE_TAG="/var/run/avahi-daemon/disabled-for-unicast-local" # # Function that starts the daemon/service. # d_start() { $DAEMON -c && return 0 if [ -e $DISABLE_TAG -a "$AVAHI_DAEMON_DETECT_LOCAL" != "0" ]; then # Disabled because of the existance of an unicast .local domain log_warning_msg "avahi-daemon disabled because there is a unicast .local domain" exit 0; fi; $DAEMON -D } # # Function that stops the daemon/service. # d_stop() { if $DAEMON -c ; then $DAEMON -k fi } # # Function that reload the config file for the daemon/service. # d_reload() { $DAEMON -c && $DAEMON -r } # # Function that check the status of the daemon/service. # d_status() { $DAEMON -c && { echo "$DESC is running"; exit 0; } || { echo "$DESC is not running"; exit 3; } } case "$1" in start) log_daemon_msg "Starting $DESC" "$NAME" d_start log_end_msg $? ;; stop) log_daemon_msg "Stopping $DESC" "$NAME" d_stop log_end_msg $? ;; reload|force-reload) log_daemon_msg "Reloading services for $DESC" "$NAME" d_reload log_end_msg $? ;; restart) log_daemon_msg "Restarting $DESC" "$NAME" d_stop if [ "$?" -eq 0 ]; then d_start log_end_msg $? else log_end_msg 1 fi ;; status) d_status ;; *) echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|reload|status}" >&2 exit 3 ;; esac exit 0