# Common loader functions for WIFI boot scripts # (C)`09 AITNET ltd - Sofia/Bulgaria # # $Id: rc.wifi,v 1.3 2021/03/11 13:59:50 misho Exp $ # setWEP() [key2] [key3] [key4] setWEP() { if [ $# -lt 3 ]; then echo "setWEP() Not enough parameters ..." return 1 fi ARGS="authmode open wepmode on deftxkey $2 wepkey 1:$3" if [ $# -gt 3 ]; then ARGS=$ARGS" wepkey 2:$4" fi if [ $# -gt 4 ]; then ARGS=$ARGS" wepkey 3:$5" fi if [ $# -gt 5 ]; then ARGS=$ARGS" wepkey 4:$6" fi ifconfig $1 $ARGS } # mkhostconf() [wep_key] mkhostconf() { if [ $# -lt 3 ]; then echo "mkhostconf() Not enough parameters ..." return 1 fi case $2 in wpa1|1) WPA_MODE=1 WPA_PAIR=CCMP ;; wpa1_tkip) WPA_MODE=1 WPA_PAIR=TKIP ;; wpa2|2) WPA_MODE=2 WPA_PAIR=CCMP ;; wpa2_tkip) WPA_MODE=2 WPA_PAIR=TKIP ;; wpa|3) WPA_MODE=3 WPA_PAIR=CCMP ;; tsn) if [ -z $4 ]; then echo "mkhostconf() Not enough parameters ..." return 1; else WEP_KEY0=$4 fi WPA_MODE=1 WPA_PAIR=TKIP ;; *) echo "mkhostconf() Unknown WPA mode ..." return 1 ;; esac CONF=/var/tmp/hostapd_$1.conf rm -f $CONF cat >$CONF <<_EOF interface=$1 ctrl_interface=/var/run/hostapd_$1.sock logger_syslog=-1 logger_syslog_level=0 logger_stdout=-1 logger_stdout_level=0 debug=4 wpa_psk_file=/etc/hostapd.wpa_psk wpa=$WPA_MODE wpa_pairwise=$WPA_PAIR wpa_key_mgmt=WPA-PSK wpa_passphrase=$3 _EOF if [ ${#WEP_KEY0} -ne 0 ]; then cat >>$CONF <<_EOF tsn=1 wep_key0=$WEP_KEY0 _EOF fi }