#!/bin/bash
ponargs=SBCYAHOODIAL
case "$#" in
	0)
		[ -f /var/run/.internet/ON ] && echo locked on
		[ -f /var/run/.internet/OFF ] && echo locked off
		[ -f /var/run/.internet/markon ] && echo markon requested on
	;;
	1)
		case X"$1" in
			Xon)
				(
					umask 022
					[ -d /var/run/.internet ] ||
						mkdir /var/run/.internet
					>/var/run/.internet/markon
				)
				if [ ! -f /var/run/.internet/OFF ]; then
					/usr/bin/pon $ponargs
				else
					echo request made, presently locked off, use off to cancel request
				fi
			;;
			Xoff)
				2>>/dev/null rm /var/run/.internet/markon
				if [ ! -f /var/run/.internet/ON ]; then
					/usr/bin/poff
				else
					echo request made, presently locked on
				fi
			;;
			XON)
				2>>/dev/null rm /var/run/.internet/ON /var/run/.internet/OFF
				/usr/bin/pon $ponargs
			;;
			XOFF)
				2>>/dev/null rm /var/run/.internet/ON /var/run/.internet/OFF
				if [ ! -f /var/run/.internet/markon ]; then
					/usr/bin/poff
				else
					echo markon has it on
				fi
			;;
			XFORCEON)
				2>>/dev/null rm /var/run/.internet/OFF
				(
					umask 022
					[ -d /var/run/.internet ] ||
						mkdir /var/run/.internet
					>/var/run/.internet/ON
				)
				/usr/bin/pon $ponargs
			;;
			XFORCEOFF)
				2>>/dev/null rm /var/run/.internet/ON
				(
					umask 022
					[ -d /var/run/.internet ] ||
						mkdir /var/run/.internet
					>/var/run/.internet/OFF
				)
				/usr/bin/poff
			;;
			XUNLOCK)
				2>>/dev/null rm /var/run/.internet/ON /var/run/.internet/OFF
				if [ -f /var/run/.internet/markon ]; then
					/usr/bin/pon $ponargs
				fi
			;;
		esac
	;;
	*)
		1>&2 echo "$0: usage: [on|off|ON|OFF|FORCEON|FORCEOFF|UNLOCK]"
		exit 1
	;;
esac
