]> git.ipfire.org Git - people/teissler/ipfire-2.x.git/blob - src/initscripts/init.d/hostapd
Fix forgotten bluetooth/settings
[people/teissler/ipfire-2.x.git] / src / initscripts / init.d / hostapd
1 #!/bin/sh
2 . /etc/sysconfig/rc
3 . ${rc_functions}
4
5 CHANNEL="05"
6 TXPOWER="auto"
7 INTERFACE="blue0"
8 eval $(/usr/local/bin/readhash /var/ipfire/wlanap/settings)
9
10 case "${1}" in
11 start)
12 boot_mesg "Starting hostapd... "
13 mkdir -p /var/run/hostapd
14 # enable wlan module of collectd
15 sed -i -e "s|#LoadPlugin wireless|LoadPlugin wireless|g" /etc/collectd.conf
16
17 # Set Atheros Cards to master mode
18 /usr/bin/wlanconfig $INTERFACE destroy > /dev/null
19 /usr/bin/wlanconfig $INTERFACE create wlandev wifi0 wlanmode ap > /dev/null
20
21 # Set other cards to master mode
22 #/usr/sbin/iwconfig blue0 mode master
23
24 if [ "$(/usr/sbin/iwconfig $INTERFACE | /bin/grep "Mode:Master")" == "" ]; then
25 boot_mesg "Error! Can't set wlan master mode"
26 echo_failure;
27 exit 1;
28 else
29 /usr/sbin/iwconfig $INTERFACE channel $CHANNEL
30 /usr/sbin/iwconfig $INTERFACE txpower $TXPOWER
31 /usr/bin/hostapd -P /var/run/hostapd /etc/hostapd.conf </dev/tty12 >/dev/tty12 2>&1 &
32 evaluate_retval
33 fi
34
35 # Bring blue up (but not at boot)
36 if [ "$(basename $0)" == "hostapd" ]; then
37 /etc/rc.d/init.d/networking/blue start
38 fi
39 ;;
40
41 stop)
42 boot_mesg "Stopping hostapd..."
43
44 # Set Atheros Card to managed mode
45 /usr/bin/wlanconfig $INTERFACE destroy > /dev/null
46 /usr/bin/wlanconfig $INTERFACE create wlandev wifi0 wlanmode sta > /dev/null
47
48 # Set other cards to managed mode
49 #/usr/sbin/iwconfig blue0 mode Managed
50
51 killproc /usr/bin/hostapd
52 evaluate_retval
53 ;;
54
55 restart)
56 ${0} stop
57 sleep 1
58 ${0} start
59 ;;
60
61 status)
62 statusproc /usr/bin/hostapd
63 ;;
64
65 *)
66 echo "Usage: ${0} {start|stop|restart|status}"
67 exit 1
68 ;;
69 esac