]> git.ipfire.org Git - thirdparty/iw.git/log
thirdparty/iw.git
4 months agoupdate nl80211.h main master
Johannes Berg [Thu, 21 Dec 2023 19:42:17 +0000 (20:42 +0100)] 
update nl80211.h

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
4 months agobump version to 6.7 v6.7
Johannes Berg [Thu, 21 Dec 2023 11:51:14 +0000 (12:51 +0100)] 
bump version to 6.7

This already has some "will be 6.8" content, but
that's not entirely closed yet.

Change-Id: I16beefdf8b5e37fc72948d8a874772dc8c97e7b2
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
4 months agoupdate nl80211.h
Johannes Berg [Thu, 21 Dec 2023 11:47:01 +0000 (12:47 +0100)] 
update nl80211.h

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
4 months agoiw: allow extra cflags
Johannes Berg [Fri, 1 Sep 2023 05:50:02 +0000 (07:50 +0200)] 
iw: allow extra cflags

We can override the entirety of CFLAGS from the make
command line, but not add e.g. -Werror. Append a new
EXTRA_CFLAGS to make that possible.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
5 months agoiw: S1G: add 802.11ah support for link command display
Bassem Dawood [Thu, 19 Oct 2023 07:40:19 +0000 (18:40 +1100)] 
iw: S1G: add 802.11ah support for link command display

Amending the link command which depends on kernal changes for
802.11ah bandwidths/MCS/NSS NL80211_RATE_INFO_ attributes.

S1G frequency offset being used as well for the MHz units print.

Signed-off-by: Bassem Dawood <bassem@morsemicro.com>
Link: https://lore.kernel.org/r/20231019074019.2246629-1-bassem@morsemicro.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
8 months agoupdate nl80211.h
Johannes Berg [Thu, 24 Aug 2023 07:19:47 +0000 (09:19 +0200)] 
update nl80211.h

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
8 months agoiw: connect: Fix segfault during open authentication
Chaitanya Tata [Wed, 26 Jul 2023 19:22:45 +0000 (00:52 +0530)] 
iw: connect: Fix segfault during open authentication

The check for remaining arguments is done after decrement effectively
bypassing the non-zero check and causes a segfault with below command:

  "connect <SSID> auth open/shared".

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
Link: https://lore.kernel.org/r/20230726192245.100897-1-Chaitanya.Tata@nordicsemi.no
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
8 months agoiw: fix attribute size mismatch
Koen Vandeputte [Fri, 7 Jul 2023 14:48:26 +0000 (16:48 +0200)] 
iw: fix attribute size mismatch

NL80211_ATTR_MAX_AP_ASSOC_STA gets packed as u32 in the kernel.
Change the receiving side to match this, or it will be wrong
on big-endian.

Signed-off-by: Koen Vandeputte <koen.vandeputte@citymesh.com>
Link: https://lore.kernel.org/r/20230707144826.3043151-1-koen.vandeputte@citymesh.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
8 months agoiw: add more extended capa bits
Emmanuel Grumbach [Wed, 23 Aug 2023 10:10:02 +0000 (13:10 +0300)] 
iw: add more extended capa bits

Those were missing

While at it, fix a bug in the default case, we want to print the actual
bit offset which is bit + base.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
8 months agoiw: Fix EHT rates printing.
Ben Greear [Tue, 16 May 2023 18:02:38 +0000 (11:02 -0700)] 
iw: Fix EHT rates printing.

The 20Mhz rates thing is a union with the others, so print one or
the other.  This appears to fix the output of the mcs/bw printout.

Signed-off-by: Ben Greear <greearb@candelatech.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
12 months agoiw: S1G: add list command support for 802.11ah
Gilad Itzkovitch [Mon, 27 Feb 2023 23:11:24 +0000 (12:11 +1300)] 
iw: S1G: add list command support for 802.11ah

In this changeset S1G frequencies are displayed for any S1G band
with their relevant properties.

Signed-off-by: Gilad Itzkovitch <gilad.itzkovitch@morsemicro.com>
Link: https://lore.kernel.org/r/20230227231124.711053-1-gilad.itzkovitch@virscient.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
12 months agoiw: S1G: add parsing for 802.11ah scan IE's
Gilad Itzkovitch [Mon, 27 Feb 2023 23:01:27 +0000 (12:01 +1300)] 
iw: S1G: add parsing for 802.11ah scan IE's

In order to support scan display for 802.11ah, this change adds
parsing for S1G capabilities, operation, and short beacon interval
information elements.

Signed-off-by: Gilad Itzkovitch <gilad.itzkovitch@morsemicro.com>
Link: https://lore.kernel.org/r/20230227230127.709496-1-gilad.itzkovitch@virscient.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
12 months agoiw: S1G: add frequency set in kHz and offset options
Gilad Itzkovitch [Mon, 27 Feb 2023 02:05:29 +0000 (15:05 +1300)] 
iw: S1G: add frequency set in kHz and offset options

This change adds support to specify the set frequency in kHz for
the set frequency command which include an offset whenever needed.
Also, it adds S1G bandwidth options to the selected chandef.

Signed-off-by: Gilad Itzkovitch <gilad.itzkovitch@morsemicro.com>
Link: https://lore.kernel.org/r/20230227020529.504934-1-gilad.itzkovitch@virscient.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
12 months agoutil: don't print EHT info if not present
Johannes Berg [Wed, 15 Mar 2023 15:08:22 +0000 (16:08 +0100)] 
util: don't print EHT info if not present

That's just confusing, don't print it if the EHT MAC
capabilities attribute isn't there (the kernel puts
all the attrs together.)

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
12 months agointerface: print links
Johannes Berg [Fri, 2 Sep 2022 19:59:31 +0000 (21:59 +0200)] 
interface: print links

Print link information in 'iw dev' and 'iw ... info'.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
12 months agolink: update for MLO
Johannes Berg [Wed, 31 Aug 2022 20:35:02 +0000 (22:35 +0200)] 
link: update for MLO

In MLO we need to use the MLD address to get the station
statistics (which still need work for per-link stats),
adjust the code.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
12 months agolink: fix some formatting
Johannes Berg [Wed, 31 Aug 2022 19:13:11 +0000 (21:13 +0200)] 
link: fix some formatting

