diff options
author | Naresh Kamboju <naresh.kamboju@linaro.org> | 2016-05-31 14:36:59 +0530 |
---|---|---|
committer | Naresh Kamboju <naresh.kamboju@linaro.org> | 2016-05-31 14:36:59 +0530 |
commit | 963f2d6a663ce726ed5b54248a7818e4008ce1b5 (patch) | |
tree | 7f53e3464c5fc951ece31ef9c95ed19401defeff | |
parent | 5fa2dd22acf828d8df530a0d494c11d5d33beb1f (diff) |
ubuntu: wlan-download-test: pre_setup, download and validate
Signed-off-by: Naresh Kamboju <naresh.kamboju@linaro.org>
-rwxr-xr-x | ubuntu/scripts/wlan-download-test.sh | 100 |
1 files changed, 87 insertions, 13 deletions
diff --git a/ubuntu/scripts/wlan-download-test.sh b/ubuntu/scripts/wlan-download-test.sh index 7775752..bf2ce2e 100755 --- a/ubuntu/scripts/wlan-download-test.sh +++ b/ubuntu/scripts/wlan-download-test.sh @@ -28,22 +28,96 @@ URL=$1 MD5SUM_CHECK=$2 OUTPUT_FILE_NAME="output_file" -CURL=`which curl` MD5SUM=`which md5sum` +GET_MD5SUM="" +WLAN_INTERFACE="" +OLD_GATEWAY_IP="" +OLD_GATEWAY_INTERFACE="" +WLAN_GATEWAY_IP="" +WLAN_GATEWAY="" +GET_MD5SUM="" -# Assume wlan is up and running -WLAN=`/sbin/ifconfig | grep wlan | awk '{print $1}'` +pre_setup() { + # print ifconfig to know available interfaces + ifconfig -which curl -if [ $? -eq 0 ] ; then - curl -# --connect-timeout 1800 --interface $WLAN $URL > $OUTPUT_FILE_NAME -fi + # make sure that rp_filter is set to 0 + echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter + echo 0 > /proc/sys/net/ipv4/conf/default/rp_filter +} -# Get md5sum of output_file -GET_MD5SUM=`$MD5SUM $OUTPUT_FILE_NAME | awk '{print $1}'` -echo "GET_MD5SUM = $GET_MD5SUM" -if [ "$MD5SUM_CHECK" = $GET_MD5SUM ] ; then +get_interface_and_ipaddr() { + # Assume eth and wlan are up and running + WLAN_INTERFACE=`/sbin/ifconfig | grep wlan | awk '{print $1}'` + echo wlan interface $WLAN_INTERFACE + + OLD_GATEWAY_IP=`ip route list | grep default |awk '{print $3}'` + echo old gate way ip $OLD_GATEWAY_IP + + OLD_GATEWAY_INTERFACE=`ip route list | grep default |awk '{print $5}'` + echo old gate way ip $OLD_GATEWAY_INTERFACE + + WLAN_GATEWAY_IP=`ip route list | grep wlan |awk '{print $1}' | cut -f1 -d'/'` + echo wlan gateway IP $WLAN_GATEWAY_IP + + WLAN_GATEWAY=`echo $WLAN_GATEWAY_IP | awk -F'.' '{$NF=1; print}' OFS="."` + echo wlan gateway $WLAN_GATEWAY +} + +del_primary_route() { + ip route del default dev $OLD_GATEWAY_INTERFACE via $OLD_GATEWAY_IP +} + +add_wlan_route() { + ip route add default dev $WLAN_INTERFACE via $WLAN_GATEWAY +} + +del_wlan_route() { + ip route del default dev $WLAN_INTERFACE via $WLAN_GATEWAY +} + +set_back_primary_route() { + ip route add default dev $OLD_GATEWAY_INTERFACE via $OLD_GATEWAY_IP +} + +download_via_wlan() { + which curl + if [ $? -eq 0 ] ; then + curl -# --connect-timeout 1800 --interface $WLAN_INTERFACE $URL > $OUTPUT_FILE_NAME + if [ $? -eq 0 ] ; then + echo "curl-file-download=pass" + else + echo "curl-file-download=fail" + fi + else + echo "curl command not found test exit" + exit 1 + fi +} + +validate_check_sum() { + # Get md5sum of output_file + GET_MD5SUM=`$MD5SUM $OUTPUT_FILE_NAME | awk '{print $1}'` + echo "GET_MD5SUM = $GET_MD5SUM" + if [ "$MD5SUM_CHECK" = $GET_MD5SUM ] ; then echo "wlan-download-testcase=pass" -else + else echo "wlan-download-testcase=fail" -fi + fi +} + +# Prerequisite +pre_setup +get_interface_and_ipaddr +del_primary_route +add_wlan_route + +# Running Test +download_via_wlan +validate_check_sum + +# Set back to original state +del_wlan_route +set_back_primary_route + +exit 0 |