# $Id: qfs_prebackout,v 1.3 2002/12/03 16:38:51 hm129959 Exp $
err_code=1

#   Check for mounted samfs file systems.

/usr/sbin/mount -p | /usr/bin/awk '{print $4}' | /usr/bin/grep samfs > /dev/null
if [ $? = 0 ]; then
    echo " "
    echo "--> Before removing this package, you must unmount each"
    echo "--> QFS filesystem."
    echo " "
    exit 1
fi

echo " "
STAT=0


sed "/sf:23:respawn/d" /etc/inittab > /etc/inittab.tmp
if [ $? = 0 ]; then
    mv /etc/inittab.tmp /etc/inittab
    chmod 644 /etc/inittab
fi
chmod -x /usr/lib/fs/samfs/sam-fsd
FSDPID=`/bin/ps -e | /usr/bin/grep sam-fsd | /usr/bin/grep -v grep | /usr/bin/cut -c1-6`
if [ -n "$FSDPID" ]; then
	kill -TERM $FSDPID
fi

#
#       The samsys module is automatically unloaded when samfs unloads.
#
for SAMTYPE in samfs
do
	modid=`/usr/sbin/modinfo | /usr/bin/grep $SAMTYPE | head -1 | cut -c0-4`
	if [ "$modid" -ne "" ] ; then
		echo "... unloading $SAMTYPE - module $modid"
		/usr/sbin/modunload -i $modid  ||  {
    		sleep 2
			echo "... unloading $SAMTYPE - module $modid (2nd attempt)"
			/usr/sbin/modunload -i $modid  ||  {
				sleep 2
				echo "... unloading $SAMTYPE - module $modid (3rd attempt)"
				/usr/sbin/modunload -i $modid  ||  {
					echo "    module $modid - $SAMTYPE" 
					echo " "
					STAT=1
				}
			}
		}
	fi
done
echo " "

if [ "$STAT" != 0 ] ; then
	echo " "
	echo "--> Before removing this package, you must unmount each"
	echo "--> QFS filesystem."
	echo " "
	exit 1
fi

/bin/rm -f /opt/SUNWsamfs/man/windex

exit 0

