<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/include/net/regulatory.h, branch linux-3.17.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-3.17.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-3.17.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2014-08-15T11:51:40Z</updated>
<entry>
<title>regulatory: add NUL to alpha2</title>
<updated>2014-08-15T11:51:40Z</updated>
<author>
<name>Eliad Peller</name>
<email>eliad@wizery.com</email>
</author>
<published>2014-06-11T07:23:35Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=a5fe8e7695dc3f547e955ad2b662e3e72969e506'/>
<id>urn:sha1:a5fe8e7695dc3f547e955ad2b662e3e72969e506</id>
<content type='text'>
alpha2 is defined as 2-chars array, but is used in multiple
places as string (e.g. with nla_put_string calls), which
might leak kernel data.

Solve it by simply adding an extra char for the NULL
terminator, making such operations safe.

Cc: stable@vger.kernel.org
Signed-off-by: Eliad Peller &lt;eliadx.peller@intel.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>cfg80211: Enable GO operation on additional channels</title>
<updated>2014-04-09T08:55:34Z</updated>
<author>
<name>Ilan Peer</name>
<email>ilan.peer@intel.com</email>
</author>
<published>2014-02-23T07:13:01Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=174e0cd28af0fe3c6c634c3e4d9e042c683bd7f7'/>
<id>urn:sha1:174e0cd28af0fe3c6c634c3e4d9e042c683bd7f7</id>
<content type='text'>
Allow GO operation on a channel marked with IEEE80211_CHAN_GO_CONCURRENT
iff there is an active station interface that is associated to
an AP operating on the same channel in the 2 GHz band or the same UNII band
(in the 5 GHz band). This relaxation is not allowed if the channel is
marked with IEEE80211_CHAN_RADAR.

Note that this is a permissive approach to the FCC definitions,
that require a clear assessment that the device operating the AP is
an authorized master, i.e., with radar detection and DFS capabilities.

It is assumed that such restrictions are enforced by user space.
Furthermore, it is assumed, that if the conditions that allowed for
the operation of the GO on such a channel change, i.e., the station
interface disconnected from the AP, it is the responsibility of user
space to evacuate the GO from the channel.

Signed-off-by: Ilan Peer &lt;ilan.peer@intel.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>cfg80211: regulatory: allow getting DFS CAC time from userspace</title>
<updated>2014-02-25T16:29:25Z</updated>
<author>
<name>Janusz Dziedzic</name>
<email>janusz.dziedzic@tieto.com</email>
</author>
<published>2014-02-21T18:46:12Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=089027e57cfa79337feffdd7252c8ba0be352afa'/>
<id>urn:sha1:089027e57cfa79337feffdd7252c8ba0be352afa</id>
<content type='text'>
Introduce DFS CAC time as a regd param, configured per REG_RULE and
set per channel in cfg80211. DFS CAC time is close connected with
regulatory database configuration. Instead of using hardcoded values,
get DFS CAC time form regulatory database. Pass DFS CAC time to user
mode (mainly for iw reg get, iw list, iw info). Allow setting DFS CAC
time via CRDA. Add support for internal regulatory database.

Signed-off-by: Janusz Dziedzic &lt;janusz.dziedzic@tieto.com&gt;
[rewrap commit log]
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>cfg80211: make regulatory_hint() remove REGULATORY_CUSTOM_REG</title>
<updated>2014-01-13T19:46:58Z</updated>
<author>
<name>Luis R. Rodriguez</name>
<email>mcgrof@do-not-panic.com</email>
</author>
<published>2013-12-14T19:09:06Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=4f7b91404cd5da3657a82b00394f4f5dfbff13d6'/>
<id>urn:sha1:4f7b91404cd5da3657a82b00394f4f5dfbff13d6</id>
<content type='text'>
The REGULATORY_CUSTOM_REG can be used during early init with
the goal of overriding the wiphy's default regulatory settings
in case the alpha2 of the device is not known. In the case that
the alpha2 becomes known lets avoid having drivers having to
clear the REGULATORY_CUSTOM_REG flag by doing it for them
when regulatory_hint() is used.

