stop-wifi.sh 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #!/bin/sh
  2. if pidof wpa_supplicant hostapd > /dev/null; then
  3. RUNNING=yes
  4. else
  5. RUNNING=no
  6. fi
  7. sudo killall -q hostapd
  8. sudo killall -q wpa_supplicant
  9. for i in `pidof valgrind.bin`; do
  10. if ps $i | grep -q -E "wpa_supplicant|hostapd"; then
  11. sudo kill $i
  12. fi
  13. done
  14. sudo killall -q wlantest
  15. sudo killall -q tcpdump
  16. if grep -q hwsim0 /proc/net/dev; then
  17. sudo ifconfig hwsim0 down
  18. fi
  19. if [ "$RUNNING" = "yes" ]; then
  20. # give some time for hostapd and wpa_supplicant to complete deinit
  21. sleep 2
  22. fi
  23. if pidof wpa_supplicant hostapd > /dev/null; then
  24. echo "wpa_supplicant/hostapd did not exit - try to force them to die"
  25. sudo killall -9 -q hostapd
  26. sudo killall -9 -q wpa_supplicant
  27. sleep 5
  28. fi
  29. for i in `pidof valgrind.bin`; do
  30. if ps $i | grep -q -E "wpa_supplicant|hostapd"; then
  31. echo "wpa_supplicant/hostapd(valgrind) did not exit - try to force it to die"
  32. sudo kill -9 $i
  33. fi
  34. done
  35. if grep -q mac80211_hwsim /proc/modules ; then
  36. sudo rmmod mac80211_hwsim
  37. # wait at the end to avoid issues starting something new immediately after
  38. # this script returns
  39. sleep 1
  40. fi