#!/bin/sh

# fix ufsdump

/usr/bin/mv $ROOTDIR/usr/lib/fs/ufs/ufsdump \
$ROOTDIR/usr/lib/fs/ufs/ufsdump.netranfs 2>/dev/null
cat >> $ROOTDIR/usr/lib/fs/ufs/ufsdump << EOF
#!/bin/sh

# we don't want prestoserve to be running while
# ufsdump is being run.

/etc/init.d/prestoserve stop > /dev/null 2>&1

/usr/lib/fs/ufs/ufsdump.netranfs "\$@"
result=\$?

/etc/init.d/prestoserve start > /dev/null 2>&1

# we want to return the exit code of "ufsdump"
exit \$result
EOF

/usr/bin/chmod 6555 $ROOTDIR/usr/lib/fs/ufs/ufsdump
/usr/bin/chgrp tty $ROOTDIR/usr/lib/fs/ufs/ufsdump

#
# fix quotacheck
#
/usr/bin/mv $ROOTDIR/usr/lib/fs/ufs/quotacheck \
$ROOTDIR/usr/lib/fs/ufs/quotacheck.netranfs 2>/dev/null
cat >> $ROOTDIR/usr/lib/fs/ufs/quotacheck << EOF
#!/bin/sh

mntpoints=""
all_fs=0
parallel=0

# we don't want prestoserve to be running while
# quotacheck is being run.

args="\$*"
while getopts apv opt
do
        case \$opt in

        a) all_fs=1;;
        p) parallel=1;;
        v) ;;
        \?) echo "Incorrect options"; exit 2;;

        esac
done
          shift \`expr \$OPTIND - 1\`
          mntpoints="\$*"

if [ X != "X\$mntpoints" ]
then
        /opt/SUNWntrpr/presto -r \$mntpoints
        /usr/sbin/lockfs -w \$mntpoints
        /usr/lib/fs/ufs/quotacheck.netranfs \$args
        result=\$?
        /usr/sbin/lockfs -u \$mntpoints
        /opt/SUNWntrpr/presto -u \$mntpoints
        exit \$result
fi

/etc/init.d/prestoserve stop >/dev/null 2>&1
/usr/lib/fs/ufs/quotacheck.netranfs \${args}
result=\$?
exit \$?
EOF

/usr/bin/chmod 555 $ROOTDIR/usr/lib/fs/ufs/quotacheck
/usr/bin/chown bin $ROOTDIR/usr/lib/fs/ufs/quotacheck
/usr/bin/chgrp bin $ROOTDIR/usr/lib/fs/ufs/quotacheck

/usr/bin/echo "\a\nYou must now reboot your machine!\n"