The bss flags has a spurious newline, and we don't use a
tab for indentation after the colon in other places, fix
that here.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
12 months agoiw: scan: set NL80211_SCAN_FLAG_COLOCATED_6GHZ in case of full sched scan
Ayala Beker [Thu, 14 Jul 2022 06:33:36 +0000 (09:33 +0300)] 
iw: scan: set NL80211_SCAN_FLAG_COLOCATED_6GHZ in case of full sched scan

Same as in regular scan, in case of full sched scan need to set
NL80211_SCAN_FLAG_COLOCATED_6GHZ flag, to scan for collocated
APs by default.

Signed-off-by: Ayala Beker <ayala.beker@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
12 months agoutil: add support for 320MHz bandwidth without cf1
Mordechay Goodstein [Sun, 29 May 2022 16:29:55 +0000 (19:29 +0300)] 
util: add support for 320MHz bandwidth without cf1

Based on user input for control central freq and 320 BW find the data
central freq (cf1).

Signed-off-by: Mordechay Goodstein <mordechay.goodstein@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
12 months agoutil: add support for 320Mhz bandwidth
Mordechay Goodstein [Sun, 29 May 2022 16:29:55 +0000 (19:29 +0300)] 
util: add support for 320Mhz bandwidth

In the new standard 11be we can set up to 320Mhz bandwidth so add it
in parsing params.

Signed-off-by: Mordechay Goodstein <mordechay.goodstein@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
12 months agoupdate nl80211.h
Johannes Berg [Fri, 14 Apr 2023 10:50:11 +0000 (12:50 +0200)] 
update nl80211.h

Bring in nl80211.h from 6.4-rc.

Change-Id: I96b818a987d243b5cf97e2cc9c62d57637e17165
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
14 months agoiw: event: fix printf format error
Stefan Weil [Sat, 21 Jan 2023 19:36:37 +0000 (20:36 +0100)] 
iw: event: fix printf format error

tv_usec can be a 64 bit integer which causes a compiler warning:

event.c: In function 'print_event':
event.c:930:41: warning: format '%lu' expects argument of type 'long unsigned int', but argument 3 has type 'suseconds_t' {aka 'long long int'} [-Wformat=]
  930 |                         printf("[%s.%06lu]: ", buf, args->ts.tv_usec);
      |                                     ~~~~^           ~~~~~~~~~~~~~~~~
      |                                         |                   |
      |                                         long unsigned int   suseconds_t {aka long long int}
      |                                     %06llu

Signed-off-by: Stefan Weil <sw@weilnetz.de>
Link: https://lore.kernel.org/r/20230121193637.347109-1-sw@weilnetz.de
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
15 months agoiw: add support for retrieving keys
Raphaël Mélotte [Thu, 12 Jan 2023 12:25:25 +0000 (13:25 +0100)] 
iw: add support for retrieving keys

For debugging purposes, it can be useful to be able to retrieve keys.

Add a "iw key get" command, to be able to retrieve keys when the key
index is known. A new "key" section is also introduced, in preparation
for future key-related commands.

Example retrieving a pairwise key:
iw dev wlan0 key get 0 02:02:03:04:05:06

Example retrieving a group key:
iw dev wlan0 key get 1

Note that only the outer ATTR_KEY_DATA (and seq) is reported, the
nested KEY_DATA (and seq) within ATTR_KEY is not.

Signed-off-by: Raphaël Mélotte <raphael.melotte@mind.be>
Link: https://lore.kernel.org/r/20230112122525.2257298-1-raphael.melotte@mind.be
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
15 months agoiw: info: fix bug reading preambles and bandwidths
Jaewan Kim [Mon, 9 Jan 2023 15:14:55 +0000 (00:14 +0900)] 
iw: info: fix bug reading preambles and bandwidths

Preambles and bandwidths values are considered as bit shifts
when they're are used for capabilities.

Signed-off-by: Jaewan Kim <jaewan@google.com>
Link: https://lore.kernel.org/r/20230109151455.325793-1-jaewan@google.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
16 months agoiw: add cac background command
Janusz Dziedzic [Thu, 25 Aug 2022 09:51:11 +0000 (11:51 +0200)] 
iw: add cac background command

Add command that request background CAC radar scan.
Tested on mt7915.

Signed-off-by: Janusz Dziedzic <janusz.dziedzic@gmail.com>
Link: https://lore.kernel.org/r/20220825095111.1026649-1-janusz.dziedzic@gmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
16 months agoiw: info: print PMSR capabilities
Jaewan Kim [Tue, 11 Oct 2022 05:34:05 +0000 (14:34 +0900)] 
iw: info: print PMSR capabilities

Print PMSR and FTM capabilities if any.

Signed-off-by: Jaewan Kim <jaewan@google.com>
Link: https://lore.kernel.org/r/20221011053405.332375-1-jaewan@google.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
23 months agobump version to 5.19 v5.19
Johannes Berg [Fri, 27 May 2022 10:23:45 +0000 (12:23 +0200)] 
bump version to 5.19

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
23 months agoinfo: refactor extended features
Johannes Berg [Fri, 27 May 2022 10:22:34 +0000 (12:22 +0200)] 
info: refactor extended features

Refactor the printing here to use a switch statement,
so we get a warning for unhandled features.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
23 months agoinfo: add missing extended features
Johannes Berg [Fri, 27 May 2022 09:43:47 +0000 (11:43 +0200)] 
info: add missing extended features

Add missing extended features and sort them for easier
comparison.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
23 months agoupdate nl80211.h
Johannes Berg [Fri, 27 May 2022 09:30:43 +0000 (11:30 +0200)] 
update nl80211.h

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
23 months agoiw: handle VHT extended NSS
Maxime Bizon [Mon, 16 May 2022 09:07:56 +0000 (11:07 +0200)] 
iw: handle VHT extended NSS

No change in "Supported Channel Width" output format when extended NSS
is not supported.

Sample output for a PHY with 1/2 NSS ratio:

