#!/bin/sh ############################################################################### # # # IPFire.org - A linux based firewall # # Copyright (C) 2007-2022 IPFire Team # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # # the Free Software Foundation, either version 3 of the License, or # # (at your option) any later version. # # # # This program is distributed in the hope that it will be useful, # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # GNU General Public License for more details. # # # # You should have received a copy of the GNU General Public License # # along with this program. If not, see . # # # ############################################################################### . /etc/sysconfig/rc . ${rc_functions} find_interface() { local address="${1}" local path for path in /sys/class/net/*; do if [ -s "${path}/address" ] && [ "$(<${path}/address)" = "${address}" ]; then basename "${path}" return 0 fi done return 1; } CHANNEL="6" COUNTRY="00" TXPOWER="auto" INTERFACE="blue0" MACMODE="0" eval $(/usr/local/bin/readhash /var/ipfire/wlanap/settings) case "${1}" in start) interface="$(find_interface "${INTERFACE}")" if [ -z "${interface}" ]; then boot_mesg "Could not find interface with address ${INTERFACE} for wireless access point" echo_failure exit 1 fi boot_mesg "Starting hostapd... " loadproc /usr/bin/hostapd -s -B /etc/hostapd.conf -i "${interface}" ;; stop) boot_mesg "Stopping hostapd..." killproc /usr/bin/hostapd evaluate_retval ;; restart) ${0} stop sleep 1 ${0} start ;; status) statusproc /usr/bin/hostapd ;; *) echo "Usage: ${0} {start|stop|restart|status}" exit 1 ;; esac