This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "IPFire 2.x development tree".
The branch, next has been updated via cec275c9dfd9f614c94f10c636bdbeba09427272 (commit) via b3c0c61132512367cf30c8286880f01d0cb81ace (commit) via 0f0d6a5a7d4c8a8ac4c01b4f99c030a47cf56e41 (commit) from dea9e7193c8c5ab9b480f8af9711099576c28919 (commit)
Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below.
- Log ----------------------------------------------------------------- commit cec275c9dfd9f614c94f10c636bdbeba09427272 Merge: b3c0c61 dea9e71 Author: Arne Fitzenreiter arne_f@ipfire.org Date: Wed Mar 19 19:07:27 2014 +0100
Merge branch 'next' of git.ipfire.org:/pub/git/ipfire-2.x into next
commit b3c0c61132512367cf30c8286880f01d0cb81ace Author: Arne Fitzenreiter arne_f@ipfire.org Date: Wed Mar 19 19:03:22 2014 +0100
hostapd: enable CONFIG_ACS for dfs channels.
commit 0f0d6a5a7d4c8a8ac4c01b4f99c030a47cf56e41 Author: Arne Fitzenreiter arne_f@ipfire.org Date: Wed Mar 19 19:00:47 2014 +0100
hostapd: change channellist and status for dfs channels.
-----------------------------------------------------------------------
Summary of changes: config/hostapd/config | 4 ++++ html/cgi-bin/wlanap.cgi | 55 +++++++++++++++++++++++++++++++++++-------------- lfs/hostapd | 2 +- 3 files changed, 44 insertions(+), 17 deletions(-)
Difference in files: diff --git a/config/hostapd/config b/config/hostapd/config index a232073..1cd7676 100644 --- a/config/hostapd/config +++ b/config/hostapd/config @@ -145,3 +145,7 @@ CONFIG_NO_STDOUT_DEBUG=y
# IEEE 802.11ac (Very High Throughput) support CONFIG_IEEE80211AC=y + +# Enable AUTO_CHANNEL_SELECTION +# This is needed for dfs (radar detection) channels +CONFIG_ACS=y diff --git a/html/cgi-bin/wlanap.cgi b/html/cgi-bin/wlanap.cgi index c544f73..5b2490d 100644 --- a/html/cgi-bin/wlanap.cgi +++ b/html/cgi-bin/wlanap.cgi @@ -258,7 +258,25 @@ if ( -d '/sys/class/net/mon.'.$wlanapsettings{'INTERFACE'} ) { $monwlaninterface = 'mon.'.$wlanapsettings{'INTERFACE'}; }
-my @channellist_cmd = `iwlist $monwlaninterface channel|tail -n +2 2>/dev/null`; +my @channellist_cmd; +my @channellist; + +if ( $wlanapsettings{'DRIVER'} eq 'NL80211' ){ +my $wiphy = `iw dev $wlanapsettings{'INTERFACE'} info | grep wiphy | cut -d" " -f2`; +chomp $wiphy; + +@channellist_cmd = `iw phy phy$wiphy info | grep " MHz \[" | grep -v "(disabled)" | grep -v "no IBSS)" 2>/dev/null`; +# get available channels + +my @temp; +foreach (@channellist_cmd){ +$_ =~ /(.*) [(\d+)(.*)]/; +$channel = $2;chomp $channel; +if ( $channel =~ /\d+/ ){push(@temp,$channel);} +} +@channellist = @temp; +} else { +@channellist_cmd = `iwlist $monwlaninterface channel|tail -n +2 2>/dev/null`; # get available channels
my @temp; @@ -267,7 +285,8 @@ $_ =~ /(.*)Channel (\d+)(.*):/; $channel = $2;chomp $channel; if ( $channel =~ /\d+/ ){push(@temp,$channel);} } -my @channellist = @temp; +@channellist = @temp; +}
my @countrylist_cmd = `regdbdump /usr/lib/crda/regulatory.bin 2>/dev/null`; # get available country codes @@ -488,12 +507,12 @@ print <<END </table> END ; - +my @status; if ( $wlanapsettings{'DRIVER'} eq 'MADWIFI' ){ - $status = `wlanconfig $wlanapsettings{'INTERFACE'} list`; + @status = `wlanconfig $wlanapsettings{'INTERFACE'} list`; } if ( $wlanapsettings{'DRIVER'} eq 'NL80211' ){ - $status = `iw dev $wlanapsettings{'INTERFACE'} station dump`; + @status = `iw dev $wlanapsettings{'INTERFACE'} info && iw dev $wlanapsettings{'INTERFACE'} station dump`; } print <<END <br /> @@ -501,33 +520,37 @@ print <<END <tr><th colspan='3' bgcolor='$color{'color20'}' align='left'><strong>$Lang::tr{'wlanap wlan status'}</strong></th></tr> END ; -foreach my $nr (@channellist_cmd){ - my ($chan,$freq) = split(':',$nr); - if ($count % 2){ + +for (my $i=0;$i<$#status;$i++){ + +if (@status[$i]=~"^Station ") { $count++; } +if ($count % 2){ $col="bgcolor='$color{'color20'}'"; }else{ $col="bgcolor='$color{'color22'}'"; } - print"<tr><td $col>$chan</td><td $col>:</td><td $col>$freq</td></tr>"; - $count++; + print"<tr><td colspan='3' $col><pre>@status[$i]</pre></td></tr>"; + if (! @status[$i]=~"^/t" ) { $count++; } } -if ($count % 2){ + $count++; + +foreach my $nr (@channellist_cmd){ + if ($count % 2){ $col="bgcolor='$color{'color20'}'"; }else{ $col="bgcolor='$color{'color22'}'"; } -if ($status){ - print"<tr><td colspan='3' $col><pre>$status</pre></td></tr>"; + print"<tr><td colspan='3' $col>$nr</td></tr>"; $count++; } -for (my $i=0;$i<$#txpower_cmd;$i=$i+4){ - next if (@txpower_cmd[$i] =~ /mon/i); + +for (my $i=0;$i<$#txpower_cmd;$i=$i+2){ if ($count % 2){ $col="bgcolor='$color{'color20'}'"; }else{ $col="bgcolor='$color{'color22'}'"; } - print "<tr><td $col>@txpower_cmd[$i]</td><td $col>@txpower_cmd[$i+1]</td><td $col>@txpower_cmd[$i+2]</td></tr>"; + print "<tr><td $col>@txpower_cmd[$i]</td></tr>"; $count++; } print "</table><br>"; diff --git a/lfs/hostapd b/lfs/hostapd index 424e407..36343de 100644 --- a/lfs/hostapd +++ b/lfs/hostapd @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = hostapd -PAK_VER = 27 +PAK_VER = 28
DEPS = ""
hooks/post-receive -- IPFire 2.x development tree