From 25b3eeb440dbbc14e88e656434acfce324b8e473 Mon Sep 17 00:00:00 2001
From: Rohit Gupta <rohit.gupta@eurecom.fr>
Date: Tue, 1 Dec 2015 19:09:37 +0100
Subject: [PATCH] updated sudo detection

---
 .../autotests/run_exec_autotests.bash         | 24 ++++++++++++++++++-
 1 file changed, 23 insertions(+), 1 deletion(-)

diff --git a/cmake_targets/autotests/run_exec_autotests.bash b/cmake_targets/autotests/run_exec_autotests.bash
index 84d1801adf..7955defa63 100755
--- a/cmake_targets/autotests/run_exec_autotests.bash
+++ b/cmake_targets/autotests/run_exec_autotests.bash
@@ -354,16 +354,20 @@ Options
    This help
 -g | --run-group
    Run test cases in a group. For example, ./run_exec_autotests "0101* 010102"
+-p
+   Use password for logging
 '
 }
 
 function main () {
 RUN_GROUP=0
+SET_PASSWORD=0
+passwd=""
 test_case_group=""
 test_case_group_array=()
 test_case_array=()
 echo_info "Note that the user should be sudoer for executing certain commands, for example loading kernel modules"
-read -s -p "Enter Password: " mypassword
+
 
 until [ -z "$1" ]
   do
@@ -373,6 +377,10 @@ until [ -z "$1" ]
             test_case_group=$2
             echo_info "Will execute test cases only in group $test_case_group"
             shift 2;;
+        -p)
+            SET_PASSWORD=1
+            passwd=$2
+            shift 2;;
         -h | --help)
             print_help
             exit 1;;
@@ -383,6 +391,20 @@ until [ -z "$1" ]
    esac
   done
 
+if [ "$SET_PASSWORD" == "1" ]; then
+   mypassword=$passwd
+else
+   read -s -p "Enter Password: " mypassword
+fi
+
+tmpfile=`mktemp`
+echo \'$passwd\' | sudo -S -v >& $tmpfile
+tstsudo=`cat $tmpfile`
+if [ "$tstsudo" != "" ]; then
+  echo "User might not have sudo privileges. Exiting" 
+fi
+echo "tstsudo = $tstsudo"
+rm -fr $tmpfile
 
 xml_conf="$OPENAIR_DIR/cmake_targets/autotests/test_case_list.xml"
 
-- 
GitLab