]> arthur.barton.de Git - netatalk.git/blobdiff - distrib/initscripts/rc.atalk.redhat.tmpl
Naming issues. From HAT.
[netatalk.git] / distrib / initscripts / rc.atalk.redhat.tmpl
index 809c9dc3997e776cad00d48d47ce90ce1b62186c..b4fd785e0253f294a72dac7834e44ebc0027d42d 100644 (file)
@@ -1,11 +1,11 @@
 #! /bin/sh
-# chkconfig: 345 91 35
-# description: This package enables Linux to talk to Macintosh
-#              computers via the AppleTalk networking protocol and 
-#              provides printer, file sharing, and AppleTalk routing 
-#              services.   
+# chkconfig: - 91 35
+# description: This package is an implementation of "AFP over TCP"
+#              and provides printer, file sharing, and routing 
+#              services via legacy AppleTalk networking protocol.
 #
-# AppleTalk daemons. Make sure not to start atalkd in the background:
+# Netatalk daemons.
+# If you use AppleTalk, Make sure not to start atalkd in the background:
 # its data structures must have time to stablize before running the
 # other processes.
 
@@ -19,63 +19,102 @@ ATALK_SBIN=:SBINDIR:
 # Source networking configuration.
 . /etc/sysconfig/network
 
-# Quickly probe for appletalk and warn if we can't find it
-/sbin/modprobe appletalk || echo "[could not load appletalk module]"
+if [ ! -x ${ATALK_SBIN}/atalkd ]; then
+     # Quickly probe for appletalk and warn if we can't find it
+     #/sbin/modprobe appletalk || echo "[could not load appletalk module]"
+     # Check for IP Encapsulation support
+     #/sbin/modprobe ipddp || echo "[could not load IP encapsulation]"
+     echo "[${ATALK_SBIN}/atalkd not found.  Did it compile?]";
+     exit 0;
+fi
 
-# Check for IP Encapsulation support
-#/sbin/modprobe ipddp || echo "[could not load IP encapsulation]"
-
-test -x ${ATALK_SBIN}/atalkd || exit 0
-
-test -f ${ATALK_CONF_DIR}/netatalk.conf || exit 0
+if [ ! -f ${ATALK_CONF_DIR}/netatalk.conf ]; then
+     echo "[${ATALK_CONF_DIR}/netatalk.conf not found]";
+     exit 0;
+fi
 
 # read in netatalk configuration
 . ${ATALK_CONF_DIR}/netatalk.conf
 
 # Check that networking is up.
-[ ${NETWORKING} = "no" ] && exit 0
+if [ ${NETWORKING} = "no" ]; then
+     echo "[Network isn't started]"; 
+     exit 0;
+fi
 
 # initialize return values
 RETVAL=1
 RETVAL_ATALKD=0
 RETVAL_PAPD=0
+RETVAL_CNID_METAD=0
 RETVAL_AFPD=0
 
 # startup code for everything
 atalk_startup() {
     if [ x"${ATALKD_RUN}" != x"no" ]; then 
+       echo -n "  Starting atalkd:"
        daemon ${ATALK_SBIN}/atalkd
        RETVAL_ATALKD=$?
+       echo
 
        if [ -x ${ATALK_BIN}/nbprgstr ]; then   
-           ${ATALK_BIN}/nbprgstr -p 4 "${ATALK_NAME}:Workstation${ATALK_ZONE}"
-           ${ATALK_BIN}/nbprgstr -p 4 "${ATALK_NAME}:netatalk${ATALK_ZONE}"
+           action "  Registering ${ATALK_NAME}:Workstation${ATALK_ZONE}:" ${ATALK_BIN}/nbprgstr -p 4 \"${ATALK_NAME}:Workstation${ATALK_ZONE}\"
+           action "  Registering ${ATALK_NAME}:netatalk${ATALK_ZONE}:" ${ATALK_BIN}/nbprgstr -p 4 \"${ATALK_NAME}:netatalk${ATALK_ZONE}\"
        fi      
 
        if [ x"${PAPD_RUN}" = x"yes"  -a -x ${ATALK_SBIN}/papd ]; then
+           echo -n "  Starting papd:"
            daemon ${ATALK_SBIN}/papd
            RETVAL_PAPD=$?
+           echo
        fi
 
        # check for timelord in bin directory
-       if [ -x ${ATALK_BIN}/timelord ]; then
+       if [ x"${TIMELORD_RUN}" = x"yes"  -a -x ${ATALK_BIN}/timelord ]; then
+           echo -n "  Starting timelord"
            daemon ${ATALK_BIN}/timelord
+           echo
        fi
 
        # check for timelord in sbin directory
-       if [ -x ${ATALK_SBIN}/timelord ]; then
+       if [ x"${TIMELORD_RUN}" = x"yes"  -a -x ${ATALK_SBIN}/timelord ]; then
+           echo -n "  Starting timelord"
            daemon ${ATALK_SBIN}/timelord
+           echo
+       fi
+
+       # check for a2boot in bin directory
+       if [ x"${A2BOOT_RUN}" = x"yes"  -a -x ${ATALK_BIN}/a2boot ]; then
+           echo -n "  Starting a2boot"
+           daemon ${ATALK_BIN}/a2boot
+           echo
        fi
 
+       # check for a2boot in sbin directory
+       if [ x"${A2BOOT_RUN}" = x"yes"  -a -x ${ATALK_SBIN}/a2boot ]; then
+           echo -n "  Starting a2boot"
+           daemon ${ATALK_SBIN}/a2boot
+           echo
+       fi
+
+    fi
+
+    if [ x"${CNID_METAD_RUN}" = x"yes" -a -x ${ATALK_SBIN}/cnid_metad ] ; then
+           echo -n "  Starting cnid_metad:"
+        daemon ${ATALK_SBIN}/cnid_metad $CNID_CONFIG
+           RETVAL_CNID_METAD=$?
+           echo
     fi
 
     if [ x"${AFPD_RUN}" = x"yes" -a -x ${ATALK_SBIN}/afpd ] ; then
+           echo -n "  Starting afpd:"
            daemon ${ATALK_SBIN}/afpd ${AFPD_UAMLIST} -g ${AFPD_GUEST} \
-               -c ${AFPD_MAX_CLIENTS} -n "${ATALK_NAME}${ATALK_ZONE}"
+               -c ${AFPD_MAX_CLIENTS} -n \"${ATALK_NAME}${ATALK_ZONE}\"
            RETVAL_AFPD=$?
+           echo
     fi
 
-    if [ $RETVAL_ATALKD -eq 0 -a $RETVAL_PAPD -eq 0 -a $RETVAL_AFPD -eq 0 ]; then
+    if [ $RETVAL_ATALKD -eq 0 -a $RETVAL_PAPD -eq 0 -a $RETVAL_CNID_METAD -eq 0 -a $RETVAL_AFPD -eq 0 ]; then
         RETVAL=0
        touch /var/lock/subsys/atalk || RETVAL=1
     fi
@@ -83,47 +122,79 @@ atalk_startup() {
 
 case "$1" in
 'start')
-       echo -n 'Starting AppleTalk services: '
+       echo -n 'Starting Netatalk services: '
        if [ x"${ATALK_BGROUND}" = x"yes" ]; then 
            echo -n "(backgrounded)"
            atalk_startup >& /dev/null &
        else
+           echo
            atalk_startup
        fi
        echo 
        ;;
 'stop')
