#!/bin/sh
#
# --- ROCK-COPYRIGHT-NOTE-BEGIN ---
# 
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
# Please add additional copyright information _after_ the line containing
# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by
# the ./scripts/Create-CopyPatch script. Do not edit this copyright text!
# 
# ROCK Linux: rock-src/package/base/autofs/autofs.init
# ROCK Linux is Copyright (C) 1998 - 2005 Clifford Wolf
# 
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version. A copy of the GNU General Public
# License can be found at Documentation/COPYING.
# 
# Many people helped and are helping developing ROCK Linux. Please
# have a look at http://www.rocklinux.org/ and the Documentation/TEAM
# file for details.
# 
# --- ROCK-COPYRIGHT-NOTE-END ---
#
# Desc: Kernel Automounter Daemon
# Runlevel: 74 rcX
#

PATH=/sbin:/usr/sbin:/bin:/usr/bin
export PATH

# We can add local options here
# e.g. localoptions='rsize=8192,wsize=8192'
#
localoptions=''

function getmounts()
{
  if [ -f /etc/auto.master ]
  then
    cat /etc/auto.master | sed -e '/^#/d' -e '/^$/d'| (
        while read dir map options
        do
            if [ ! -z "$dir" -a ! -z "$map" \
                        -a "$(echo "$map" | cut -c1)" != "-" ]
            then
                map=$(echo "/etc/$map" | sed -e 's:^/etc//:/:')
                options=$(echo "$options" | sed -e 's/\(^\|[ \t]\)-/\1/g')
                if [ -x $map ]; then
                    echo "automount $dir program $map $options $localoptions"
                elif [ -f $map ]; then
                    echo "automount $dir file $map $options $localoptions"
                else
                    echo "automount $dir $(basename $map) $options $localoptions"
                fi
            fi
        done
    )
  fi
}

function status()
{
        echo "Configured Mount Points:"
        echo "------------------------"
        getmounts
        echo ""
        echo "Active Mount Points:"
        echo "--------------------"
        ps ax|grep "[0-9]:[0-9][0-9] automount " | (
                while read pid tt stat time command; do echo $command; done
        )
}

main_begin

    block_begin(start, `Starting automounter.')
	check(`getmounts | sh -e')
    block_end

    block_begin(stop, `Stopping automounter.')
	check(`killall automount')
	if sleep 1 ; [ "$(pidof /usr/sbin/automount)" ] ; then
		check(`killall -9 automount')
	fi
	if sleep 1 ; [ "$(pidof /usr/sbin/automount)" ] ; then
		echo "Not able to stop processes: $(pidof /usr/sbin/automount)"
IN		error=1
	fi
    block_end

    block_begin(status)
        status
    block_end

main_end