|
|
@@ -215,10 +215,31 @@ hostapd_set_bss_options() {
|
|
|
esac
|
|
|
fi
|
|
|
|
|
|
- config_get macfilter "$vif" macfilter
|
|
|
- macfile="/var/run/hostapd-$ifname.maclist"
|
|
|
- [ -e "$macfile" ] && rm -f "$macfile"
|
|
|
+ config_get macfile "$vif" macfile
|
|
|
+ config_get maclist "$vif" maclist
|
|
|
+ if [ -z "$macfile" ]
|
|
|
+ then
|
|
|
+ # if no macfile has been specified, fallback to the default name
|
|
|
+ macfile="/var/run/hostapd-$ifname.maclist"
|
|
|
+ else
|
|
|
+ if [ -n "$maclist" ]
|
|
|
+ then
|
|
|
+ # to avoid to overwrite the original file, make a copy
|
|
|
+ # before appending the entries specified by the maclist
|
|
|
+ # option
|
|
|
+ cp $macfile $macfile.maclist
|
|
|
+ macfile=$macfile.maclist
|
|
|
+ fi
|
|
|
+ fi
|
|
|
+
|
|
|
+ if [ -n "$maclist" ]
|
|
|
+ then
|
|
|
+ for mac in $maclist; do
|
|
|
+ echo "$mac" >> $macfile
|
|
|
+ done
|
|
|
+ fi
|
|
|
|
|
|
+ config_get macfilter "$vif" macfilter
|
|
|
case "$macfilter" in
|
|
|
allow)
|
|
|
append "$var" "macaddr_acl=1" "$N"
|
|
|
@@ -229,12 +250,6 @@ hostapd_set_bss_options() {
|
|
|
append "$var" "deny_mac_file=$macfile" "$N"
|
|
|
;;
|
|
|
esac
|
|
|
- config_get maclist "$vif" maclist
|
|
|
- [ -n "$maclist" ] && {
|
|
|
- for mac in $maclist; do
|
|
|
- echo "$mac" >> $macfile
|
|
|
- done
|
|
|
- }
|
|
|
}
|
|
|
|
|
|
hostapd_set_log_options() {
|