blob: 7c6b0aa8e892deb6e9c2bf3acf1bb493bc25766f [file] [log] [blame]
Dmitry Shmidt1f69aa52012-01-24 16:10:04 -08001#!/bin/sh
2
3CLI=wpa_cli
4
5pbc()
6{
7 echo "Starting PBC mode"
8 echo "Push button on the station within two minutes"
9 if ! $CLI wps_pbc | grep -q OK; then
10 echo "Failed to enable PBC mode"
11 fi
12}
13
14enter_pin()
15{
16 echo "Enter a PIN from a station to be enrolled to the network."
17 read -p "Enrollee PIN: " pin
18 cpin=`$CLI wps_check_pin "$pin" | tail -1`
19 if [ "$cpin" = "FAIL-CHECKSUM" ]; then
20 echo "Checksum digit is not valid"
21 read -p "Do you want to use this PIN (y/n)? " resp
22 case "$resp" in
23 y*)
24 cpin=`echo "$pin" | sed "s/[^1234567890]//g"`
25 ;;
26 *)
27 return 1
28 ;;
29 esac
30 fi
31 if [ "$cpin" = "FAIL" ]; then
32 echo "Invalid PIN: $pin"
33 return 1
34 fi
35 echo "Enabling Enrollee PIN: $cpin"
36 $CLI wps_pin any "$cpin"
37}
38
39show_config()
40{
41 $CLI status wps
42}
43
44main_menu()
45{
46 echo "WPS AP"
47 echo "------"
48 echo "1: Push button (activate PBC)"
49 echo "2: Enter Enrollee PIN"
50 echo "3: Show current configuration"
51 echo "0: Exit wps-ap-cli"
52
53 read -p "Command: " cmd
54
55 case "$cmd" in
56 1)
57 pbc
58 ;;
59 2)
60 enter_pin
61 ;;
62 3)
63 show_config
64 ;;
65 0)
66 exit 0
67 ;;
68 *)
69 echo "Unknown command: $cmd"
70 ;;
71 esac
72
73 echo
74 main_menu
75}
76
77
78main_menu