#!/bin/sh WPA_FILE=/etc/wireless.conf WPA_TEMP=/tmp/wpa_supplicant.conf if [ -e "$WPA_FILE" ]; then WPA_SSID=$(sed -n "1p" $WPA_FILE) WPA_PASS=$(sed -n "2p" $WPA_FILE) WPA_MODE=$(sed -n "3p" $WPA_FILE) fi if [ -z "$WPA_SSID" ] || [ -z "$WPA_PASS" ] || [ "$WPA_MODE" != "client" ]; then WPA_SSID=OpenIPC WPA_PASS=12345678 WPA_MODE=server rm -f "$WPA_FILE" fi case "$PHASE" in pre-up) /etc/network/adapter wpa_passphrase "$WPA_SSID" "$WPA_PASS" > $WPA_TEMP [ "$WPA_MODE" = "client" ] && sed -i '2i \\tscan_ssid=1' $WPA_TEMP [ "$WPA_MODE" = "server" ] && sed -i '2i \\tmode=2' $WPA_TEMP exit 0 ;; post-up) wpa_supplicant -B -i wlan0 -c $WPA_TEMP [ "$WPA_MODE" = "server" ] && udhcpd exit 0 ;; post-down) killall -q udhcpd killall -q wpa_supplicant exit 0 ;; esac case "$1" in connect) ifdown wlan0 ifup wlan0 ;; reset) rm -f "$WPA_FILE" ;; setup) if [ -z "$2" ] || [ -z "$3" ]; then echo wireless setup [SSID] [PASS] exit 0 fi rm -f "$WPA_FILE" echo "$2" >> "$WPA_FILE" echo "$3" >> "$WPA_FILE" echo "client" >> "$WPA_FILE" echo SSID: "$2" echo PASS: "$3" ;; show) echo SSID: "$WPA_SSID" echo PASS: "$WPA_PASS" ;; *) echo wireless connect echo wireless reset echo wireless setup echo wireless show ;; esac