Commit Graph

53 Commits

Author SHA1 Message Date
Felix Fietkau
08f1e1b3ac mac80211: set mcast-rate for mesh point interfaces
In order to set the multicast rate for mesh point interfaces the "mesh join"
was made explicit and moved to mac80211_setup_vif(), similar to how it is
done for IBSS interfaces.

Previously, the mesh join was made implicit in case authentication (i.e.
$key) was not used when creating the interface in mac80211_prepare_vif(),
while using authentication would create the interface first, then join
later in mac80211_setup_vif() by starting authsae.

Signed-off-by: Nils Schneider <nils@nilsschneider.net>

SVN-Revision: 47408
2015-11-07 12:52:01 +00:00
Steven Barth
e07959cade package: replace ifconfig-usage with ip
Signed-off-by: Steven Barth <steven@midlink.org>

SVN-Revision: 46832
2015-09-08 17:44:24 +00:00
Felix Fietkau
ecaacad14d hostapd: move ht_coex variable to mac80211.sh, guarded by 802.11n support
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45917
2015-06-06 23:09:43 +00:00
Felix Fietkau
fa2dfdb74b mac80211: make netifd script create AP interface directly
Before starting hostapd we create interface for it. The problem is we
try to create STA interface just to let hostapd change it to AP later.