-       echo -n 'Shutting down AppleTalk services: '
+       echo 'Shutting down Netatalk services: '
        if [ x"${ATALKD_RUN}" != x"no" ]; then
            if [ x"${PAPD_RUN}" = x"yes" -a -x ${ATALK_SBIN}/papd ]; then
+               echo -n "  Stopping papd:"
                killproc papd
                RETVAL_PAPD=$?
+               echo
            fi
 
             # checking for timelord in bin directory
-           if [ -x ${ATALK_BIN}/timelord ]; then
+           if [ x"${TIMELORD_RUN}" = x"yes" -a -x ${ATALK_BIN}/timelord ]; then
+               echo -n "  Stopping timelord:"
                killproc timelord
+               echo
            fi
 
             # checking for timelord in sbin directory
-           if [ -x ${ATALK_SBIN}/timelord ]; then
+           if [ x"${TIMELORD_RUN}" = x"yes" -a -x ${ATALK_SBIN}/timelord ]; then
+               echo -n "  Stopping timelord:"
                killproc timelord
+               echo
+           fi
+
+            # checking for a2boot in bin directory
+           if [ x"${A2BOOT_RUN}" = x"yes" -a -x ${ATALK_BIN}/a2boot ]; then
+               echo -n "  Stopping a2boot:"
+               killproc a2boot
+               echo
            fi
 
-           ${ATALK_BIN}/nbpunrgstr "${ATALK_NAME}:Workstation${ATALK_ZONE}"
-           ${ATALK_BIN}/nbpunrgstr "${ATALK_NAME}:netatalk${ATALK_ZONE}"
+            # checking for a2boot in sbin directory
+           if [ x"${A2BOOT_RUN}" = x"yes" -a -x ${ATALK_SBIN}/a2boot ]; then
+               echo -n "  Stopping a2boot:"
+               killproc a2boot
+               echo
+           fi
+
+           action "  Unregistering ${ATALK_NAME}:Workstation${ATALK_ZONE}:" ${ATALK_BIN}/nbpunrgstr \"${ATALK_NAME}:Workstation${ATALK_ZONE}\"
+           action "  Unregistering ${ATALK_NAME}:netatalk${ATALK_ZONE}:" ${ATALK_BIN}/nbpunrgstr \"${ATALK_NAME}:netatalk${ATALK_ZONE}\"
 
            # kill atalkd last, since without it the plumbing goes away.
            if [ -x ${ATALK_SBIN}/atalkd ]; then
+               echo -n "  Stopping atalk:"
                killproc atalkd
                RETVAL_ATALKD=$?
+               echo
            fi
        fi
 
        # kill this separately as we also do AFP/tcp
        if [ x"${AFPD_RUN}" = x"yes" -a -x ${ATALK_SBIN}/afpd ]; then
+           echo -n "  Stopping afpd:"
            killproc afpd
            RETVAL_AFPD=$?
+           echo
+       fi
+
+       if [ x"${CNID_METAD_RUN}" = x"yes" -a -x ${ATALK_SBIN}/cnid_metad ]; then
+           echo -n "  Stopping cnid_metad:"
+           killproc cnid_metad
+           RETVAL_CNID_METAD=$?
+           echo
        fi
 
        if [ $RETVAL_ATALKD -eq 0 -a $RETVAL_PAPD -eq 0 -a $RETVAL_AFPD -eq 0 ] ; then