3f2355cb91
This adds country IE parsing to mac80211 and enables its usage within the new regulatory infrastructure in cfg80211. We parse the country IEs only on management beacons for the BSSID you are associated to and disregard the IEs when the country and environment (indoor, outdoor, any) matches the already processed country IE. To avoid following misinformed or outdated APs we build and use a regulatory domain out of the intersection between what the AP provides us on the country IE and what CRDA is aware is allowed on the same country. A secondary device is allowed to follow only the same country IE as it make no sense for two devices on a system to be in two different countries. In the case the AP is using country IEs for an incorrect country the user may help compliance further by setting the regulatory domain before or after the IE is parsed and in that case another intersection will be performed. CONFIG_WIRELESS_OLD_REGULATORY is supported but requires CRDA present. Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com> Acked-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
105 lines
3.2 KiB
Plaintext
105 lines
3.2 KiB
Plaintext
config CFG80211
|
|
tristate "Improved wireless configuration API"
|
|
|
|
config CFG80211_REG_DEBUG
|
|
bool "cfg80211 regulatory debugging"
|
|
depends on CFG80211
|
|
default n
|
|
---help---
|
|
You can enable this if you want to debug regulatory changes.
|
|
|
|
If unsure, say N.
|
|
|
|
config NL80211
|
|
bool "nl80211 new netlink interface support"
|
|
depends on CFG80211
|
|
default y
|
|
---help---
|
|
This option turns on the new netlink interface
|
|
(nl80211) support in cfg80211.
|
|
|
|
If =n, drivers using mac80211 will be configured via
|
|
wireless extension support provided by that subsystem.
|
|
|
|
If unsure, say Y.
|
|
|
|
config WIRELESS_OLD_REGULATORY
|
|
bool "Old wireless static regulatory definitions"
|
|
default y
|
|
---help---
|
|
This option enables the old static regulatory information
|
|
and uses it within the new framework. This is available
|
|
temporarily as an option to help prevent immediate issues
|
|
due to the switch to the new regulatory framework which
|
|
does require a new userspace application which has the
|
|
database of regulatory information (CRDA) and another for
|
|
setting regulatory domains (iw).
|
|
|
|
For more information see:
|
|
|
|
http://wireless.kernel.org/en/developers/Regulatory/CRDA
|
|
http://wireless.kernel.org/en/users/Documentation/iw
|
|
|
|
It is important to note though that if you *do* have CRDA present
|
|
and if this option is enabled CRDA *will* be called to update the
|
|
regulatory domain (for US and JP only). Support for letting the user
|
|
set the regulatory domain through iw is also supported. This option
|
|
mainly exists to leave around for a kernel release some old static
|
|
regulatory domains that were defined and to keep around the old
|
|
ieee80211_regdom module parameter. This is being phased out and you
|
|
should stop using them ASAP.
|
|
|
|
Note: You will need CRDA if you want 802.11d support
|
|
|
|
Say Y unless you have installed a new userspace application.
|
|
Also say Y if have one currently depending on the ieee80211_regdom
|
|
module parameter and cannot port it to use the new userspace
|
|
interfaces.
|
|
|
|
config WIRELESS_EXT
|
|
bool "Wireless extensions"
|
|
default n
|
|
---help---
|
|
This option enables the legacy wireless extensions
|
|
(wireless network interface configuration via ioctls.)
|
|
|
|
Wireless extensions will be replaced by cfg80211 and
|
|
will be required only by legacy drivers that implement
|
|
wireless extension handlers. This option does not
|
|
affect the wireless-extension backward compatibility
|
|
code in cfg80211.
|
|
|
|
Say N (if you can) unless you know you need wireless
|
|
extensions for external modules.
|
|
|
|
config WIRELESS_EXT_SYSFS
|
|
bool "Wireless extensions sysfs files"
|
|
default y
|
|
depends on WIRELESS_EXT && SYSFS
|
|
help
|
|
This option enables the deprecated wireless statistics
|
|
files in /sys/class/net/*/wireless/. The same information
|
|
is available via the ioctls as well.
|
|
|
|
Say Y if you have programs using it, like old versions of
|
|
hal.
|
|
|
|
config LIB80211
|
|
tristate "Common routines for IEEE802.11 drivers"
|
|
default n
|
|
help
|
|
This options enables a library of common routines used
|
|
by IEEE802.11 wireless LAN drivers.
|
|
|
|
Drivers should select this themselves if needed. Say Y if
|
|
you want this built into your kernel.
|
|
|
|
config LIB80211_CRYPT_WEP
|
|
tristate
|
|
|
|
config LIB80211_CRYPT_CCMP
|
|
tristate
|
|
|
|
config LIB80211_CRYPT_TKIP
|
|
tristate
|