Cc: Sujith Manoharan &lt;c_manoha@qca.qualcomm.com&gt;
Signed-off-by: Luis R. Rodriguez &lt;mcgrof@do-not-panic.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>cfg80211: use enum nl80211_dfs_regions for dfs_region everywhere</title>
<updated>2013-11-25T19:52:12Z</updated>
<author>
<name>Luis R. Rodriguez</name>
<email>mcgrof@do-not-panic.com</email>
</author>
<published>2013-11-13T17:54:02Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=4c7d3982a6e37831382b9ef90aa0dbadc0bf3a22'/>
<id>urn:sha1:4c7d3982a6e37831382b9ef90aa0dbadc0bf3a22</id>
<content type='text'>
u8 was used in some other places, just stick to the enum,
this forces us to express the values that are expected.

Signed-off-by: Luis R. Rodriguez &lt;mcgrof@do-not-panic.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>cfg80211: add an option to disable processing country IEs</title>
<updated>2013-11-25T19:51:51Z</updated>
<author>
<name>Luis R. Rodriguez</name>
<email>mcgrof@do-not-panic.com</email>
</author>
<published>2013-11-11T21:15:31Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=2a901468c221e778af52603e006a53d286e81f90'/>
<id>urn:sha1:2a901468c221e778af52603e006a53d286e81f90</id>
<content type='text'>
Certain vendors may want to disable the processing of
country IEs so that they can continue using the regulatory
domain the driver or user has set.  Currently there is no
way to stop the core from processing country IEs, so add
support to the core to ignore country IE hints.

Cc: Mihir Shete &lt;smihir@qti.qualcomm.com&gt;
Cc: Henri Bahini &lt;hbahini@qca.qualcomm.com&gt;
Cc: Tushnim Bhattacharyya &lt;tushnimb@qca.qualcomm.com&gt;
Signed-off-by: Luis R. Rodriguez &lt;mcgrof@do-not-panic.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>cfg80211: add flags to define country IE processing rules</title>
<updated>2013-11-25T19:51:49Z</updated>
<author>
<name>Luis R. Rodriguez</name>
<email>mcgrof@do-not-panic.com</email>
</author>
<published>2013-11-11T21:15:30Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=a09a85a013523a8b572dc5732b5c30e0785195f3'/>
<id>urn:sha1:a09a85a013523a8b572dc5732b5c30e0785195f3</id>
<content type='text'>
802.11 cards may have different country IE parsing behavioural
preferences and vendors may want to support these. These preferences
were managed by the REGULATORY_CUSTOM_REG and the REGULATORY_STRICT_REG
flags and their combination. Instead of using this existing notation,
split out the country IE behavioural preferences as a new flag. This
will allow us to add more customizations easily and make the code more
maintainable.

Cc: Mihir Shete &lt;smihir@qti.qualcomm.com&gt;
Cc: Henri Bahini &lt;hbahini@qca.qualcomm.com&gt;
Cc: Tushnim Bhattacharyya &lt;tushnimb@qca.qualcomm.com&gt;
Signed-off-by: Luis R. Rodriguez &lt;mcgrof@do-not-panic.com&gt;
[fix up conflicts]
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>cfg80211: move regulatory flags to their own variable</title>
<updated>2013-11-25T19:51:46Z</updated>
<author>
<name>Luis R. Rodriguez</name>
<email>mcgrof@do-not-panic.com</email>
</author>
<published>2013-11-11T21:15:29Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=a2f73b6c5db3c272d87eaebb5bed355d75a0f25f'/>
<id>urn:sha1:a2f73b6c5db3c272d87eaebb5bed355d75a0f25f</id>
<content type='text'>
We'll expand this later, this will make it easier to
classify and review what things are related to regulatory
or not.

Coccinelle only missed 4 hits, which I had to do manually,
supplying the SmPL in case of merge conflicts.

@@
struct wiphy *wiphy;
@@
-wiphy-&gt;flags |= WIPHY_FLAG_CUSTOM_REGULATORY
+wiphy-&gt;regulatory_flags |= REGULATORY_CUSTOM_REG
@@
expression e;
@@
-e-&gt;flags |= WIPHY_FLAG_CUSTOM_REGULATORY
+e-&gt;regulatory_flags |= REGULATORY_CUSTOM_REG
@@
struct wiphy *wiphy;
@@
-wiphy-&gt;flags &amp;= ~WIPHY_FLAG_CUSTOM_REGULATORY
+wiphy-&gt;regulatory_flags &amp;= ~REGULATORY_CUSTOM_REG
@@
struct wiphy *wiphy;
@@
-wiphy-&gt;flags &amp; WIPHY_FLAG_CUSTOM_REGULATORY
+wiphy-&gt;regulatory_flags &amp; REGULATORY_CUSTOM_REG

