#!/bin/sh
# preinst script for scst
#
# see: dh_installdeb(1)

set -e

# summary of how this script can be called:
#        * <new-preinst> `install'
#        * <new-preinst> `install' <old-version>
#        * <new-preinst> `upgrade' <old-version>
#        * <old-preinst> `abort-upgrade' <new-version>
# for details, see https://www.debian.org/doc/debian-policy/ or
# the debian-policy package


case "$1" in
    install)
	# Remove any existing ib_srpt.ko kernel modules
	find "/lib/modules/$(uname -r)" -name ib_srpt.ko -exec rm {} \;
	# Remove files installed by "make install"
	rm -f /usr/local/man/man5/iscsi-scstd.conf.5
	rm -f /usr/local/man/man8/iscsi-scst-adm.8
	rm -f /usr/local/man/man8/iscsi-scstd.8
	rm -f /usr/local/sbin/iscsi-scst-adm
	rm -f /usr/local/sbin/iscsi-scstd
	rm -rf /usr/local/include/scst
	;;

    upgrade)
        ;;

    abort-upgrade)
        ;;

    *)
        echo "preinst called with unknown argument \`$1'" >&2
        exit 1
        ;;
esac

# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.

#DEBHELPER#

exit 0
