#!/bin/sh

if [ ! -f /sbin/sncfg ] ; then
	exit 1
fi

eval `sncfg mget LanIf USE_ATPROXY`

case "$1" in
	ifup)
		echo -n "[IF] up "
		brctl addif br0 usb0
		ifconfig usb0 0.0.0.0 promisc up
		if [ "$USE_ATPROXY" == "1" ]; then
			/usr/bin/atproxy /dev/ttyGS0 >/tmp/atproxy.log 2>/dev/null &
		else
			/etc/init.d/atcp restart
		fi
	;;
	plugout)
		echo -n "[IF] plugout "
		if [ "$USE_ATPROXY" == "1" ]; then
			killall atproxy
			pkill -s `pidof atproxy.sh`
			ps |grep AUTOCONNECT | grep -v grep | awk '{print "kill -9 "$1}' |sh
			killall modemd_sender
		else
			/etc/init.d/atcp stop
			/etc/init.d/atcp_com1 stop
		fi
	;;
	tocomsncfg)
		echo -n "[To COM Port (SNCFG) "
		# set USB_COMPOSITE to MULTI_SERIAL
		sncfg set USB_COMPOSITE 4
		sncfg commit
	;;
	tocom)
		echo -n "[To COM Port "
		# stop ZTE AT server serice
		#
		# Need ZTE to implement
		# No need to kill zte service


		# start MTK MODEMD service
		#chrt -f 99 /etc/init.d/modemd start
		if [ `cat /sys/devices/virtual/BOOT/BOOT/boot/modem` == "1" ]; then #RNDIS MODEM
		  sleep 3
	    md_fast_radioon
	    ifconfig ccmni0 up >/dev/null 2>/dev/null & 	#DO NOT remove this!! it's for ccmni0 buffer allocation
    fi
    
    if [ `cat /sys/devices/virtual/BOOT/BOOT/boot/modem` == "1" ]; then #RNDIS MODEM
	    sync
	    mount -o remount,ro /
	    chrt -f 99 /sbin/mini_modemd &
	    chrt -f 99 /etc/init.d/modemd start &
    fi

		# add necessary mknod here
		dev=$(cat /proc/devices | grep ttyGS | cut -f0 -d ' ')
		mknod /dev/ttyGS0 c $dev 0
		mknod /dev/ttyGS1 c $dev 1

		if [ "$USE_ATPROXY" == "1" ]; then
			/usr/bin/atproxy /dev/ttyGS0 >/tmp/atproxy.log 2>/dev/null &
			/usr/bin/atproxy /dev/ttyGS1 >/tmp/atproxy_com1.log 2>/dev/null &
		else
			# start MTK ATCP service
			sncfg set ATCP_LISTEN_TYPE 1
			sncfg set ATCP_MODEMD_TARGET_TYPE 23G
			sncfg set ATCP_AT_RESULT_FORMAT V
			sncfg commit
			/etc/init.d/atcp restart
			/etc/init.d/atcp_com1 restart
		fi
	;;
	*)
		echo "Usage: $0 {ifup|plugout|tocomsncfg|tocom}"
		exit 2
	;;
esac

if [ $? = 0 ] ; then
	echo "OK"
	exit 0
else
	echo "FAILED"
	exit 1
fi

