Add example WPS AP mode UI for wpa_supplicant
This script shows some minimal WPS user interface requirements for mobile AP support with wpa_supplicant. Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
parent
0bc134683e
commit
47662f4017
1 changed files with 78 additions and 0 deletions
78
wpa_supplicant/examples/wps-ap-cli
Executable file
78
wpa_supplicant/examples/wps-ap-cli
Executable file
|
@ -0,0 +1,78 @@
|
|||
#!/bin/sh
|
||||
|
||||
CLI=wpa_cli
|
||||
|
||||
pbc()
|
||||
{
|
||||
echo "Starting PBC mode"
|
||||
echo "Push button on the station within two minutes"
|
||||
if ! $CLI wps_pbc | grep -q OK; then
|
||||
echo "Failed to enable PBC mode"
|
||||
fi
|
||||
}
|
||||
|
||||
enter_pin()
|
||||
{
|
||||
echo "Enter a PIN from a station to be enrolled to the network."
|
||||
read -p "Enrollee PIN: " pin
|
||||
cpin=`$CLI wps_check_pin "$pin" | tail -1`
|
||||
if [ "$cpin" = "FAIL-CHECKSUM" ]; then
|
||||
echo "Checksum digit is not valid"
|
||||
read -p "Do you want to use this PIN (y/n)? " resp
|
||||
case "$resp" in
|
||||
y*)
|
||||
cpin=`echo "$pin" | sed "s/[^1234567890]//g"`
|
||||
;;
|
||||
*)
|
||||
return 1
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
if [ "$cpin" = "FAIL" ]; then
|
||||
echo "Invalid PIN: $pin"
|
||||
return 1
|
||||
fi
|
||||
echo "Enabling Enrollee PIN: $cpin"
|
||||
$CLI wps_pin any "$cpin"
|
||||
}
|
||||
|
||||
show_config()
|
||||
{
|
||||
$CLI status wps
|
||||
}
|
||||
|
||||
main_menu()
|
||||
{
|
||||
echo "WPS AP"
|
||||
echo "------"
|
||||
echo "1: Push button (activate PBC)"
|
||||
echo "2: Enter Enrollee PIN"
|
||||
echo "3: Show current configuration"
|
||||
echo "0: Exit wps-ap-cli"
|
||||
|
||||
read -p "Command: " cmd
|
||||
|
||||
case "$cmd" in
|
||||
1)
|
||||
pbc
|
||||
;;
|
||||
2)
|
||||
enter_pin
|
||||
;;
|
||||
3)
|
||||
show_config
|
||||
;;
|
||||
0)
|
||||
exit 0
|
||||
;;
|
||||
*)
|
||||
echo "Unknown command: $cmd"
|
||||
;;
|
||||
esac
|
||||
|
||||
echo
|
||||
main_menu
|
||||
}
|
||||
|
||||
|
||||
main_menu
|
Loading…
Reference in a new issue