3 DIR="$( cd "$( dirname "$0" )" && pwd )"
4 WPAS=$DIR/../../wpa_supplicant/wpa_supplicant
5 WPACLI=$DIR/../../wpa_supplicant/wpa_cli
6 HAPD=$DIR/../../hostapd/hostapd
7 WLANTEST=$DIR/../../wlantest/wlantest
9 if groups | tr ' ' "\n" | grep -q ^admin$; then
15 if [ "$1" = "concurrent" ]; then
22 if [ "$1" = "valgrind" ]; then
29 if [ "$1" = "trace" ]; then
37 sudo modprobe mac80211_hwsim radios=5
38 if [ "$CONCURRENT" = "y" ]; then
39 sudo iw wlan0 interface add sta0 type station
40 sudo iw wlan1 interface add sta1 type station
41 sudo iw wlan2 interface add sta2 type station
45 sudo ifconfig hwsim0 up
46 sudo $WLANTEST -i hwsim0 -c -d > $DIR/logs/$DATE-hwsim0 &
47 sudo tcpdump -ni hwsim0 -s 2500 -w $DIR/logs/$DATE-hwsim0.dump > $DIR/logs/$DATE-tcpdump 2>&1 &
48 if [ "$VALGRIND" = "y" ]; then
51 if [ "$CONCURRENT" = "y" ]; then
52 sudo valgrind --log-file=$DIR/logs/$DATE-valgrind-wlan$i $WPAS -g /tmp/wpas-wlan$i -G$GROUP -Dnl80211 -iwlan$i -c $DIR/p2p$i.conf -N -Dnl80211 -ista$i -c $DIR/sta-dummy.conf -ddKt$TRACE > $DIR/logs/$DATE-log$i &
54 sudo valgrind --log-file=$DIR/logs/$DATE-valgrind-wlan$i $WPAS -g /tmp/wpas-wlan$i -G$GROUP -Dnl80211 -iwlan$i -c $DIR/p2p$i.conf -ddKt$TRACE > $DIR/logs/$DATE-log$i &
58 sudo valgrind --log-file=$DIR/logs/$DATE-valgrind-hostapd $HAPD -ddKt -g /var/run/hostapd-global -G $GROUP -ddKt > $DIR/logs/$DATE-hostapd &
61 if [ "$CONCURRENT" = "y" ]; then
62 sudo $WPAS -g /tmp/wpas-wlan$i -G$GROUP -Dnl80211 -iwlan$i -c $DIR/p2p$i.conf -N -Dnl80211 -ista$i -c $DIR/sta-dummy.conf -ddKt$TRACE > $DIR/logs/$DATE-log$i &
64 sudo $WPAS -g /tmp/wpas-wlan$i -G$GROUP -Dnl80211 -iwlan$i -c $DIR/p2p$i.conf -ddKt$TRACE > $DIR/logs/$DATE-log$i &
67 sudo $HAPD -ddKt -g /var/run/hostapd-global -G $GROUP -ddKt > $DIR/logs/$DATE-hostapd &
70 sudo chown $USER $DIR/logs/$DATE-hwsim0.dump
71 if [ "x$VALGRIND" = "xy" ]; then
72 sudo chown $USER $DIR/logs/$DATE-*valgrind*
75 # wait for programs to be fully initialized
77 for j in `seq 1 10`; do
78 if $WPACLI -g /tmp/wpas-wlan$i ping | grep -q PONG; then
81 if [ $j = "10" ]; then
82 echo "Could not connect to /tmp/wpas-wlan$i"
89 for j in `seq 1 10`; do
90 if $WPACLI -g /var/run/hostapd-global ping | grep -q PONG; then
93 if [ $j = "10" ]; then
94 echo "Could not connect to /var/run/hostapd-global"