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
8 HLR_AUC_GW=$DIR/../../hostapd/hlr_auc_gw
10 if [ -z "$LOGDIR" ] ; then
12 LOGDIR="$DIR/logs/$DATE"
14 rm -rf $DIR/logs/current
15 ln -sf $DATE $DIR/logs/current
18 if groups | tr ' ' "\n" | grep -q ^admin$; then
24 if [ "$1" = "concurrent" ]; then
26 CONCURRENT_ARGS="-N -Dnl80211 -ista%d -c $DIR/sta-dummy.conf"
33 if [ "$1" = "valgrind" ]; then
35 VALGRIND_WPAS="valgrind --log-file=$LOGDIR/valgrind-wlan%d"
36 VALGRIND_HAPD="valgrind --log-file=$LOGDIR/valgrind-hostapd"
46 if [ "$1" = "trace" ]; then
54 test -f /proc/modules && sudo modprobe mac80211_hwsim radios=5
55 if [ "$CONCURRENT" = "y" ]; then
56 sudo iw wlan0 interface add sta0 type station
57 sudo iw wlan1 interface add sta1 type station
58 sudo iw wlan2 interface add sta2 type station
61 sudo ifconfig hwsim0 up
62 sudo $WLANTEST -i hwsim0 -n $LOGDIR/hwsim0.pcapng -c -d > $LOGDIR/hwsim0 &
64 sudo $(printf -- "$VALGRIND_WPAS" $i) $WPAS -g /tmp/wpas-wlan$i -G$GROUP -Dnl80211 -iwlan$i -c $DIR/p2p$i.conf \
65 $(printf -- "$CONCURRENT_ARGS" $i) -ddKt$TRACE -f $LOGDIR/log$i &
67 sudo $VALGRIND_HAPD $HAPD -ddKt$TRACE -g /var/run/hostapd-global -G $GROUP -ddKt -f $LOGDIR/hostapd &
70 sudo chown -f $USER $LOGDIR/hwsim0.pcapng $LOGDIR/log* $LOGDIR/hostapd
71 if [ "x$VALGRIND" = "xy" ]; then
72 sudo chown -f $USER $LOGDIR/*valgrind*
75 if [ -x $HLR_AUC_GW ]; then
76 $HLR_AUC_GW -m $DIR/auth_serv/hlr_auc_gw.milenage_db > $LOGDIR/hlr_auc_gw &
79 $HAPD -ddKt $DIR/auth_serv/as.conf > $LOGDIR/auth_serv &
81 # wait for programs to be fully initialized
83 for j in `seq 1 10`; do
84 if $WPACLI -g /tmp/wpas-wlan$i ping | grep -q PONG; then
87 if [ $j = "10" ]; then
88 echo "Could not connect to /tmp/wpas-wlan$i"
95 for j in `seq 1 10`; do
96 if $WPACLI -g /var/run/hostapd-global ping | grep -q PONG; then
99 if [ $j = "10" ]; then
100 echo "Could not connect to /var/run/hostapd-global"