VHT Capabilities (0xb39b79f2):
Max MPDU length: 11454
Supported Channel Width: 160Mhz (1/2 NSS) 80+80Mhz (1/2 NSS)
[...]
VHT extended NSS: supported

Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
Link: https://lore.kernel.org/r/405f5ed2c434846f8ab2730b34288c5f649b8915.camel@freebox.fr
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
23 months agoiw: fix 'upto' -> 'up to'
Diederik de Haas [Sat, 23 Apr 2022 17:54:51 +0000 (19:54 +0200)] 
iw: fix 'upto' -> 'up to'

As reported by Debian's lintian tool.

Signed-off-by: Diederik de Haas <didi.debian@cknow.org>
Link: https://lore.kernel.org/r/20220423175451.27215-1-didi.debian@cknow.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
23 months agoiw: fix double tab in mesh path header
Diederik de Haas [Sat, 23 Apr 2022 16:09:22 +0000 (18:09 +0200)] 
iw: fix double tab in mesh path header

As reported in https://bugs.debian.org/974833, the double tab char
causes a mismatch of the header and contents after 'EXPTIME'.

Signed-off-by: Diederik de Haas <didi.debian@cknow.org>
Link: https://lore.kernel.org/r/20220423160922.14952-1-didi.debian@cknow.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agostation: print EHT rate information
Johannes Berg [Fri, 11 Feb 2022 14:00:55 +0000 (15:00 +0100)] 
station: print EHT rate information

Print the EHT rate information if present.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: Print local EHT capabilities
Ilan Peer [Tue, 13 Jul 2021 08:39:20 +0000 (11:39 +0300)] 
iw: Print local EHT capabilities

Signed-off-by: Ilan Peer <ilan.peer@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: support 160MHz frequency command for 6GHz band
Deren Wu [Sat, 12 Mar 2022 09:09:04 +0000 (17:09 +0800)] 
iw: support 160MHz frequency command for 6GHz band

Add support to configure 160MHz in 6G band by direct
channel/frequency command.

Example:
iw dev <interface> set freq 6195 160MHz

Signed-off-by: Deren Wu <deren.wu@mediatek.com>
Link: https://lore.kernel.org/r/4366b069d41f469c36554c8dcfc857b5aedf3e1d.1647075278.git.deren.wu@mediatek.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: print out assoc comeback event
Ben Greear [Thu, 7 Apr 2022 23:58:26 +0000 (16:58 -0700)] 
iw: print out assoc comeback event

Looks like this was added in 5.17 kernel.  We see this event
when trying (and failing) to do .11r roaming).

Signed-off-by: Ben Greear <greearb@candelatech.com>
Link: https://lore.kernel.org/r/20220407235826.2690-1-greearb@candelatech.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: print Radar background capability if supported
Lorenzo Bianconi [Thu, 10 Mar 2022 10:46:56 +0000 (11:46 +0100)] 
iw: print Radar background capability if supported

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://lore.kernel.org/r/1661d4de358d5ff8f6f8350eb165acf08f870951.1646909094.git.lorenzo@kernel.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoupdate nl80211.h
Johannes Berg [Fri, 11 Mar 2022 10:49:25 +0000 (11:49 +0100)] 
update nl80211.h

Change-Id: I7888629f670e585c3b04b7e9ca4ca63cbf5746cb
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: survey: add support for radio stats
Johannes Berg [Fri, 29 Oct 2021 07:29:39 +0000 (09:29 +0200)] 
iw: survey: add support for radio stats

Add a --radio argument to "survey dump" to support the global
radio statistics.

Change-Id: I16e615434607d982e9cf690f03148738eca25cde
Tested-by: Sven Eckelmann <sven@narfation.org>
Link: https://lore.kernel.org/r/20211029072939.15767-1-johannes@sipsolutions.net
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: event: report missing radar events
Lorenzo Bianconi [Fri, 12 Nov 2021 16:50:34 +0000 (17:50 +0100)] 
iw: event: report missing radar events

Properly report the two following radar events:
- NL80211_RADAR_PRE_CAC_EXPIRED
- NL80211_RADAR_CAC_STARTED

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://lore.kernel.org/r/6a7cd7bd2179578335cc95b158faf21ba3f7876a.1636730634.git.lorenzo@kernel.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agobump version to 5.16 v5.16
Johannes Berg [Mon, 8 Nov 2021 08:58:10 +0000 (09:58 +0100)] 
bump version to 5.16

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoinfo: add FILS_CRYPTO_OFFLOAD extended feature
Johannes Berg [Mon, 8 Nov 2021 08:43:10 +0000 (09:43 +0100)] 
info: add FILS_CRYPTO_OFFLOAD extended feature

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoupdate nl80211.h
Johannes Berg [Mon, 8 Nov 2021 08:42:47 +0000 (09:42 +0100)] 
update nl80211.h

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: print BSS coloring capability if supported
Lorenzo Bianconi [Thu, 21 Oct 2021 10:19:57 +0000 (12:19 +0200)] 
iw: print BSS coloring capability if supported

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://lore.kernel.org/r/a935a11cabe630100385005b0c2bee9110fb9572.1634811514.git.lorenzo@kernel.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: add set sar_specs command
Zong-Zhe Yang [Thu, 7 Oct 2021 08:56:15 +0000 (16:56 +0800)] 
iw: add set sar_specs command

Add set sar_specs command

usage: iw <phy> set sar_specs <sar type> <range index:sar power>*
e.g.
iw phy0 set sar_specs 0 0:100 1:90 2:80...
where sar type should correspond to wiphy's sar_capa,
and range index should be valid in wiphy's sar_capa.

For now, kernel sar type supports only 0 (NL80211_SAR_TYPE_POWER)
which means that the sar power limitation is specified in 0.25dBm unit.

Cc: Carl Huang <cjhuang@codeaurora.org>
Signed-off-by: Zong-Zhe Yang <kevin_yang@realtek.com>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Link: https://lore.kernel.org/r/20211007085615.40399-1-pkshih@realtek.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: nl80211: add NLA_F_NESTED to nla_nest_start() with older libnl versions
Gokul Sivakumar [Fri, 10 Sep 2021 14:16:15 +0000 (19:46 +0530)] 
iw: nl80211: add NLA_F_NESTED to nla_nest_start() with older libnl versions

