mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-04-26 10:52:57 +02:00
More work on hostapd initscript
This commit is contained in:
@@ -9,76 +9,50 @@ eval $(/usr/local/bin/readhash /var/ipfire/wlanap/settings)
|
||||
|
||||
case "${1}" in
|
||||
start)
|
||||
boot_mesg "Starting hostapd... "
|
||||
mkdir -p /var/run/hostapd
|
||||
# enable wlan module of collectd
|
||||
sed -i -e "s|#LoadPlugin wireless|LoadPlugin wireless|g" /etc/collectd.conf
|
||||
if [ "$(/usr/sbin/iwconfig $INTERFACE | /bin/grep "Mode:Master")" == "" ]; then
|
||||
|
||||
# Set Atheros Cards to master mode
|
||||
if [ -d /proc/net/madwifi/ath0/ ]; then
|
||||
boot_mesg "Setting wlan $INTERFACE to Master mode... "
|
||||
|
||||
# Set Atheros Cards to master mode
|
||||
if [ -d /proc/net/madwifi/ath0/ ]; then
|
||||
/usr/bin/wlanconfig ath0 destroy > /dev/null
|
||||
fi
|
||||
|
||||
/usr/bin/wlanconfig $INTERFACE destroy > /dev/null
|
||||
/usr/bin/wlanconfig $INTERFACE create wlandev wifi0 wlanmode ap > /dev/null
|
||||
|
||||
# Set other cards to master mode
|
||||
#/usr/sbin/iwconfig blue0 mode master
|
||||
fi
|
||||
/usr/bin/wlanconfig $INTERFACE destroy > /dev/null
|
||||
/usr/bin/wlanconfig $INTERFACE create wlandev wifi0 wlanmode ap > /dev/null
|
||||
|
||||
# Set other cards to master mode
|
||||
#/usr/sbin/iwconfig blue0 mode master
|
||||
|
||||
|
||||
if [ "$(/usr/sbin/iwconfig $INTERFACE | /bin/grep "Mode:Master")" == "" ]; then
|
||||
boot_mesg "Error! Can't set wlan master mode"
|
||||
echo_failure;
|
||||
exit 1;
|
||||
else
|
||||
# enable wlan module of collectd
|
||||
sed -i -e "s|#LoadPlugin wireless|LoadPlugin wireless|g" /etc/collectd.conf
|
||||
|
||||
boot_mesg "Starting hostapd... "
|
||||
/usr/sbin/iwconfig $INTERFACE channel $CHANNEL
|
||||
/usr/sbin/iwconfig $INTERFACE txpower $TXPOWER
|
||||
/usr/bin/hostapd -P /var/run/hostapd /etc/hostapd.conf </dev/tty12 >/dev/tty12 2>&1 &
|
||||
evaluate_retval
|
||||
fi
|
||||
|
||||
# Bring blue up (but not at boot)
|
||||
if [ "$(basename $0)" == "hostapd" ]; then
|
||||
|
||||
/etc/rc.d/init.d/networking/${INTERFACE//[0-9]/} start
|
||||
|
||||
if [ -f /var/ipfire/dhcp/enable_${INTERFACE//[0-9]/} ]; then
|
||||
/etc/rc.d/init.d/dhcp restart
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
|
||||
stop)
|
||||
boot_mesg "Stopping hostapd..."
|
||||
|
||||
# Set Atheros Card to managed mode
|
||||
/usr/bin/wlanconfig $INTERFACE destroy > /dev/null
|
||||
/usr/bin/wlanconfig $INTERFACE create wlandev wifi0 wlanmode sta > /dev/null
|
||||
|
||||
# Set other cards to managed mode
|
||||
#/usr/sbin/iwconfig blue0 mode Managed
|
||||
|
||||
killproc /usr/bin/hostapd
|
||||
evaluate_retval
|
||||
;;
|
||||
|
||||
restart)
|
||||
boot_mesg "Stopping hostapd..."
|
||||
killproc /usr/bin/hostapd
|
||||
evaluate_retval
|
||||
|
||||
${0} stop
|
||||
sleep 1
|
||||
|
||||
boot_mesg "Starting hostapd... "
|
||||
if [ "$(/usr/sbin/iwconfig $INTERFACE | /bin/grep "Mode:Master")" == "" ]; then
|
||||
boot_mesg "Error! Card is not master"
|
||||
echo_failure;
|
||||
exit 1;
|
||||
else
|
||||
/usr/sbin/iwconfig $INTERFACE channel $CHANNEL
|
||||
/usr/sbin/iwconfig $INTERFACE txpower $TXPOWER
|
||||
/usr/bin/hostapd -P /var/run/hostapd /etc/hostapd.conf </dev/tty12 >/dev/tty12 2>&1 &
|
||||
evaluate_retval
|
||||
fi
|
||||
|
||||
${0} start
|
||||
;;
|
||||
|
||||
status)
|
||||
|
||||
Reference in New Issue
Block a user