# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# cromo
#
# starts cromo if a GOBI modem has been detected

start on gobi_modem

respawn

# enable cromo
# uid and gid hardcoded in sys-apps/baselayout

pre-start script
	mkdir -p /var/run/cromo
	chown cromo:cromo /var/run/cromo
end script

exec /sbin/minijail --uid=210 --gid=210 /usr/sbin/cromo

#
# post-stop cleans up (resets) any gobi devices that are listed in the
# usb-devices file.  On normal shutdown, gobi-cromo-plugin will empty
# the file and nothing will be reset.  On abnormal termination, the
# file will contain a list of devices which require a reset.
#
post-stop script
	for dev in $(cat /var/run/cromo/usb-devices); do
		VALID='^[[:digit:].:-]\+$'
		if ! echo "$dev" | grep -q "$VALID" ; then
            logger -t "upstart-cromo" "Skipping invalid device $dev"
			continue
		fi
		logger -t "upstart-cromo" "rebooting: $dev"
		echo 0 > /sys/bus/usb/devices/$dev/authorized
		echo 1 > /sys/bus/usb/devices/$dev/authorized
	done
end script
