wps-ap-cli revision 252190
1252190Srpaulo#!/bin/sh 2252190Srpaulo 3252190SrpauloCLI=wpa_cli 4252190Srpaulo 5252190Srpaulopbc() 6252190Srpaulo{ 7252190Srpaulo echo "Starting PBC mode" 8252190Srpaulo echo "Push button on the station within two minutes" 9252190Srpaulo if ! $CLI wps_pbc | grep -q OK; then 10252190Srpaulo echo "Failed to enable PBC mode" 11252190Srpaulo fi 12252190Srpaulo} 13252190Srpaulo 14252190Srpauloenter_pin() 15252190Srpaulo{ 16252190Srpaulo echo "Enter a PIN from a station to be enrolled to the network." 17252190Srpaulo read -p "Enrollee PIN: " pin 18252190Srpaulo cpin=`$CLI wps_check_pin "$pin" | tail -1` 19252190Srpaulo if [ "$cpin" = "FAIL-CHECKSUM" ]; then 20252190Srpaulo echo "Checksum digit is not valid" 21252190Srpaulo read -p "Do you want to use this PIN (y/n)? " resp 22252190Srpaulo case "$resp" in 23252190Srpaulo y*) 24252190Srpaulo cpin=`echo "$pin" | sed "s/[^1234567890]//g"` 25252190Srpaulo ;; 26252190Srpaulo *) 27252190Srpaulo return 1 28252190Srpaulo ;; 29252190Srpaulo esac 30252190Srpaulo fi 31252190Srpaulo if [ "$cpin" = "FAIL" ]; then 32252190Srpaulo echo "Invalid PIN: $pin" 33252190Srpaulo return 1 34252190Srpaulo fi 35252190Srpaulo echo "Enabling Enrollee PIN: $cpin" 36252190Srpaulo $CLI wps_pin any "$cpin" 37252190Srpaulo} 38252190Srpaulo 39252190Srpauloshow_config() 40252190Srpaulo{ 41252190Srpaulo $CLI status wps 42252190Srpaulo} 43252190Srpaulo 44252190Srpaulomain_menu() 45252190Srpaulo{ 46252190Srpaulo echo "WPS AP" 47252190Srpaulo echo "------" 48252190Srpaulo echo "1: Push button (activate PBC)" 49252190Srpaulo echo "2: Enter Enrollee PIN" 50252190Srpaulo echo "3: Show current configuration" 51252190Srpaulo echo "0: Exit wps-ap-cli" 52252190Srpaulo 53252190Srpaulo read -p "Command: " cmd 54252190Srpaulo 55252190Srpaulo case "$cmd" in 56252190Srpaulo 1) 57252190Srpaulo pbc 58252190Srpaulo ;; 59252190Srpaulo 2) 60252190Srpaulo enter_pin 61252190Srpaulo ;; 62252190Srpaulo 3) 63252190Srpaulo show_config 64252190Srpaulo ;; 65252190Srpaulo 0) 66252190Srpaulo exit 0 67252190Srpaulo ;; 68252190Srpaulo *) 69252190Srpaulo echo "Unknown command: $cmd" 70252190Srpaulo ;; 71252190Srpaulo esac 72252190Srpaulo 73252190Srpaulo echo 74252190Srpaulo main_menu 75252190Srpaulo} 76252190Srpaulo 77252190Srpaulo 78252190Srpaulomain_menu 79