<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/include/net/regulatory.h, branch linux-4.15.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-4.15.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-4.15.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2014-12-17T10:49:55Z</updated>
<entry>
<title>cfg80211: allow wiphy specific regdomain management</title>
<updated>2014-12-17T10:49:55Z</updated>
<author>
<name>Jonathan Doron</name>
<email>jond@wizery.com</email>
</author>
<published>2014-12-15T17:26:00Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=b0d7aa59592b4270531de5ce65dcf18338a2d98c'/>
<id>urn:sha1:b0d7aa59592b4270531de5ce65dcf18338a2d98c</id>
<content type='text'>
Add a new regulatory flag that allows a driver to manage regdomain
changes/updates for its own wiphy.
A self-managed wiphys only employs regulatory information obtained from
the FW and driver and does not use other cfg80211 sources like
beacon-hints, country-code IEs and hints from other devices on the same
system. Conversely, a self-managed wiphy does not share its regulatory
hints with other devices in the system. If a system contains several
devices, one or more of which are self-managed, there might be
contradictory regulatory settings between them. Usage of flag is
generally discouraged. Only use it if the FW/driver is incompatible
with non-locally originated hints.

A new API lets the driver send a complete regdomain, to be applied on
its wiphy only.

After a wiphy-specific regdomain change takes place, usermode will get
a new type of change notification. The regulatory core also takes care
enforce regulatory restrictions, in case some interfaces are on
forbidden channels.

Signed-off-by: Jonathan Doron &lt;jonathanx.doron@intel.com&gt;
Signed-off-by: Arik Nemtsov &lt;arikx.nemtsov@intel.com&gt;
Reviewed-by: Luis R. Rodriguez &lt;mcgrof@suse.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>cfg80211: leave invalid channels on regdomain change</title>
<updated>2014-11-28T13:33:41Z</updated>
<author>
<name>Arik Nemtsov</name>
<email>arik@wizery.com</email>
</author>
<published>2014-11-27T07:44:55Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=ad932f046fbe9839479350e7b88082a7d1dea498'/>
<id>urn:sha1:ad932f046fbe9839479350e7b88082a7d1dea498</id>
<content type='text'>
When the regulatory settings change, some channels might become invalid.
Disconnect interfaces acting on these channels, after giving userspace
code a grace period to leave them.

This mode is currently opt-in, and not all interface operating modes are
supported for regulatory-enforcement checks. A wiphy that wishes to use
the new enforcement code must specify an appropriate regulatory flag,
and all its supported interface modes must be supported by the checking
code.

Signed-off-by: Arik Nemtsov &lt;arikx.nemtsov@intel.com&gt;
Reviewed-by: Luis R. Rodriguez &lt;mcgrof@suse.com&gt;
[fix some indentation, typos]
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<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>
</feed>
