#!/bin/ksh

# Prepatch script to fix incorrectly installed objects due to incorrect
# usage of $BASEDIR.

# Pkgs known to have bad file object paths as a result of previous version
# of this patch being backed out. i.e. /etcSUNWscinf/....
pkgabbrevs="SUNWscor SUNWscinf SUNWscsyb"

for pkg in $pkgabbrevs; do
	if [ -d $ROOTDIR"etc"$pkg ]; then
		[ ! -d $ROOTDIR"etc/opt/"$pkg ] && \
			mkdir -p -m 0755 $ROOTDIR"etc/opt/"$pkg
		cp -p $ROOTDIR"etc"$pkg/* $ROOTDIR"etc/opt/"$pkg || exit 1

		paths=$(find $ROOTDIR"etc"$pkg -print)
		for path in $paths; do
			removef -R $ROOTDIR $pkg $path | \
			while read pathname; do
				[ -n "$pathname" ] && rm -fr $pathname
			done
		done

		removef -R $ROOTDIR -f $pkg || exit 1

		paths=$(find $ROOTDIR"etc/opt/"$pkg -print)
		for path in $paths; do
			[ -d $path ] && continue 
			installf -R $ROOTDIR $pkg $path f 444 root sys || \
				exit 1
		done

		installf -R $ROOTDIR -f $pkg || exit 1
	fi
done
exit 0
