#! /bin/bash

# Define targets
DAEMON=iscsid
TOOL=iscsictl
KEXT=iSCSIInitiator.kext
FRAMEWORK=iSCSI.framework
DAEMON_PLIST=com.github.iscsi-osx.iscsid.plist
DAEMON_PLIST_NOEXT=com.github.iscsi-osx.iscsid.plist
MAN_TOOL=iscsictl.8
MAN_DAEMON=iscsid.8

# Define install path
DAEMON_DST=/usr/local/libexec
DAEMON_PLIST_DST=/Library/LaunchDaemons
FRAMEWORK_DST=/Library/Frameworks
TOOL_DST=/usr/local/bin
MAN_DST=/usr/share/man/man8

# Get minor version of the OS
OSX_MINOR_VER=$(sw_vers -productVersion | awk -F '.' '{print $2}')

# Minor version of OS X Mavericks
OSX_MAVERICKS_MINOR_VER="9"

if [ "$OSX_MINOR_VER" -gt "$OSX_MAVERICKS_MINOR_VER" ]; then
    KEXT_DST=/Library/Extensions
else
    KEXT_DST=/System/Library/Extensions
fi

# Stop, unload and remove launch daemon
sudo launchctl stop $DAEMON_PLIST_NOEXT

if [ -f $DAEMON_PLIST_DST/$DAEMON_PLIST ]; then
    sudo launchctl unload $DAEMON_PLIST_DST/$DAEMON_PLIST
fi

sudo rm -f $DAEMON_PLIST_DST/$DAEMON_PLIST
sudo rm -f /usr/sbin/$DAEMON # Old location
sudo rm -f /System/Library/LaunchDaemons/$DAEMON_PLIST # Old location
sudo rm -f $DAEMON_DST/$DAEMON

# Unload & remove kernel extension
if [ -f $KEXT_DST/$KEXT ]; then
    sudo kextunload $KEXT_DST/$KEXT
fi

sudo rm -f -R $KEXT_DST/$KEXT

# Remove user tools
sudo rm -f /usr/bin/$TOOL # Old location
sudo rm -f $TOOL_DST/$TOOL

# Remove man pages
sudo rm -f $MAN_DST/$MAN_TOOL
sudo rm -f $MAN_DST/$MAN_DAEMON

# Remove framework
sudo rm -f -R $FRAMEWORK_DST/$FRAMEWORK

PKG_RSP="$(pkgutil --pkgs=com.github.iscsi-osx.iSCSIInitiator)"

if [ "$PKG_RSP" == "com.github.iscsi-osx.iSCSIInitiator" ]; then
    sudo pkgutil --forget com.github.iscsi-osx.iSCSIInitiator
fi