It is noticed in Kernel version 5.14.0-rc4+, that when sending the NL cmd
NL80211_CMD_SET_TID_CONFIG with nested attrs under NL80211_ATTR_TID_CONFIG,
kernel returnes a response with the error "NLA_F_NESTED is missing".

 $ sudo ./iw dev wlan0 set tidconf tids 0x1 ampdu on
 kernel reports: NLA_F_NESTED is missing
 command failed: Invalid argument (-22))

Fix this by setting NLA_F_NESTED flag everytime when using nla_nest_start()
library function. This is needed to make cfg80211 allow the nl80211 command
NL80211_ATTR_TID_CONFIG in the new kernel versions that enforce netlink
attribute policy validation.

Signed-off-by: Gokul Sivakumar <gokulkumar792@gmail.com>
Link: https://lore.kernel.org/r/20210910141618.1594617-1-gokulkumar792@gmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: mesh: add comments in the mesh confguration parameter printing sections
Gokul Sivakumar [Fri, 10 Sep 2021 14:16:18 +0000 (19:46 +0530)] 
iw: mesh: add comments in the mesh confguration parameter printing sections

Signed-off-by: Gokul Sivakumar <gokulkumar792@gmail.com>
Link: https://lore.kernel.org/r/20210910141618.1594617-4-gokulkumar792@gmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: event: add the missing time display format in the "iw event" help menu
Gokul Sivakumar [Fri, 10 Sep 2021 14:16:17 +0000 (19:46 +0530)] 
iw: event: add the missing time display format in the "iw event" help menu

The option used to print the events with timestamp in Human readable format
is not listed in the "$ iw event -h" output.

 $ ./iw event -h
 Usage:  ./iw [options] event [-t|-r] [-f] [-n]
 ...

So add "-T" option to the help menu.

 $ ./iw event -h
 Usage:  ./iw [options] event [-t|-T|-r] [-f] [-n]
 ...

Signed-off-by: Gokul Sivakumar <gokulkumar792@gmail.com>
Link: https://lore.kernel.org/r/20210910141618.1594617-3-gokulkumar792@gmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: link: mention the need for MAC addr arg in link get_sta cmd usage menu
Gokul Sivakumar [Fri, 10 Sep 2021 14:16:16 +0000 (19:46 +0530)] 
iw: link: mention the need for MAC addr arg in link get_sta cmd usage menu

The usage menu shown when running the hidden "link get_sta" command is not
mentioning the need for the MAC address argument. Without this, the cmd is
always failing with the output shown below.

 $ ./iw dev wlan0 link get_sta
 Usage:  ./iw [options] dev <devname> link get_sta
 ...

To avoid this, let the user know about the mandatory "MAC address" argument
like below.

 $ ./iw dev wlan0 link get_sta
 Usage:  ./iw [options] dev <devname> link get_sta <mac-addr>
 ...

Signed-off-by: Gokul Sivakumar <gokulkumar792@gmail.com>
Link: https://lore.kernel.org/r/20210910141618.1594617-2-gokulkumar792@gmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: fix vendor event static warnings
Johannes Berg [Wed, 8 Sep 2021 07:35:26 +0000 (09:35 +0200)] 
iw: fix vendor event static warnings

The vendor event section/descriptors can all be static,
adjust the macro accordingly.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: fix various sparse static warnings
Johannes Berg [Wed, 8 Sep 2021 07:34:20 +0000 (09:34 +0200)] 
iw: fix various sparse static warnings

The section macro must be non-static, but many of them
are not used outside a single file. Still declare all of
the sections so that the warnings go away.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: make parse_he_gi static
Johannes Berg [Wed, 8 Sep 2021 07:30:32 +0000 (09:30 +0200)] 
iw: make parse_he_gi static

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: add support for configuring the bss color for ranging measurements
Avraham Stern [Wed, 3 Feb 2021 09:32:35 +0000 (04:32 -0500)] 
iw: add support for configuring the bss color for ranging measurements

NDP ranging requires the BSS color as a parameter. Add it to the
measurement request config file parameters.

Signed-off-by: Avraham Stern <avraham.stern@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: update nl80211.h
Johannes Berg [Wed, 8 Sep 2021 07:27:29 +0000 (09:27 +0200)] 
iw: update nl80211.h

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: use cipher suite defines in util.c
Johannes Berg [Wed, 8 Sep 2021 07:23:09 +0000 (09:23 +0200)] 
iw: use cipher suite defines in util.c

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: add cipher suites definitions
Avraham Stern [Wed, 27 May 2020 08:33:52 +0000 (04:33 -0400)] 
iw: add cipher suites definitions

Signed-off-by: Avraham Stern <avraham.stern@intel.com>
2 years agoiw: unify interface type list printing
Johannes Berg [Wed, 18 Aug 2021 12:22:57 +0000 (14:22 +0200)] 
iw: unify interface type list printing

Add two new functions print_iftype_list() and print_iftype_line()
to print interface lists, and use them where applicable.

Link: https://lore.kernel.org/r/20210818142256.3325c72c65e4.I844f8e382b0ecee00c21886342d0bfd70e246a9f@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: mesh: add new cmd to dump all the supported mesh config params at once
Gokul Sivakumar [Thu, 5 Aug 2021 15:38:07 +0000 (21:08 +0530)] 
iw: mesh: add new cmd to dump all the supported mesh config params at once

The function print_mesh_param_handler() already supports printing all the
mesh config params when not passing one specific parameter, so add a new
"mesh_param dump" command to help the user see all the parameters at once.

