Changeset 34470


Ignore:
Timestamp:
2012-12-04T13:06:40+01:00 (5 years ago)
Author:
nbd
Message:

mac80211, hostapd: Fix macfilter for multi bssid setups

Previously only the first macfilter configuration would have been used
on all interfaces. However, the configuration was always done per vif
already. Hence, move the macfilter setup into hostapd.sh where and
create one mac list file per vif.

Signed-off-by: Helmut Schaa <helmut.schaa@…>

Location:
trunk/package
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/package/mac80211/files/lib/wifi/mac80211.sh

    r33853 r34470  
    77 
    88        cfgfile="/var/run/hostapd-$phy.conf" 
    9         macfile="/var/run/hostapd-$phy.maclist" 
    10         [ -e "$macfile" ] && rm -f "$macfile" 
    119 
    1210        config_get device "$vif" device 
     
    5149        config_get_bool country_ie "$device" country_ie "$country_ie" 
    5250        [ "$country_ie" -gt 0 ] && append base_cfg "ieee80211d=1" "$N" 
    53  
    54         config_get macfilter "$vif" macfilter 
    55         case "$macfilter" in 
    56                 allow) 
    57                         append base_cfg "macaddr_acl=1" "$N" 
    58                         append base_cfg "accept_mac_file=$macfile" "$N" 
    59                         ;; 
    60                 deny) 
    61                         append base_cfg "macaddr_acl=0" "$N" 
    62                         append base_cfg "deny_mac_file=$macfile" "$N" 
    63                         ;; 
    64         esac 
    65         config_get maclist "$vif" maclist 
    66         [ -n "$maclist" ] && { 
    67                 for mac in $maclist; do 
    68                         echo "$mac" >> $macfile 
    69                 done 
    70         } 
    7151 
    7252        local br brval brstr 
  • trunk/package/network/services/hostapd/files/hostapd.sh

    r33412 r34470  
    211211                esac 
    212212        fi 
     213 
     214        config_get macfilter "$vif" macfilter 
     215        macfile="/var/run/hostapd-$ifname.maclist" 
     216        [ -e "$macfile" ] && rm -f "$macfile" 
     217 
     218        case "$macfilter" in 
     219                allow) 
     220                        append "$var" "macaddr_acl=1" "$N" 
     221                        append "$var" "accept_mac_file=$macfile" "$N" 
     222                        ;; 
     223                deny) 
     224                        append "$var" "macaddr_acl=0" "$N" 
     225                        append "$var" "deny_mac_file=$macfile" "$N" 
     226                        ;; 
     227        esac 
     228        config_get maclist "$vif" maclist 
     229        [ -n "$maclist" ] && { 
     230                for mac in $maclist; do 
     231                        echo "$mac" >> $macfile 
     232                done 
     233        } 
    213234} 
    214235 
Note: See TracChangeset for help on using the changeset viewer.