@@
struct wiphy *wiphy;
@@
-wiphy-&gt;flags |= WIPHY_FLAG_STRICT_REGULATORY
+wiphy-&gt;regulatory_flags |= REGULATORY_STRICT_REG
@@
expression e;
@@
-e-&gt;flags |= WIPHY_FLAG_STRICT_REGULATORY
+e-&gt;regulatory_flags |= REGULATORY_STRICT_REG
@@
struct wiphy *wiphy;
@@
-wiphy-&gt;flags &amp;= ~WIPHY_FLAG_STRICT_REGULATORY
+wiphy-&gt;regulatory_flags &amp;= ~REGULATORY_STRICT_REG
@@
struct wiphy *wiphy;
@@
-wiphy-&gt;flags &amp; WIPHY_FLAG_STRICT_REGULATORY
+wiphy-&gt;regulatory_flags &amp; REGULATORY_STRICT_REG

@@
struct wiphy *wiphy;
@@
-wiphy-&gt;flags |= WIPHY_FLAG_DISABLE_BEACON_HINTS
+wiphy-&gt;regulatory_flags |= REGULATORY_DISABLE_BEACON_HINTS
@@
expression e;
@@
-e-&gt;flags |= WIPHY_FLAG_DISABLE_BEACON_HINTS
+e-&gt;regulatory_flags |= REGULATORY_DISABLE_BEACON_HINTS
@@
struct wiphy *wiphy;
@@
-wiphy-&gt;flags &amp;= ~WIPHY_FLAG_DISABLE_BEACON_HINTS
+wiphy-&gt;regulatory_flags &amp;= ~REGULATORY_DISABLE_BEACON_HINTS
@@
struct wiphy *wiphy;
@@
-wiphy-&gt;flags &amp; WIPHY_FLAG_DISABLE_BEACON_HINTS
+wiphy-&gt;regulatory_flags &amp; REGULATORY_DISABLE_BEACON_HINTS

Generated-by: Coccinelle SmPL
Cc: Julia Lawall &lt;julia.lawall@lip6.fr&gt;
Cc: Peter Senna Tschudin &lt;peter.senna@gmail.com&gt;
Cc: Mihir Shete &lt;smihir@qti.qualcomm.com&gt;
Cc: Henri Bahini &lt;hbahini@qca.qualcomm.com&gt;
Cc: Tushnim Bhattacharyya &lt;tushnimb@qca.qualcomm.com&gt;
Signed-off-by: Luis R. Rodriguez &lt;mcgrof@do-not-panic.com&gt;
[fix up whitespace damage, overly long lines]
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>regulatory: use RCU to protect last_request</title>
<updated>2013-01-03T12:01:30Z</updated>
<author>
<name>Johannes Berg</name>
<email>johannes.berg@intel.com</email>
</author>
<published>2012-12-06T15:29:25Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=c492db370c17c428a0a58d3673294d4e99634b7d'/>
<id>urn:sha1:c492db370c17c428a0a58d3673294d4e99634b7d</id>
<content type='text'>
This will allow making freq_reg_info() lock-free.

Acked-by: Luis R. Rodriguez &lt;mcgrof@do-not-panic.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>regulatory: use RCU to protect global and wiphy regdomains</title>
<updated>2013-01-03T12:01:29Z</updated>
<author>
<name>Johannes Berg</name>
<email>johannes.berg@intel.com</email>
</author>
<published>2012-12-06T14:47:38Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=458f4f9e960b9a3b674c4b87d996eef186b1fe83'/>
<id>urn:sha1:458f4f9e960b9a3b674c4b87d996eef186b1fe83</id>
<content type='text'>
To simplify the locking and not require cfg80211_mutex
(which nl80211 uses to access the global regdomain) and
also to make it possible for drivers to access their
wiphy-&gt;regd safely, use RCU to protect these pointers.

Acked-by: Luis R. Rodriguez &lt;mcgrof@do-not-panic.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
</feed>
