Mailinglist Archive: opensuse-features (327 mails)

< Previous Next >
[openFATE 305301] Central Regulatory Domain Agent (for 802.11)
  • From: fate_noreply@xxxxxxx
  • Date: Wed, 9 Sep 2009 22:43:20 +0200 (CEST)
  • Message-id: <feature-305301-31@xxxxxxxxxxxxxx>
Feature changed by: Marius Tomaschewski (mtomaschewski)
Feature #305301, revision 31
Title: Central Regulatory Domain Agent (for 802.11)

openSUSE-11.2: Evaluation
Priority
Requester: Important
Projectmanager: Important

Requested by: Vladimir Botka (vbotka)

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

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

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 <ISO/IEC 3166-1 alpha2>
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.



--
openSUSE Feature:
https://features.opensuse.org/305301

< Previous Next >
This Thread
References