#!/bin/sh

VERSION="1.02";
CHECKURL="http://dj-bri-t.net/dev/ropatch"

clear;

echo "╔===========================================╗"
echo "║ heRO Mac OS X Firewall Patcher and Booter ║"
echo "║               Version $VERSION                ║"
echo "╚===========================================╝\n"

echo "Checking for updates...";

LATESTVERSION="$(wget -q --no-cache -O - $CHECKURL/VERSION)"

if [ $? -gt 0 ];
then
	echo "WARNING: unable to contact update server.";
else
	if [ "$(echo $VERSION \< $LATESTVERSION | bc)" -gt "0" ];
		then
		echo "Getting latest version...";
		wget -q --no-cache -O "$(cd $(dirname $0); pwd -P)/.$(basename $0)" "$CHECKURL/ropatch-$LATESTVERSION.sh";
		if [ $? -eq 0 ];
			then
			chmod +x "$(cd $(dirname $0); pwd -P)/.$(basename $0)";
			mv "$(cd $(dirname $0); pwd -P)/.$(basename $0)" "$(cd $(dirname $0); pwd -P)/$(basename $0)";
			echo "Latest version downloaded! Running..."
			"$(cd $(dirname $0); pwd -P)/.$(basename $0)";
			exit;
		else
			echo "ERROR: Cannot retrieve latest version. ";
		fi
	else
		echo "Already have the latest version."
	fi
fi
echo

echo "Patching firewall..." &&
sudo killall -9 natd &&
sudo natd -target_address 255.255.255.255 -alias_address 64.15.152.212 -reverse &&
sudo ipfw -q add 6901 divert natd ip from any to any src-port 5122,6122,6901 &&
sudo ipfw -q add 6902 divert natd ip from any to any dst-port 5122,6122,6901 &&

echo "...Done!" &&
sleep 1 &&
echo "Launching Patcher and heRO..." &&

~/Applications/CrossOver/heRO/Patcher.app/Contents/MacOS/CrossOver\ Helper\ with\ Feedback &&

echo "...Done!" &&
sleep 1 &&
echo "Unpatching firewall..." &&

sudo ipfw -q delete 6901 &&
sudo ipfw -q delete 6902 &&

echo "...Done!" &&
sleep 2 &&
exit;
