]> git.pld-linux.org Git - packages/autofs.git/blobdiff - autofs.init
- updated openldap BR/R to 2.4.6
[packages/autofs.git] / autofs.init
index d5f2a564d3ebb6ece59dcab04f1c7fe72cdba7f1..1ba4b2f47404eb7ff2c7b48563c82dd3fc4694de 100644 (file)
 # Check that networking is up.
 if is_yes "${NETWORKING}"; then
        if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
-               # nls "ERROR: Networking is down. %s can't be run." <service>
                msg_network_down automounter
                exit 1
        fi
 else
        exit 0
 fi
-                       
+
 DAEMON=/usr/sbin/automount
 
 #
@@ -50,14 +49,25 @@ if [ -f /etc/autofs/auto.master ]; then
        while read dir map options; do
                if [ ! -z "$dir" -a ! -z "$map" \
                   -a x`echo "$map" | cut -c1` != 'x-' ]; then
+                       maptype=`echo $map | cut -f1 -d:`
+                       if [ "$maptype" = "$map" ]; then
                        map=`echo "/etc/autofs/$map" | sed -e 's:^/etc\/autofs//:/:'`
                        options=`echo "$options" | sed -e 's/\(^\|[ \t]\)-/\1/g'`
                        if [ -x $map ]; then
-                               echo "$DAEMON --timeout $TIMEOUT $dir program $map $options"
+                               echo "$DAEMON --timeout ${TIMEOUT} ${OPTIONS} $dir program $map $options"
                        elif [ -f $map ]; then
-                               echo "$DAEMON --timeout $TIMEOUT $dir file $map $options"
+                               echo "$DAEMON --timeout ${TIMEOUT} ${OPTIONS} $dir file $map $options"
                        else
-                               echo "$DAEMON --timeout $TIMEOUT $dir `basename $map` $options"
+                               echo "$DAEMON --timeout ${TIMEOUT} ${OPTIONS} $dir `basename $map` $options"
+                       fi
+                       else
+                               map=`echo $map | cut -f2- -d:`
+                               if [ ! -z "$map" ]; then
+                                       if [ "$maptype" = "file" ]; then
+                                               map=`echo "/etc/autofs/$map" | sed -e 's:^/etc\/autofs//:/:'`
+                                       fi
+                                       echo "$DAEMON --timeout $TIMEOUT ${OPTIONS} $dir $maptype $map $options"
+                               fi
                        fi
                fi
        done
@@ -67,7 +77,7 @@ fi
 #
 # Check for YellowPage maps to be loaded
 #
-if is_yes $USE_YP; then 
+if is_yes $USE_YP; then
        if [ -e /usr/bin/ypcat ] && \
           [ `ypcat -k auto.master 2>/dev/null | wc -l` -gt 0 ]; then
                ypcat -k auto.master | (
@@ -83,7 +93,7 @@ if is_yes $USE_YP; then
                                options=`echo "$options" | sed -e '
                                  s/--*t\(imeout\)*[ \t]*[0-9][0-9]*//g
                                  s/\(^\|[ \t]\)-/\1/g'`
-                               echo "$DAEMON --timeout $TIMEOUT $mountoptions \
+                               echo "$DAEMON --timeout $TIMEOUT ${OPTIONS} $mountoptions \
                                  $dir yp $map $options"
                        fi
                done
@@ -92,36 +102,42 @@ if is_yes $USE_YP; then
 fi
 }
 
-RETVAL=0
-# See how we were called.
-case "$1" in
-  start)
+start() {
        # Check if the service is already running?
        if [ ! -f /var/lock/subsys/autofs ]; then
                msg_starting automounter
                busy
-               getmounts | sh 
+               getmounts | sh
                RETVAL=$?
                [ $RETVAL -eq 0 ] && ok || fail
                [ $RETVAL -eq 0 ] && touch /var/lock/subsys/autofs
        else
                msg_already_running automounter
        fi
-       ;;
-  stop)
+}
+
+stop() {
        if [ -f /var/lock/subsys/autofs ]; then
                msg_stopping automounter
-               automount -TERM
                killproc automount
                rm -f /var/lock/subsys/autofs >/dev/null 2>&1
        else
                msg_not_running automounter
        fi
+}
+
+RETVAL=0
+# See how we were called.
+case "$1" in
+  start)
+       start
+       ;;
+  stop)
+       stop
        ;;
   restart|force-reload)
-       $0 stop
-       $0 start
-       exit $?
+       stop
+       start
        ;;
   status)
        nls "Configured Mount Points:"
This page took 0.463877 seconds and 4 git commands to generate.