1 #!/bin/sh
 2 
 3 # wpa_supplicant -i wlp4s0 -c wpa/banagoat.conf
 4 
 5 __usage() {
 6 cat <<EOF
 7 $0 <interface> nwid "<ssid>" wpakey "<wpa_passwd>"
 8 OR
 9 $0 <interface> list
10 EOF
11 exit 1;
12 }
13 
14 _cfg='network={
15     ssid="%s"
16     scan_ssid=1
17     key_mgmt=WPA-PSK
18     psk="%s"
19 }'
20 
21 _nwid=""
22 _wpakey=""
23 
24 # Can and probably will be overridden
25 # _if="$(ip link | awk '/^[0-9]+.*wl/{print $2}' | sed -e's/:$//' | tr -d '\n')"
26 [ -z "$1" ] && __usage
27 _if="$1" ; shift
28 
29 if [ "$1" = "list" ] ; then
30     iw "$_if" scan | awk '/SSID:/{$1="";print $0}' | sed -ne's/^ //p'
31     exit 0;
32 fi
33 
34 _temp="$(mktemp)"
35 
36 while [ $# -gt 0 ] ; do case $1 in
37     nwid) _nwid="$2"; shift; shift ;;
38     wpakey) _wpakey="$2"; shift; shift ;;
39     *) __usage ;;
40 esac ; done
41 
42 [ -z "$_nwid" ]     && __usage
43 [ -z "$_wpakey" ]   && __usage
44 
45 # Write the config
46 printf "$_cfg" "$_nwid" "$_wpakey" > "$_temp"
47 
48 
49 tmux new-session -s wpa wpa_supplicant -i "$_if" -c "$_temp" \;\
50     new-window busybox udhcpc -i "$_if" -f
51 
52