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