$ iw dev mesh0 mesh_param dump
mesh_retry_timeout = 100 milliseconds
mesh_confirm_timeout = 100 milliseconds
mesh_holding_timeout = 100 milliseconds
mesh_max_peer_links = 99
mesh_max_retries = 3
mesh_ttl = 31
mesh_element_ttl = 31
mesh_auto_open_plinks = 0
mesh_hwmp_max_preq_retries = 4
mesh_path_refresh_time = 1000 milliseconds
mesh_min_discovery_timeout = 100 milliseconds
mesh_hwmp_active_path_timeout = 5000 TUs
mesh_hwmp_preq_min_interval = 10 TUs
mesh_hwmp_net_diameter_traversal_time = 50 TUs
mesh_hwmp_rootmode = 0
mesh_hwmp_rann_interval = 5000 TUs
mesh_gate_announcements = 0
mesh_fwding = 1
mesh_sync_offset_max_neighor = 50
mesh_rssi_threshold = 0 dBm
mesh_hwmp_active_path_to_root_timeout = 6000 TUs
mesh_hwmp_root_interval = 5000 TUs
mesh_hwmp_confirmation_interval = 2000 TUs
mesh_power_mode = active
mesh_awake_window = 10 TUs
mesh_plink_timeout = 0 seconds
mesh_connected_to_gate = 0

Signed-off-by: Gokul Sivakumar <gokulkumar792@gmail.com>
Link: https://lore.kernel.org/r/20210805153807.645106-2-gokulkumar792@gmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: mesh: fix crash when attempting to print the conf param "mesh_nolearn"
Gokul Sivakumar [Thu, 5 Aug 2021 15:38:06 +0000 (21:08 +0530)] 
iw: mesh: fix crash when attempting to print the conf param "mesh_nolearn"

Even if iw did not receive some of the meshconf attributes in response to
NL80211_CMD_GET_MESH_PARAMS, it tries to print that param and gets crashed.
Fix this by adding a condition check before trying to access each of the
mesh conf params.

$ iw dev mesh0 get mesh_param mesh_nolearn
Segmentation fault (core dumped)

 (gdb) bt
 #0  0x00007f21f54660e9 in nla_get_u8 () from /lib/x86_64-linux-gnu/libnl-3.so.200
 #1  0x0000562ba2f5d70d in _print_u8 (a=<optimized out>) at mesh.c:131
 #2  0x0000562ba2f5d7ce in print_mesh_param_handler (msg=<optimized out>,
     arg=0x562ba2f85758 <_mesh_param_descrs+1080>) at mesh.c:412
 #3  0x00007f21f546db9c in nl_recvmsgs_report () from /lib/x86_64-linux-gnu/libnl-3.so.200
 #4  0x00007f21f546e059 in nl_recvmsgs () from /lib/x86_64-linux-gnu/libnl-3.so.200
 #5  0x0000562ba2f5bb3b in __handle_cmd (state=0x7ffe677bc510, idby=II_NETDEV, argc=<optimized out>,
     argv=<optimized out>, cmdout=0x7ffe677bc508) at iw.c:541
 #6  0x0000562ba2f4fe0c in __handle_cmd (cmdout=0x7ffe677bc508, argv=0x7ffe677bc658, argc=4, idby=II_NETDEV,
     state=0x7ffe677bc510) at iw.c:613
 #7  main (argc=4, argv=0x7ffe677bc658) at iw.c:613
 (gdb) up 2
 #2  0x0000562ba2f5d7ce in print_mesh_param_handler (msg=<optimized out>,
     arg=0x562ba2f85758 <_mesh_param_descrs+1080>) at mesh.c:412
 412             mdescr->nla_print_fn(mesh_params[mdescr->mesh_param_num]);
 (gdb) i local
 mdescr = 0x562ba2f85758 <_mesh_param_descrs+1080>
 attrs = {0x0 <repeats 35 times>, 0x562ba4002a14, 0x0 <repeats 266 times>}
 parent_attr = <optimized out>
 mesh_params = {0x0, 0x562ba4002a20, 0x562ba4002a28, 0x562ba4002a30, 0x562ba4002a38, 0x562ba4002a40,
   0x562ba4002a48, 0x562ba4002a58, 0x562ba4002a68, 0x562ba4002a70, 0x562ba4002a78, 0x562ba4002a80,
   0x562ba4002a88, 0x562ba4002a98, 0x562ba4002aa0, 0x562ba4002a50, 0x562ba4002aa8, 0x562ba4002ab0,
   0x562ba4002a90, 0x562ba4002ab8, 0x562ba4002ac0, 0x562ba4002a60, 0x562ba4002ac8, 0x562ba4002ad0,
   0x562ba4002ad8, 0x562ba4002ae0, 0x562ba4002ae8, 0x562ba4002af0, 0x562ba4002af8, 0x562ba4002b00, 0x0, 0x0}
 gnlh = 0x562ba4002a10
 (gdb)
 (gdb) p mesh_params[30]
 $7 = (struct nlattr *) 0x0
 (gdb)

Signed-off-by: Gokul Sivakumar <gokulkumar792@gmail.com>
Link: https://lore.kernel.org/r/20210805153807.645106-1-gokulkumar792@gmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: ps: fix "get power_save" documentation
Johannes Berg [Thu, 1 Jul 2021 16:09:45 +0000 (18:09 +0200)] 
iw: ps: fix "get power_save" documentation

This doesn't take any arguments, remove the "<param>"
string from the help.

Link: https://lore.kernel.org/r/20210701180945.45abdb0d4f52.Ifdc6ce8fdbf252019c080f609b6d95cec23d84ee@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2 years agoiw: add option to set auth type for connect
Jianhui Zhao [Sun, 30 May 2021 11:25:52 +0000 (19:25 +0800)] 
iw: add option to set auth type for connect

Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
Link: https://lore.kernel.org/r/20210530112552.577329-1-zhaojh329@gmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoupdate nl80211.h
Johannes Berg [Fri, 16 Apr 2021 09:32:41 +0000 (11:32 +0200)] 
update nl80211.h

Change-Id: Iff1e25d95a61a35fabd68fd94260e65909b14bd6
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: allow specifying CFLAGS/LIBS externally
Johannes Berg [Mon, 16 Nov 2020 09:43:12 +0000 (10:43 +0100)] 
iw: allow specifying CFLAGS/LIBS externally

If CFLAGS or LIBS are specified on the make command line,
then the += doesn't do anything. Add "override" directives
to still add the necessary libnl flags/libs.

Change-Id: Icdc3d14ae3a6f01b827c76e753c93fe8eb8fcec2
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: fix ftm_request missing arguments segfault
Benjamin Aschenbrenner [Sat, 10 Apr 2021 11:19:37 +0000 (13:19 +0200)] 
iw: fix ftm_request missing arguments segfault

