aboutsummaryrefslogtreecommitdiff
path: root/wpaconfig
diff options
context:
space:
mode:
Diffstat (limited to 'wpaconfig')
-rw-r--r--wpaconfig52
1 files changed, 52 insertions, 0 deletions
diff --git a/wpaconfig b/wpaconfig
new file mode 100644
index 0000000..418f246
--- /dev/null
+++ b/wpaconfig
@@ -0,0 +1,52 @@
+#!/bin/sh
+
+# wpa_supplicant -i wlp4s0 -c wpa/banagoat.conf
+
+__usage() {
+cat <<EOF
+$0 <interface> nwid "<ssid>" wpakey "<wpa_passwd>"
+OR
+$0 <interface> list
+EOF
+exit 1;
+}
+
+_cfg='network={
+ ssid="%s"
+ scan_ssid=1
+ key_mgmt=WPA-PSK
+ psk="%s"
+}'
+
+_nwid=""
+_wpakey=""
+
+# Can and probably will be overridden
+# _if="$(ip link | awk '/^[0-9]+.*wl/{print $2}' | sed -e's/:$//' | tr -d '\n')"
+[ -z "$1" ] && __usage
+_if="$1" ; shift
+
+if [ "$1" = "list" ] ; then
+ iw "$_if" scan | awk '/SSID:/{$1="";print $0}' | sed -ne's/^ //p'
+ exit 0;
+fi
+
+_temp="$(mktemp)"
+
+while [ $# -gt 0 ] ; do case $1 in
+ nwid) _nwid="$2"; shift; shift ;;
+ wpakey) _wpakey="$2"; shift; shift ;;
+ *) __usage ;;
+esac ; done
+
+[ -z "$_nwid" ] && __usage
+[ -z "$_wpakey" ] && __usage
+
+# Write the config
+printf "$_cfg" "$_nwid" "$_wpakey" > "$_temp"
+
+
+tmux new-session -s wpa wpa_supplicant -i "$_if" -c "$_temp" \;\
+ new-window busybox udhcpc -i "$_if" -f
+
+