#!/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 global PATH := '/sbin:/bin:/usr/sbin:/usr/bin' global DESC := '"Avahi mDNS/DNS-SD Daemon'" global NAME := '"avahi-daemon'" global DAEMON := ""/usr/sbin/$NAME"" global SCRIPTNAME := "/etc/init.d/$NAME" # Gracefully exit if the package has been removed. test -x $DAEMON || exit 0 source /lib/lsb/init-functions # Include avahi-daemon defaults if available. test -f /etc/default/avahi-daemon && source /etc/default/avahi-daemon global DISABLE_TAG := '"/var/run/avahi-daemon/disabled-for-unicast-local'" # # Function that starts the daemon/service. # proc d_start { $DAEMON -c && return 0 if test -e $DISABLE_TAG -a $AVAHI_DAEMON_DETECT_LOCAL != "0" { # 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; }; $DAEMON -D } # # Function that stops the daemon/service. # proc d_stop { if $DAEMON -c { $DAEMON -k } } # # Function that reload the config file for the daemon/service. # proc d_reload { $DAEMON -c && $DAEMON -r } # # Function that check the status of the daemon/service. # proc d_status { $DAEMON -c && do { echo "$DESC is running"; exit 0; } || do { echo "$DESC is not running"; exit 3; } } matchstr $1 { start { log_daemon_msg "Starting $DESC" $NAME d_start log_end_msg $Status } stop { log_daemon_msg "Stopping $DESC" $NAME d_stop log_end_msg $Status } reload|force-reload { log_daemon_msg "Reloading services for $DESC" $NAME d_reload log_end_msg $Status } restart { log_daemon_msg "Restarting $DESC" $NAME d_stop if test "$Status" -eq 0 { d_start log_end_msg $Status } else { log_end_msg 1 } } status { d_status } * { echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|reload|status}" > !2 exit 3 } } exit 0