1#!/usr/bin/env bash 2 3cd "`dirname $0`" 4 5die () { 6 set +x # Turn off printing commands 7 echo "" 8 echo " *** fatal error: $*" 9 exit 1 10} 11 12if [ -z $ANDROID_BUILD_TOP ]; then 13 echo "You need to source and lunch before you can use this script" 14 exit 1 15fi 16 17adb wait-for-device || die 18 19echo "Running form command test. . ." 20sleep 2 21 22# Clobber any existing instance of wpantund 23adb shell killall wpantund 2> /dev/null 24 25# Start wpantund 26echo "+ adb shell wpantund -I wpan5 -s 'system:ot-ncp\ 1' -o Config:Daemon:ExternalNetifManagement 1 &" 27adb shell wpantund -I wpan5 -s 'system:ot-ncp\ 1' -o Config:Daemon:ExternalNetifManagement 1 & 28WPANTUND_PID=$! 29trap "kill -HUP $WPANTUND_PID 2> /dev/null" EXIT INT TERM 30 31# Verify wpantund started properly 32sleep 2 33kill -0 $WPANTUND_PID || die "wpantund failed to start" 34sleep 2 35 36echo "+ adb shell lowpanctl -I wpan5 status" 37adb shell lowpanctl -I wpan5 status || die 38echo "+ adb shell lowpanctl -I wpan5 form blahnet" 39adb shell lowpanctl -I wpan5 form blahnet || die 40echo "+ adb shell lowpanctl -I wpan5 status" 41adb shell lowpanctl -I wpan5 status || die 42echo "+ adb shell ifconfig wpan5" 43adb shell ifconfig wpan5 || die 44echo "+ adb shell dumpsys netd" 45adb shell dumpsys netd || die 46echo "+ adb shell ip -6 rule" 47adb shell ip -6 rule || die 48echo "+ adb shell ip -6 route list table wpan5" 49adb shell ip -6 route list table wpan5 || die 50 51if [ "shell" = "$1" ] 52then 53 echo "+ adb shell" 54 adb shell 55fi 56 57echo "Finished form command test." 58 59