When expected argument <config-file> is not passed to arguemts iw
segfaults.

Example: iw wlp2s0 measurement ftm_request

This fixes it.

Signed-off-by: Benjamin Aschenbrenner <benjamin.aschenbrenner@gmail.com>
Link: https://lore.kernel.org/r/20210410111937.32813-2-benjamin.aschenbrenner@gmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: fix mgmt dump missing arguments segfault
Benjamin Aschenbrenner [Sat, 10 Apr 2021 11:19:36 +0000 (13:19 +0200)] 
iw: fix mgmt dump missing arguments segfault

When expected arguments for mgmt command dump are left out iw segfaults.

Example: iw dev wlp2s0 mgmt dump frame e0

This fixes it.

Signed-off-by: Benjamin Aschenbrenner <benjamin.aschenbrenner@gmail.com>
Link: https://lore.kernel.org/r/20210410111937.32813-1-benjamin.aschenbrenner@gmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: Fix timestamp output on 32-bit architectures
Toke Høiland-Jørgensen [Thu, 18 Mar 2021 22:46:55 +0000 (23:46 +0100)] 
iw: Fix timestamp output on 32-bit architectures

On 32-bit architectures, time_t is 32-bit which causes overflows in the
arithmetic involving tv_sec, leading to invalid output. Fix this by
explicitly adding ULL suffixes to the constants used in those calculations.

Fixes: 3708f614dfdd ("iw: Print current time in station info dump")
Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>
Link: https://lore.kernel.org/r/20210318224655.143489-1-toke@toke.dk
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: fix pointer arithmetic in __print_he_capa
Markus Theil [Sat, 13 Feb 2021 11:48:53 +0000 (12:48 +0100)] 
iw: fix pointer arithmetic in __print_he_capa

Found by fuzzing with clang fuzzer.

Signed-off-by: Markus Theil <markus.theil@tu-ilmenau.de>
Link: https://lore.kernel.org/r/20210213114853.17276-1-markus.theil@tu-ilmenau.de
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: add option to print human readable event time
Markus Theil [Sat, 6 Feb 2021 15:04:32 +0000 (16:04 +0100)] 
iw: add option to print human readable event time

Signed-off-by: Markus Theil <markus.theil@tu-ilmenau.de>
Link: https://lore.kernel.org/r/20210206150432.10456-1-markus.theil@tu-ilmenau.de
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: print ctrl port tx status event
Markus Theil [Sun, 6 Dec 2020 10:16:42 +0000 (11:16 +0100)] 
iw: print ctrl port tx status event

Signed-off-by: Markus Theil <markus.theil@tu-ilmenau.de>
Link: https://lore.kernel.org/r/20201206101642.3606-1-markus.theil@tu-ilmenau.de
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: use correct type in policy check for mesh
Markus Theil [Sat, 5 Dec 2020 09:26:15 +0000 (10:26 +0100)] 
iw: use correct type in policy check for mesh

NL80211_STA_INFO_CONNECTED_TO_AS and NL80211_STA_INFO_CONNECTED_TO_GATE
are defined as u8 in kernel, but were checked against NLA_FLAG.

This fixes:

root@openwrt:~# iw dev wlan0-mesh station
failed to parse nested attributes!
failed to parse nested attributes!
failed to parse nested attributes!

Reported-by: Marc Rantanen <marc@eciceron.se>
Tested-by: Marc Rantanen <marc@eciceron.se>
Signed-off-by: Markus Theil <markus.theil@tu-ilmenau.de>
Link: https://lore.kernel.org/r/20201205092615.131561-1-markus.theil@tu-ilmenau.de
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: scan: fixup HE caps whitespace
Brian Norris [Wed, 18 Nov 2020 03:39:36 +0000 (19:39 -0800)] 
iw: scan: fixup HE caps whitespace

For scans, it's nicer to drop an indentation level, because we don't
have the "interface type" section that we do in the phy-info version.

The NSS print also had an extra level of indentation, and a spare
leading space, which made it a bit inconsistent with other sections.

Signed-off-by: Brian Norris <briannorris@chromium.org>
Link: https://lore.kernel.org/r/20201118033936.3667788-5-briannorris@chromium.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: scan: parse HE capabilities
Brian Norris [Wed, 18 Nov 2020 03:39:35 +0000 (19:39 -0800)] 
iw: scan: parse HE capabilities

Signed-off-by: Brian Norris <briannorris@chromium.org>
Link: https://lore.kernel.org/r/20201118033936.3667788-4-briannorris@chromium.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: util: factor out HE capability parser
Brian Norris [Wed, 18 Nov 2020 03:39:34 +0000 (19:39 -0800)] 
iw: util: factor out HE capability parser

We're going to use this for scan parsing.

Signed-off-by: Brian Norris <briannorris@chromium.org>
Link: https://lore.kernel.org/r/20201118033936.3667788-3-briannorris@chromium.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: scan: add extension tag parsing
Brian Norris [Wed, 18 Nov 2020 03:39:33 +0000 (19:39 -0800)] 
iw: scan: add extension tag parsing

HE IEs are part of the extension tag (ID 255).

Signed-off-by: Brian Norris <briannorris@chromium.org>
Link: https://lore.kernel.org/r/20201118033936.3667788-2-briannorris@chromium.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoman: update wikipage URL, reformat SEE ALSO section
ivan tkachenko [Wed, 25 Nov 2020 01:50:48 +0000 (04:50 +0300)] 
man: update wikipage URL, reformat SEE ALSO section

groff_man(7) provides plenty of useful requests/macros, and one of
them is .UR/.UE for URL formatting.

Man pages should be formatted with paragraphs (.P or .PP) requests,
and source text should not contain empty lines -- use empty request
instead (literally, single dot on its own line).

Signed-off-by: ivan tkachenko <me@ratijas.tk>
Link: https://lore.kernel.org/r/20201125015048.197683-1-me@ratijas.tk
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: enable 80MHz support for 6GHz band 11s mesh
Pradeep Kumar Chitrapu [Fri, 9 Oct 2020 22:49:30 +0000 (15:49 -0700)] 
iw: enable 80MHz support for 6GHz band 11s mesh

