Feature changed by: Stefan Behlert (sbehlert)
Feature #305301, revision 59
Title: Central Regulatory Domain Agent (for 802.11)
openSUSE-11.2: Rejected by Christoph Thiel (cthiel1)
reject date: 2009-10-27 16:08:49
reject reason: not done for 11.2.
Priority
Requester: Important
Projectmanager: Important
openSUSE-11.3: Rejected by Andreas Jaeger (a_jaeger)
reject date: 2010-11-15 11:30:29
reject reason: yast part not done yet.
Priority
Requester: Mandatory
Projectmanager: Important
openSUSE-11.4: New
Priority
Requester: Mandatory
- Info Provider: (Novell)
Requested by: Vladimir Botka (vbotka)
Product Manager: (Novell)
Project Manager: (Novell)
Engineering Manager: (Novell)
Engineering Manager: (Novell)
Developer: (Novell)
Technical Contact: (Novell)
Partner organization: openSUSE.org
Description:
The regulatroy domain handling for wireless cards was done by each
driver seperately before mac80211/cfg80211. cfg80211 is used to unify
the handling of regulatory domains for wireless devices.
However cfg80211 depends on the user space configuring the regulatory
domain. A user space daemon is currently developed (see [1]). It
basically provides the allowed channels for all known regulatory
domains.
Additionally it would be nice to allow the configuration of the
regulatory domain from the Yast network module.
[1] http://wireless.kernel.org/en/developers/Regulatory/CRDA
Partly based on bnc#392853
References:
packages: wireless-regdb,crda,iw,sysconfig
Relations:
- wpa_supplicant in factory seems to ignore an country=DE setting in
its config (novell/bugzilla/id: 537708)
https://bugzilla.novell.com/show_bug.cgi?id=537708
- switch nl80211 wpa_supplicant driver in ifup-wireless for
WIRELESS_REGULATORY_DOMAIN support (novell/bugzilla/id: 585802)
https://bugzilla.novell.com/show_bug.cgi?id=585802
Discussion:
#1: Helmut Schaa (hschaa) (2009-02-03 12:04:57)
I've already packaged crda and wireless-regdb in my buildservice
project home:hschaa:CRDA.
#2: Helmut Schaa (hschaa) (2009-02-09 11:37:20)
What we additionally need for this feature is some integration with
Yast or NetworkManager such that the user is able to set the regulatory
domain (maybe based on the selected time zone).
A command line tool for setting the domain is already available (iw)
but needs to be updated.
#3: Helmut Schaa (hschaa) (2009-02-09 16:09:28) (reply to #2)
Just submitted an update for Factory.
#4: Helmut Schaa (hschaa) (2009-02-10 10:59:40) (reply to #2)
wpa_supplicant 0.6.7 already has support for setting the regulatory
domain. We'll get that with the next version update.
#5: Helmut Schaa (hschaa) (2009-02-10 13:40:25) (reply to #2)
iw, crda and wireless-regdb are part of factory now
#6: Kshitij Kulshreshtha (polyconvex) (2009-03-25 11:53:33)
Sometimes on a short visit abroad a user might not bother to update
their timezone information on their laptop but still want to use a
wireless network. In this case setting the regulatory domain based on
timezone is not the right thing to do. Why not let the networkmanager
applet ask the user himself to provide the country as a part of the
dialog to setup the network? (A map similar to the yast timezone
selector built into KNetworkManager?)
#7: Marius Tomaschewski (mtomaschewski) (2009-06-08 11:27:49)
We've already another enhancement bugs for sysconfig/wireless... so
let's just add it for 11.2.
Helmut, let's speak in the next days about the requirements on the
sysconfig side (I guess it is just one optional variable) and add this
together with the another enhancements. Michal (yast2 network) requires
the sysconfig support to implement it on the yast2 side.
#11: Marius Tomaschewski (mtomaschewski) (2009-09-08 15:56:43) (reply
to #9)
Let's define the sysconfig ifcfg -file variable as:
WIRELESS_REGULATORY_DOMAIN='00'
The '00' value is the ISO / IEC 3166 alpha2 country code as used in
the regdb / wpa_supplicant / iw tool. The _sysconfig_ default is '' ,
that is empty string.
#12: Marius Tomaschewski (mtomaschewski) (2009-09-08 16:39:46) (reply
to #11)
Hmm... it looks like the reg domain is a global and not a per-interface
setting, in iw:
reg set
reg get
this means it has to go to network/config and not into ifcfg file. Is
this correct?
#15: Jiri Benc (jbenc) (2009-09-09 13:23:09) (reply to #12)
Yes, this is a system-wide setting. On purpose, you don't usually have
you computer in two different regulatory zones ;-)
I don't see what's the problem with using the timezone setting, though.
Yes, it would require a translation table (to map e.g. Europe/Prague to
CZ), but other than that, it should provide all the information we
need: in what country we are located.
#16: Marius Tomaschewski (mtomaschewski) (2009-09-09 13:53:06) (reply
to #15)
OK, thanks for verifying this!
I don't have any problem when yast2 is setting the
WIRELESS_REGULATORY_DOMAIN='CZ' value based on the
TIMEZONE='Europe/Prague' setting by default / as preselection. But I
need the correct, valid and final value for the utilities and don't
want to provide any translation table and waste e.g. boot time in
sysconfig. It also makes sense to check that the alpha-2 code is in the
wireless-regdb and perhaps propose an another value if possible or
reject & reset it -- in sysconfig it is too late to do this or ask the
user what to do.
The package implementing this is in Base:System/sysconfig project and
goes to factory today. When iw reg set is used, the value is applied
correctly to the crda/kernel. When it is set via wpa_supplicant config,
there is no attempt to set it visible in udev -- seems to be a
wpa_supplicant bug -> bugzilla.
#17: Jiri Benc (jbenc) (2009-09-09 14:01:13) (reply to #16)
Yes, all of that makes sense to me.
#18: Vladimir Botka (vbotka) (2009-09-09 20:34:24) (reply to #16)
Part of the project
http://linuxwireless.org/en/developers/Documentation/nl80211 is also an
wpa_supplicant with -Dnl80211 which will solves this problem. The yast
module can set both the WIRELESS_REGULATORY_DOMAIN in sysconfig and
country= in wpa_supplicant.conf.
#20: Marius Tomaschewski (mtomaschewski) (2009-09-09 22:40:21) (reply
to #18)
Stop :-)
sysconfg / ifup is not using /etc/.../wpa_supplicant.conf -- it
generates one per interface from network/config and network/ifcfg*
settings. So just set the WIRELESS_REGULATORY_DOMAIN, ifup-wireless
will add the (expanded) "country=$WIRELESS_REGULATORY_DOMAIN" statement
to the generated wpa_supplicant config.
#19: Vladimir Botka (vbotka) (2009-09-09 21:34:26) (reply to #16)
The new nl80211 extension is already available in Factory. #
wpa_supplicant -c /etc/wpa_supplicant/wpa_supplicant.conf -i wlan0 -dd -
Dnl80211 Initializing interface 'wlan0' conf
'/etc/wpa_supplicant/wpa_supplicant.conf' driver 'nl80211'
ctrl_interface 'N/A' bridge 'N/A' Configuration file
'/etc/wpa_supplicant/wpa_supplicant.conf' ->
'/etc/wpa_supplicant/wpa_supplicant.conf' Reading configuration file
'/etc/wpa_supplicant/wpa_supplicant.conf' country='CZ'
#21: Marius Tomaschewski (mtomaschewski) (2009-09-09 22:42:34) (reply
to #19)
Yes I know already about the new driver. Question is if we can switch
to use this driver already. Let's continue with the driver details in
bugzilla.
#22: Marius Tomaschewski (mtomaschewski) (2009-10-02 08:52:57)
FYI: The sysconfig-0.72.4 version in openSUSE:Factory / 11.2 implements
this feature.
It provides the WIRELESS_REGULATORY_DOMAIN variable and adds it to the
per-interface wpa_supplicant.conf as well as sets it via iw command in
case of old (iwconfig) setup. It does not change to the new nl80211
driver (or another one supporting it) by default, the user has to set
WIRELESS_WPA_DRIVER="nl80211" per interface or wpa_supplicant will
ignore it.
#25: Jiri Benc (jbenc) (2009-11-04 11:56:30)
Opening for 11.3 and setting as mandatory for requester, as without the
feature wifi cards are not fully usable outside of the US (and in some
cases not even there).
#26: Marius Tomaschewski (mtomaschewski) (2010-03-05 15:07:43) (reply
to #25)
Thanks! I've created bug 585802 to switch to the new nl80211
wpa_supplicant driver as default in ifup-wireless, except in cases
where we know that it does not work.
#27: Vladimir Botka (vbotka) (2010-05-18 20:22:08)
crda and wireless-regdb packages are available and functional in 11.3 .
New nl80211 extension must be used to set the country.
#34: Marius Tomaschewski (mtomaschewski) (2011-05-19 14:58:40)
Sysconfig package is in submit request 12203
(https://build.suse.de/request/show/12203) on the way to SLE-11-SP2:GA
#35: Vladimir Botka (vbotka) (2011-06-20 12:05:29)
wireless-regdb submitted to SUSE:SLE-11-SP2:GA with SRID 12958. It was
submitted with SRID 12417 in week 22, but was rejected with the comment
"/mounts/work_src_done/SLE11-SP2/wireless-regdb was not checked in by
bg for the following reasons: (submitrequest 12417 on
https://build.suse.de) please fix conflict marker in changelog. " Can
you help me to understand what does the "conflict marker in changelog"
mean in this case ?
--
openSUSE Feature:
https://features.opensuse.org/305301