It may fail if device doesn't support STA interfaces or if we already
hit a limit. Consider following phy (it's from BCM43602 and brcmfmac):
$ iw phy phy0 info | tail
        valid interface combinations:
                 * #{ IBSS, managed } <= 1, #{ AP } <= 4, #{ P2P-client, P2P-GO } <= 1, #{ P2P-device } <= 1,
                   total <= 3, #channels <= 1

Trying to setup 2 interfaces: STA + AP results in:
radio0 (1101): command failed: Operation not supported (-95)
radio0 (1101): command failed: Operation not supported (-95)
radio0 (1101): command failed: Operation not supported (-95)
radio0 (1101): command failed: Operation not supported (-95)
radio0 (1101): Configuration file: /var/run/hostapd-phy0.conf
radio0 (1101): Could not read interface wlan0-1 flags: No such device

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 45856
2015-05-30 23:08:57 +00:00
Felix Fietkau
29f8f90de4 mac80211: apply mesh parameters after starting authsae/wpa_supplicant (#16697)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45651
2015-05-09 08:58:12 +00:00
Felix Fietkau
e2e2fb168b mac80211: fallback to wpa_supplicant to setup encrypted mesh
instead of failing when authsae is not installed, also try using
wpa_supplicant as the newly added -mesh variants support mesh mode
and SAE encryption.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>

SVN-Revision: 45520
2015-04-20 15:00:13 +00:00
Felix Fietkau
daaed6f251 netifd: fix start_disabled 'sh: bad number' in mac80211 setup (bug #19345)
Two errors "netifd: radio0: sh: bad number" have recently surfaced in system
log in trunk when wifi interfaces come up. I tracked the errors to checking
numerical values of some config options without ensuring that the option has
any value.

The errors I see have apparently been introduced by r45051 (ieee80211r in
hostapd) and r45326 (start_disabled in mac80211). My patches fix two
instances of "bad number", but there may be a third one, as the original
report in bug 19345 pre-dates r45326 and already has two "bad number" errors
for radio0.

https://dev.openwrt.org/ticket/19345

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>

SVN-Revision: 45379
2015-04-11 10:51:55 +00:00
John Crispin
d564779563 mac80211: add start_disabled option
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 45326
2015-04-09 10:31:56 +00:00
Imre Kaloz
211a4484a1 mac80211: fix 5ghz variable name
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 44907
2015-03-20 12:13:11 +00:00
Imre Kaloz
8f91c80ea1 mac80211: when looking for VHT, check 5GHz support as well
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 44906
2015-03-20 11:47:16 +00:00
John Crispin
a0cc6803c8 mac80211: Revert adding SM Power Save capability to hostapd configuration
Part of rev 44173 added setting the SM Power Save capability in the hostapd.conf
file if the driver indicated that it was supported. It appears this was
incorrect, because the field in the actual HT Capabilities field in the AP
configuration is really a state indication. Just copying the state from the
capability resulted in the AP indicating that it had SMPS enabled all the time
if it supported SMPS. This effectively just disables all clients from sending
packets to the AP with more than one spatial stream, for no good reason.
So remove this part of the change.

Signed-off-by: Robert Hancock <hancockrwd@gmail.com>

SVN-Revision: 44239
2015-02-02 09:01:44 +00:00
John Crispin
04f104e74d mac80211: Add some missing 802.11n capabilities to hostapd configuration
Add some missing 802.11n capabilities to the hostapd ht_capab string when
supported by the hardware: Spatial Multiplexing Power-Save and 7935-byte AMSDUs.

Signed-off-by: Robert Hancock <hancockrwd@gmail.com>

SVN-Revision: 44173
2015-01-28 12:07:21 +00:00
John Crispin
e0aaac8434 mac80211: fix fallback to macaddr
If '/sys/class/ieee80211/phyN' is not a symlink, the call to readlink
produces either an empty path (if /sys/class/ieee80211/phyN/device doesn't
exist) or a path that begins with '/sys/class/ieee80211' (which does not
work with the subsequent line to strip '/sys/devices' from the beginning of
the path).  Modify the checks to detect these conditions, and fallback to
using the macaddr.

Signed-off-by: Nathan Hintz <nlhintz@hotmail.com>

SVN-Revision: 44172
2015-01-28 12:07:08 +00:00
Felix Fietkau
768d09be87 mac80211/hostapd: fix HT mode setup for RSN ad-hoc networks
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 44100
2015-01-24 19:27:22 +00:00
Felix Fietkau
b898695bdd mac80211: fix ad-hoc basic/multicast rate regression from r43782
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 43853
2015-01-05 13:19:20 +00:00
Felix Fietkau
ff3464eb30 mac80211: fix HT mode selection for ad-hoc
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 43769
2014-12-22 21:46:38 +00:00
Felix Fietkau
4d99db168c mac80211: try to get interface addresses from wiphy sysfs 'addresses' if no mask is set
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 43326
2014-11-19 20:17:08 +00:00
John Crispin
20940138ac scripts: fix wrong usage of '==' operator
[base-files] shell-scripting: fix wrong usage of '==' operator

normally the '==' is used for invoking a regex parser and is a bashism.
all of the fixes just want to compare a string. the used busybox-ash
will silently "ignore" this mistake, but make it portable/clean at least.

this patch does not change the behavior/logic of the scripts.

Signed-off-by: Bastian Bittorf <bittorf@bluebottle.com>

SVN-Revision: 42911
2014-10-14 12:21:11 +00:00
Felix Fietkau
fbe1b7ecdf mac80211: remove error from detect script
Signed-off-by: Michel Stam <m.stam@fugro.nl>

SVN-Revision: 42861
2014-10-09 09:04:24 +00:00
Jo-Philipp Wich
1c0557cfa8 mac80211: support wildcard paths when matching phys
This change introduces support for wildcard patterns in "option path"
of section "wifi-device".

Objective is to allow paths like "*/usb[0-9]/*/*" in order to claim
any usb device using the same backend type, regardless of its bus
address or phy name.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 41873
2014-07-29 09:48:07 +00:00
Felix Fietkau
f34cbdcf61 mac80211: Fix config variable name for dtim_period
The vif option dtim_period was accidently renamed dtim_interval in r38988
("netifd: add wireless configuration support and port mac80211 to the new
framework"). This is wrong and makes the dtim_period/dtim_interval a dead
option because the rest of the config generation code still uses dtim_period.

Reported-by: Jeppe Ledet-Pedersen <jlp@steinwurf.com>
Signed-off-by: Sven Eckelmann <sven@narfation.org>

SVN-Revision: 41557
2014-07-10 12:29:27 +00:00
Felix Fietkau
2c9c7ada6e mac80211: disable greenfield by default
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 41300
2014-06-22 11:52:53 +00:00
Felix Fietkau
867ba199f8 mac80211: fix disabling of 802.11n features
r40682 ("mac80211: clean up ht capability handling, drop the use of the
ht_capab list, use individual variables instead") removed the ht_capab list and
replaced it with optional variables to disable features for a phy. But these
variables weren't added in drv_mac80211_init_device_config and thus didn't make
any difference when modifying /etc/config/wireless.

Signed-off-by: Sven Eckelmann <sven@narfation.org>

SVN-Revision: 41180
2014-06-13 10:10:05 +00:00
John Crispin
43de2d08de mac80211: query driver for max A-MPDU length exponent
This patch enables netifd to query 802.11ac-driver for the maximum
supported A-MPDU length exponent, possibly increasing VHT throughput by
more aggressive frame aggregation.

v2: refreshed patch

Signed-off-by: Matti Laakso <malaakso at elisanet.fi>

SVN-Revision: 40938
2014-06-02 12:44:54 +00:00
Felix Fietkau
2ddcd59f16 mac80211: fix stbc configuration
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 40783
2014-05-19 22:19:07 +00:00
Felix Fietkau
385b08d475 mac80211: fix ht capabilities for HT20
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 40776
2014-05-18 21:13:03 +00:00
Felix Fietkau
8a75eac80b mac80211: fix VHT80 channel allocation (thx, SeG)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 40770
2014-05-15 20:02:59 +00:00
Felix Fietkau
1268274b5d mac80211: reset ht_capab for each device
... or else "option htmode" is added multiple times to
the second and following device sections.

Signed-off-by: Reiner Herrmann <reiner@reiner-h.de>

SVN-Revision: 40711
2014-05-06 15:43:08 +00:00
Felix Fietkau
32a806cf8a mac80211: remove obsolete check for enable_ht
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 40694
2014-05-03 21:18:53 +00:00
Felix Fietkau
bc86119785 mac80211: remove mode_11n variable for hwmode - the option only selects the band now
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 40693
2014-05-03 21:14:59 +00:00
Felix Fietkau
8897093981 mac80211: add support for htmode=VHT20
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 40686
2014-05-03 19:58:54 +00:00
Felix Fietkau
a9aee857de mac80211: force upper channel for HT40 when autochannel is enabled
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 40685
2014-05-03 18:50:06 +00:00
Felix Fietkau
4bd862a300 mac80211: add automatic ht40 mode handling for 2.4 ghz
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 40684
2014-05-03 18:44:32 +00:00
Felix Fietkau
54625965c4 mac80211: clean up vht capability processing
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 40683
2014-05-03 18:38:24 +00:00
Felix Fietkau
58bda3a0e1 mac80211: clean up ht capability handling, drop the use of the ht_capab list, use individual variables instead
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 40682
2014-05-03 18:38:20 +00:00
Felix Fietkau
52846f0ff5 mac80211: disable 802.11n support if htmode is not set to HT* or VHT*
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 40681
2014-05-03 18:38:16 +00:00
Felix Fietkau
24791e0dd8 mac80211: simplify HT40 handling, derive lower/upper channel mode automatically from channel index
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 40680
2014-05-03 18:38:09 +00:00
John Crispin
3bc77db5f5 802.11s: fix authsae support in netifd
This patch implements support for 802.11s protected mesh wireless networks (using authsae) in the netifd framework.

Until meshd-nl80211 implements a proper -P option for the PID file, this uses shell backgrounding in order to be able to get the PID for the process.

Signed-off-by: Vittorio Gambaletta <openwrt@vittgam.net>

SVN-Revision: 40497
2014-04-12 21:22:17 +00:00
Felix Fietkau
cec0f8420d mac80211: declare missing config parameter mesh_id
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 39766
2014-02-28 18:08:16 +00:00
John Crispin
7d4103ddd4 mac80211: add validation rules
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 39622
2014-02-18 13:34:08 +00:00
Felix Fietkau
38587f87ed wifi: Introduce 802.11ac support
This patch introduces 802.11ac support to mac80211 and hostapd. The split of
VHT160 in two 80 MHz bands is not yet supported, since it requires an
additional user supplied parameter for the channel of the second band.

Signed-off-by: Matti Laakso <malaakso@elisanet.fi>
Signed-off-by: Simon Wunderlich <simon@open-mesh.com>
[sven@open-mesh.com: Rebased patch, merged htmode and vhtmode,
removed special hwmode, replaced uci vht_capab list with overwritable
autoconfig, fixed hostapd integration, fixed commit description, add HT40+/-
for VHT modes, add VHT40 center_freq autoconfig, refactored major parts]
Signed-off-by: Sven Eckelmann <sven@open-mesh.com>

SVN-Revision: 39456
2014-02-03 13:31:44 +00:00
Felix Fietkau
6106bdd002 mac80211: fix basic rate list processing in ad-hoc mode
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 39450
2014-02-02 14:25:09 +00:00
Felix Fietkau
c95698e596 mac80211: fix processing of the distance option (#14893)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 39447
2014-02-02 14:02:56 +00:00
John Crispin
c1a2a87f3a netifd: fix mac80211.sh to respect setting of mcast_rate
This patch fixes a bug in /lib/netifd/wireless/mac80211.sh, where
the UCI setting of wireless multicast traffic (in uci: mcast_rate)
is not respected within netifd. Especially in Freifunk mesh networks
the olsr routing as effected by this, as only the lowest mcast_rate
was used, even when uci ncast_rate was set to something else.
In function mac80211_setup_adhoc() the value of mcast_rate is missing
in json_get_vars.

Signed-off-by: Thomas Huehn <thomas@net.t-labs.tu-berlin.de>

SVN-Revision: 39232
2014-01-12 12:07:15 +00:00
Jo-Philipp Wich
10972d9f02 mac80211: add missing set_default to fix stray "radio0: sh: bad number" messages
SVN-Revision: 39028
2013-12-10 16:24:52 +00:00
Felix Fietkau
be0395261b mac80211: fix using custom wifi-iface ifname option with netifd
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 39003
2013-12-08 18:00:01 +00:00
Felix Fietkau
ee2cd0354c mac80211: fix ad-hoc network setup with netifd (#14564)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 38993
2013-12-03 16:22:56 +00:00
Felix Fietkau
498d84fc4e netifd: add wireless configuration support and port mac80211 to the new framework
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 38988
2013-12-02 16:41:03 +00:00
Felix Fietkau
15b4975925 hostapd: add support for auto-channel selection
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 38915
2013-11-25 15:43:30 +00:00
Felix Fietkau
39ab281fae mac80211: Handle concurrent AP/STA beaconing properly
Use the "start_disabled" option in hostapd that was added
in the earlier patch.

Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com>

SVN-Revision: 37732
2013-08-06 17:59:09 +00:00