without this 11s mesh could not be configured with bandwidth 80MHz
in 6G band using iw. Also, this will be required to set frequency
for 6GHz band in 80MHz.

example:
iw <interface> mesh join <meshname> freq 6195 80MHz

Signed-off-by: Pradeep Kumar Chitrapu <pradeepc@codeaurora.org>
Link: https://lore.kernel.org/r/1602283770-8026-2-git-send-email-pradeepc@codeaurora.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: handle positive error codes gracefully
Brian Norris [Tue, 3 Nov 2020 23:56:31 +0000 (15:56 -0800)] 
iw: handle positive error codes gracefully

netlink(7) requires error codes to be negative, but since when does a
man page stop anyone? At a minimum, we shouldn't allow a non-conforming
vendor command to put us into an infinite loop in the below snippets
from __handle_cmd():

err = 1;

nl_cb_err(cb, NL_CB_CUSTOM, error_handler, &err);
...
while (err > 0)
nl_recvmsgs(state->nl_sock, cb);

Signed-off-by: Brian Norris <briannorris@chromium.org>
Link: https://lore.kernel.org/r/20201103235631.2936594-1-briannorris@chromium.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: scan: add flag for scanning colocated ap
Tova Mussai [Thu, 10 Oct 2019 06:54:41 +0000 (09:54 +0300)] 
iw: scan: add flag for scanning colocated ap

1. For full scan set the flag to scan for collocated ap by default.
2. In any other case, user need to add it to the command line (optional).

Signed-off-by: Tova Mussai <tova.mussai@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: Add 'coloc' and 'flush' options to sched_scan
Ilan Peer [Thu, 26 Mar 2020 07:17:21 +0000 (09:17 +0200)] 
iw: Add 'coloc' and 'flush' options to sched_scan

Add new 'coloc' (from 6 GHz scanning) and 'flush' options
to the scan command.

Signed-off-by: Ilan Peer <ilan.peer@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: update wikipage URL
Luca Coelho [Tue, 27 Oct 2020 07:50:53 +0000 (09:50 +0200)] 
iw: update wikipage URL

The URL in the README file was still the old one, which leads to
non-existing page.  Update it with the new one.

Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Link: https://lore.kernel.org/r/20201027075053.2717839-1-luca@coelho.fi
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: Add support for specifying the 160MHz bandwidth when setting the channel/frequency
Ttttabcd [Tue, 6 Oct 2020 04:22:18 +0000 (04:22 +0000)] 
iw: Add support for specifying the 160MHz bandwidth when setting the channel/frequency

The current iw tool only supports the direct setting of
[NOHT|HT20|HT40+|HT40-|5MHz|10MHz|80MHz] bandwidth
when setting the channel/frequency.

If we want to set the 160MHz bandwidth,
we need to calculate the center frequency ourselves,
which is inconvenient.

E.g:
iw phy phy0 set freq 5220 160 5250

From now on we can:
iw phy phy0 set channel 44 160MHz
iw phy phy0 set freq 5220 160MHz

This is much more convenient.

Signed-off-by: AK Deng <ttttabcd@protonmail.com>
Link: https://lore.kernel.org/r/cIf-30s-5axo5iDqyzwY9VTVB_JLKCXbxlXdODMSK61q-yFzR6rtAk8URRAPavRlllrwXr1Q-jtem_upoCNKd_fba8qmM0DpJn0O7MIkq6o=@protonmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agobump version to 5.9 v5.9
Johannes Berg [Fri, 2 Oct 2020 10:18:41 +0000 (12:18 +0200)] 
bump version to 5.9

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: support HE rate configuration in 6 GHz band
Rajkumar Manoharan [Wed, 30 Sep 2020 02:05:38 +0000 (19:05 -0700)] 
iw: support HE rate configuration in 6 GHz band

Allow HE-MCS, HE-GI, HE-LTF in 6 GHz band as well and allow only
MCS rates in 6 GHz.

Signed-off-by: Rajkumar Manoharan <rmanohar@codeaurora.org>
Link: https://lore.kernel.org/r/1601431538-6621-2-git-send-email-rmanohar@codeaurora.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: add HE rate/gi/ltf support
Miles Hu [Wed, 30 Sep 2020 02:05:37 +0000 (19:05 -0700)] 
iw: add HE rate/gi/ltf support

This patch adds support for setting fied HE rates/gi/ltf

Tested-by: John Crispin <john@phrozen.org>
Signed-off-by: Miles Hu <milehu@codeaurora.org>
Link: https://lore.kernel.org/r/1601431538-6621-1-git-send-email-rmanohar@codeaurora.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: update nl80211.h
Johannes Berg [Fri, 2 Oct 2020 10:15:38 +0000 (12:15 +0200)] 
iw: update nl80211.h

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: add TID specific Tx bitrate configuration
Tamizh Chelvam [Mon, 7 Sep 2020 06:41:55 +0000 (06:41 +0000)] 
iw: add TID specific Tx bitrate configuration

Add TID specific Tx bitrate configuration by using
handle_bitrates already APIs.

Examples:
$ iw dev wlan0 set tidconf peer xx:xx:xx:xx:xx:xx tids 0x2 bitrates auto
$ iw dev wlan0 set tidconf peer xx:xx:xx:xx:xx:xx tids 0x2 bitrates limit vht-mcs-5 4:9

Signed-off-by: Tamizh Chelvam <tamizhr@codeaurora.org>
Link: https://lore.kernel.org/r/01010174674cba3e-ae0b7501-76dd-4bbd-870f-a799e0558e1e-000000@us-west-2.amazonses.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: fix tid config help entries
Tamizh Chelvam [Mon, 7 Sep 2020 06:35:34 +0000 (06:35 +0000)] 
iw: fix tid config help entries

Fix help entries for TID config command by adding
"set tidconf" command info in that.

