#!/bin/ash # $Id: hotplug,v 1.2 2005/04/03 21:11:05 mbm Exp $ nasrunning() { [ -f "/tmp/nas.lan.pid" ] && { kill -0 $(cat /tmp/nas.lan.pid 2>/dev/null) } return } nas4not() { ( while ! nasrunning; do sleep 1 done # Wait - nas dosn't always accept registration immediately sleep 10 /usr/sbin/nas4not $@ ) & } [ "${INTERFACE%%[0-9]*}" = "wds" ] && { [ -x "/usr/sbin/nas4not" ] && { crypto=$(nvram get wl0_${INTERFACE}_crypto) crypto=${crypto:-$(nvram get wl0_wds_crypto)} crypto=${crypto:-$(nvram get wl0_crypto)} [ "${crypto}" = "" ] || { wifi_ifname="eth1" auth_mode=$(nvram get wl0_${INTERFACE}_auth_mode) auth_mode=${auth_mode:-$(nvram get wl0_wds_auth_mode)} auth_mode=${auth_mode:-$(nvram get wl0_auth_mode)} ssid=$(nvram get wl0_${INTERFACE}_ssid) ssid=${ssid:-$(nvram get wl0_wds_ssid)} ssid=${ssid:-$(nvram get wl0_ssid)} gtk_rekey=$(nvram get wl0_${INTERFACE}_wpa_gtk_rekey) gtk_rekey=${gtk_rekey:-$(nvram get wl0_wds_wpa_gtk_rekey)} gtk_rekey=${gtk_rekey:-$(nvram get wl0_wpa_gtk_rekey)} # Need to add support for radius auth_mode if that is possible on wds case "$auth_mode" in psk) psk=$(nvram get wl0_${INTERFACE}_wpa_psk) psk=${psk:-$(nvram get wl0_wds_wpa_psk)} psk=${psk:-$(nvram get wl0_wpa_psk)} nas4not lan $INTERFACE up auto $crypto $auth_mode $psk $ssid ;; *) echo I do not know how to handle auth_mode=$auth_mode ;; esac } } ifconfig $INTERFACE 0.0.0.0 up /usr/sbin/brctl addif br0 $INTERFACE /usr/sbin/brctl stp br0 on }