From 89b7a2522394dc6c546156b35d197ee00ca6a016 Mon Sep 17 00:00:00 2001 From: Sebastien Estienne Date: Sun, 3 Jul 2005 21:51:33 +0000 Subject: [PATCH] * initscript for avahi-dnsconfd * INSTALL info to start it automatically on Debian git-svn-id: file:///home/lennart/svn/public/avahi/trunk@161 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe --- INSTALL | 5 +- initscript/Debian/Makefile.am | 9 ++- initscript/Debian/avahi-dnsconfd | 121 +++++++++++++++++++++++++++++++ 3 files changed, 133 insertions(+), 2 deletions(-) create mode 100755 initscript/Debian/avahi-dnsconfd diff --git a/INSTALL b/INSTALL index 635e577..f47c848 100644 --- a/INSTALL +++ b/INSTALL @@ -20,8 +20,11 @@ need to be run is root. *** Note *** -On other linux distributions, the dbus initscript may be different (eg redhat +- On other linux distributions, the dbus initscript may be different (eg redhat /etc/init.d/messagebus). You need to restart dbus to make it know about /etc/dbus-1/system.d/avahi-dbus.conf . +- To automatically start avahi-dnsconfd on Debian base distro: +# update-rc.d avahi-dnsconfd defaults 25 15 + $Id$ diff --git a/initscript/Debian/Makefile.am b/initscript/Debian/Makefile.am index b999171..77b137e 100644 --- a/initscript/Debian/Makefile.am +++ b/initscript/Debian/Makefile.am @@ -1,4 +1,11 @@ dbusinitddir = $(sysconfdir)/dbus-1/event.d dbusinitd_SCRIPTS = 75avahi -EXTRA_DIST = $(dbusinitd_SCRIPTS) +initddir = $(sysconfdir)/init.d +initd_SCRIPTS = avahi-dnsconfd + +#if ENABLE_DBUS +#install-data-local: +# $(LN_S) -f $(initddir)/avahi-daemon \ +# $(sysconfdir)/dbus-1/event.d/75avahi-daemon +#endif diff --git a/initscript/Debian/avahi-dnsconfd b/initscript/Debian/avahi-dnsconfd new file mode 100755 index 0000000..7b2e131 --- /dev/null +++ b/initscript/Debian/avahi-dnsconfd @@ -0,0 +1,121 @@ +#! /bin/sh +# +# avahi-dnsconfd avahi dns configuration daemon +# Daemon for ZeroConf +# +# Authors: +# + +if [ -f /lib/lsb/init-functions ] +then + . /lib/lsb/init-functions +else + # int log_begin_message (char *message) + log_begin_msg () { + if [ -z "$1" ]; then + return 1 + fi + echo " * $@" + } + + # int log_end_message (int exitstatus) + log_end_msg () { + + # If no arguments were passed, return + [ -z "$1" ] && return 1 + + # Only do the fancy stuff if we have an appropriate terminal + # and if /usr is already mounted + TPUT=/usr/bin/tput + EXPR=/usr/bin/expr + if [ -x $TPUT ] && [ -x $EXPR ] && $TPUT hpa 60 >/dev/null 2>&1; then + COLS=`$TPUT cols` + if [ -n "$COLS" ]; then + COL=`$EXPR $COLS - 7` + else + COL=73 + fi + UP=`$TPUT cuu1` + END=`$TPUT hpa $COL` + START=`$TPUT hpa 0` + RED=`$TPUT setaf 1` + NORMAL=`$TPUT op` + if [ $1 -eq 0 ]; then + echo "$UP$END[ ok ]" + else + echo -e "$UP$START $RED*$NORMAL$END[${RED}fail${NORMAL}]" + fi + else + if [ $1 -eq 0 ]; then + echo " ...done." + else + echo " ...fail!" + fi + fi + return $1 + } + +fi + +#set -e + +PATH=/sbin:/bin:/usr/sbin:/usr/bin +DESC="Avahi Dns Config daemon" +NAME="avahi-dnsconfd" +DAEMON=/usr/bin/$NAME + +# Gracefully exit if the package has been removed. +test -x $DAEMON || exit 0 + +# +# Function that starts the daemon/service. +# +d_start() { + $DAEMON -D +} + +# +# Function that stops the daemon/service. +# +d_stop() { + $DAEMON -k || /bin/true +} + +# +# Function that reload the config file for the daemon/service. +# +d_reload() { + $DAEMON -r +} + + +case "$1" in + start) + log_begin_msg "Starting $DESC: $NAME" + d_start + log_end_msg $? + ;; + stop) + log_begin_msg "Stopping $DESC: $NAME" + d_stop + log_end_msg $? + ;; + reload) + log_begin_msg "Reloading config file for $DESC: $NAME" + d_reload + log_end_msg $? + ;; + restart|force-reload) + log_begin_msg "Restarting $DESC: $NAME" + d_stop + sleep 1 + d_start + log_end_msg $? + ;; + *) + echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|reload}" >&2 + exit 1 + ;; +esac + +exit 0 -- 2.39.5