Signed-off-by: Tamizh Chelvam <tamizhr@codeaurora.org>
Link: https://lore.kernel.org/r/010101746746e7dc-fddbd674-90f6-42f7-9bb7-d41d524c6477-000000@us-west-2.amazonses.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agobump version to 5.8 v5.8
Johannes Berg [Thu, 27 Aug 2020 11:38:47 +0000 (13:38 +0200)] 
bump version to 5.8

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: print hop_count and path_change info of mpath
Tamizh Chelvam [Thu, 20 Aug 2020 05:14:45 +0000 (10:44 +0530)] 
iw: print hop_count and path_change info of mpath

Print hop_count and path_change info which is already providing
by Driver for all mpath through mpath dump command.

Signed-off-by: Tamizh Chelvam <tamizhr@codeaurora.org>
Link: https://lore.kernel.org/r/1597900485-673-1-git-send-email-tamizhr@codeaurora.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: handle more mesh station info
Markus Theil [Mon, 3 Aug 2020 15:33:36 +0000 (17:33 +0200)] 
iw: handle more mesh station info

Signed-off-by: Markus Theil <markus.theil@tu-ilmenau.de>
Link: https://lore.kernel.org/r/20200803153336.319773-4-markus.theil@tu-ilmenau.de
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: handle all mesh config parameters
Markus Theil [Mon, 3 Aug 2020 15:33:35 +0000 (17:33 +0200)] 
iw: handle all mesh config parameters

Signed-off-by: Markus Theil <markus.theil@tu-ilmenau.de>
Link: https://lore.kernel.org/r/20200803153336.319773-3-markus.theil@tu-ilmenau.de
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: print current ext feature set
Markus Theil [Mon, 3 Aug 2020 15:33:33 +0000 (17:33 +0200)] 
iw: print current ext feature set

Signed-off-by: Markus Theil <markus.theil@tu-ilmenau.de>
Link: https://lore.kernel.org/r/20200803153336.319773-1-markus.theil@tu-ilmenau.de
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoupdate nl80211.h to 5.8-rc1
Johannes Berg [Thu, 27 Aug 2020 11:33:32 +0000 (13:33 +0200)] 
update nl80211.h to 5.8-rc1

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: add support for vendor events
Johannes Berg [Thu, 27 Aug 2020 11:07:31 +0000 (13:07 +0200)] 
iw: add support for vendor events

We can already drop in arbitrary files for vendor commands
as the build system picks those up, also add support for
vendor specific events in a similar fashion.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: add support for NDP ranging - trigger based and non trigger based
Avraham Stern [Wed, 13 May 2020 09:07:18 +0000 (05:07 -0400)] 
iw: add support for NDP ranging - trigger based and non trigger based

Add support for requesting NDP ranging by specifying the requested
NDP ranging type (trigger based / non trigger based).

Change-Id: I0bebcde19a5615a1261a23168a21b099570e83a0
Signed-off-by: Avraham Stern <avraham.stern@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoreg: Fix getting PHY specific regulatory information
Ilan Peer [Sun, 19 Jul 2020 07:44:24 +0000 (10:44 +0300)] 
reg: Fix getting PHY specific regulatory information

Commit 14ad75d3b4c3 ("iw: support multiple regdom print") added
support for dumping multiple regulatory domain, with the intent
that if a specific phy is given, only its regulatory information
would be fetched. However, the phy specific handling was ignored.
Fix it.

Change-Id: I647ef420741e528a4d6568a7d4518c9a561bd199
Signed-off-by: Ilan Peer <ilan.peer@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: update freq to chan mappings for 6GHz band per IEEE P802.11ax/D6.1
Pradeep Kumar Chitrapu [Mon, 22 Jun 2020 06:39:06 +0000 (23:39 -0700)] 
iw: update freq to chan mappings for 6GHz band per IEEE P802.11ax/D6.1

This fixes dfferences in 6GHz frequencies which were updated in
IEEE P802.11ax/D6.1.

Also sync 60GHz band channel to freq mapping with kernel.

Fixes: 43789196 ("iw: sync frequency to channel mapping with kernel for 6GHz band")
Signed-off-by: Pradeep Kumar Chitrapu <pradeepc@codeaurora.org>
Link: https://lore.kernel.org/r/20200622063906.24957-1-pradeepc@codeaurora.org
[remove MHZ_TO_KHZ conversion???]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoiw: mesh: add mesh_param "mesh_nolearn" to skip path discovery
Linus Lüssing [Wed, 17 Jun 2020 07:30:34 +0000 (09:30 +0200)] 
iw: mesh: add mesh_param "mesh_nolearn" to skip path discovery

Currently, before being able to forward a packet between two 802.11s
nodes, both a PLINK handshake is performed upon receiving a beacon and
then later a PREQ/PREP exchange for path discovery is performed on
demand upon receiving a data frame to forward.

When running a mesh protocol on top of an 802.11s interface, like
batman-adv, we do not need the multi-hop mesh routing capabilities of
802.11s and usually set mesh_fwding=0. However, even with mesh_fwding=0
the PREQ/PREP path discovery is still performed on demand. Even though
in this scenario the next hop PREQ/PREP will determine is always the
direct 11s neighbor node.

The new mesh_nolearn parameter allows to skip the PREQ/PREP exchange in
this scenario, leading to a reduced delay, reduced packet buffering and
simplifies HWMP in general.

mesh_nolearn is still rather conservative in that if the packet destination
is not a direct 11s neighbor, it will fall back to PREQ/PREP path
discovery.

For normal, multi-hop 802.11s mesh routing it is usually not advisable
to enable mesh_nolearn as a transmission to a direct but distant neighbor
might be worse than reaching that same node via a more robust /
higher throughput etc. multi-hop path.

Cc: Sven Eckelmann <sven@narfation.org>
Cc: Simon Wunderlich <sw@simonwunderlich.de>
Signed-off-by: Linus Lüssing <ll@simonwunderlich.de>
Link: https://lore.kernel.org/r/20200617073034.26149-2-linus.luessing@c0d3.blue
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
3 years agoupdate nl80211.h
Johannes Berg [Thu, 30 Jul 2020 11:33:23 +0000 (13:33 +0200)] 
update nl80211.h

Change-Id: I1d8448ce41d0f65dcd557f09698405b541ce39fd
Signed-off-by: Johannes Berg <johannes.berg@intel.com>