]> git.ipfire.org Git - thirdparty/hostap.git/log
thirdparty/hostap.git
2 years agoMLD STA: Processing of EAPOL-Key msg 3/4 frame when using MLO
Veerendranath Jakkam [Thu, 3 Nov 2022 08:08:50 +0000 (13:38 +0530)] 
MLD STA: Processing of EAPOL-Key msg 3/4 frame when using MLO

Process EAPOL-Key msg 3/4 and configure PTK and per-link GTK/IGTK/BIGTK
keys to the driver when MLO is used.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2 years agoMLD STA: Extend key configuration functions to support Link ID
Veerendranath Jakkam [Thu, 3 Nov 2022 08:08:49 +0000 (13:38 +0530)] 
MLD STA: Extend key configuration functions to support Link ID

Add support to specify a Link ID for set key operation for MLO
connection. This does not change the existing uses and only provides the
mechanism for extension in following commits.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2 years agoMLD STA: Configure TK to the driver using AP MLD address
Rohan Dutta [Thu, 3 Nov 2022 08:08:48 +0000 (13:38 +0530)] 
MLD STA: Configure TK to the driver using AP MLD address

Configure TK to the driver with AP MLD address with MLO is used. Current
changes are handling only EAPOL-Key 4-way handshake and FILS
authentication cases, i.e., FT protocol case needs to be addressed
separately.

Signed-off-by: Rohan Dutta <quic_drohan@quicinc.com>
Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2 years agoMLD STA: Use AP MLD address in PMKSA entry
Veerendranath Jakkam [Thu, 3 Nov 2022 08:08:50 +0000 (13:38 +0530)] 
MLD STA: Use AP MLD address in PMKSA entry

Use the AP MLD address instead of the BSSID of a link as the
authenticator address in the PMKSA entry.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2 years agoMLD STA: Use AP MLD address to derive pairwise keys
Rohan Dutta [Thu, 3 Nov 2022 08:08:47 +0000 (13:38 +0530)] 
MLD STA: Use AP MLD address to derive pairwise keys

Use AP MLD address to derive pairwise keys for MLO connection. Current
changes are handling only PTK derivation during EAPOL-Key 4-way
handshake and FILS authentication, i.e., FT protocol case needs to be
addressed separately.

Signed-off-by: Rohan Dutta <quic_drohan@quicinc.com>
Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2 years agoMLD STA: Add MLO KDEs for EAPOL-Key msg 2/4 and 4/4
Veerendranath Jakkam [Thu, 3 Nov 2022 08:08:46 +0000 (13:38 +0530)] 
MLD STA: Add MLO KDEs for EAPOL-Key msg 2/4 and 4/4

Add new KDEs introduced for MLO connection as specified in
12.7.2 EAPOL-Key frames, IEEE P802.11be/D2.2.
- Add MAC and MLO Link KDE for each own affliated link (other than the
  link on which association happened) in EAPOL-Key msg 2/4.
- Add MAC KDE in 4/4 EAPOL frame.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2 years agoMLD STA: Set MLO connection info to wpa_sm
Veerendranath Jakkam [Thu, 3 Nov 2022 08:08:45 +0000 (13:38 +0530)] 
MLD STA: Set MLO connection info to wpa_sm

Update the following MLO connection information to wpa_sm:
- AP MLD address and link ID of the (re)association link.
- Bitmap of requested links and accepted links
- Own link address for each requested link
- AP link address, RSNE and RSNXE for each requested link

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2 years agonl80211: Get all requested MLO links information from (re)association events
Veerendranath Jakkam [Thu, 3 Nov 2022 08:08:44 +0000 (13:38 +0530)] 
nl80211: Get all requested MLO links information from (re)association events

Currently only accepted MLO links information is getting parsed from
(re)association events. Add support to parse all the requested MLO links
information including rejected links. Get the rejected MLO links
information from netlink attributes if the kernel supports indicating
per link status. Otherwise get the rejected MLO links information by
parsing (Re)association Request and Response frame elements.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2 years agotests: Fuzz testing for PASN
Jouni Malinen [Sun, 6 Nov 2022 15:12:21 +0000 (17:12 +0200)] 
tests: Fuzz testing for PASN

Add test tools for fuzzing PASN initiator and responder handling of
received PASN Authentication frames.

Signed-off-by: Jouni Malinen <j@w1.fi>
2 years agotests: Fix CC and CFLAGS default processing for fuzzing
Jouni Malinen [Sun, 6 Nov 2022 14:50:28 +0000 (16:50 +0200)] 
tests: Fix CC and CFLAGS default processing for fuzzing

"make LIBFUZZER=y" was supposed to set CC and CFLAGS to working values
by default if not overridden by something external. That did not seem to
work since the defaults from the other build system components ended up
setting these variables before the checks here. Fix this by replacing
the known default values for non-fuzzing builds.

Signed-off-by: Jouni Malinen <j@w1.fi>
2 years agoPASN: Fix spelling of RSNE in debug messages
Jouni Malinen [Sun, 6 Nov 2022 15:11:35 +0000 (17:11 +0200)] 
PASN: Fix spelling of RSNE in debug messages

Signed-off-by: Jouni Malinen <j@w1.fi>
2 years agoPASN: Verify explicitly that elements are present before parsing
Jouni Malinen [Sun, 6 Nov 2022 11:29:34 +0000 (13:29 +0200)] 
PASN: Verify explicitly that elements are present before parsing

Make sure the elements were present before trying to parse them. This
was already done for most cases, but be consistent and check each item
explicitly before use.

Signed-off-by: Jouni Malinen <j@w1.fi>
2 years agoPASN: Fix MIC check not to modify const data
Jouni Malinen [Sun, 6 Nov 2022 11:26:42 +0000 (13:26 +0200)] 
PASN: Fix MIC check not to modify const data

The previous version was using typecasting to ignore const marking for
the input buffer to be able to clear the MIC field for MIC calculation.
That is not really appropriate and could result in issues in the future
if the input data cannot be modified. Fix this by using an allocated
copy of the buffer.

Signed-off-by: Jouni Malinen <j@w1.fi>
2 years agoPASN: Fix Authentication frame checks
Jouni Malinen [Sun, 6 Nov 2022 09:42:58 +0000 (11:42 +0200)] 
PASN: Fix Authentication frame checks

The way type and subtype of the FC field was checked does not really
work correctly. Fix those to check all bits of the subfields. This does
not really make any practical difference, though, since the caller was
already checking this.

Furthermore, use a helper function to avoid having to maintain two
copies of this same functionality.

Signed-off-by: Jouni Malinen <j@w1.fi>
2 years agodbus: Apply PMK properties immediately
Beniamino Galvani [Mon, 3 Oct 2022 07:09:28 +0000 (09:09 +0200)] 
dbus: Apply PMK properties immediately

Currently, PMK parameters in the WPA state machine are set from
configuration only when the interface is initialized. If those
parameters are changed later via D-Bus, the new values don't have any
effect.

Call wpa_sm_set_param() when PMK-related D-Bus properties are changed
to immediately apply the new value; the control interface also does
something similar.

Signed-off-by: Beniamino Galvani <bgalvani@redhat.com>
2 years agoAdd option to disable SAE key_mgmt without PMF
Jeffery Miller [Tue, 25 Oct 2022 19:35:10 +0000 (19:35 +0000)] 
Add option to disable SAE key_mgmt without PMF

Add the `sae_check_mfp` global option to limit SAE when PMF will
not be selected for the connection.
With this option SAE is avoided when the hardware is not capable
of PMF due to missing ciphers.
With this option SAE is avoided on capable hardware when the AP
does not enable PMF.

Allows falling back to PSK on drivers with the
WPA_DRIVER_FLAGS_SAE capability but do not support the BIP cipher
necessary for PMF. This enables configurations that can fall back
to WPA-PSK and avoid problems associating with APs configured
with `sae_require_mfp=1`.

Useful when `pmf=1` and `sae_check_mfp=1` are enabled and networks
are configured with ieee80211w=3 (default) and key_mgmt="WPA-PSK SAE".
In this configuration if the device is unable to use PMF due to
lacking BIP group ciphers it will avoid SAE and fallback to
WPA-PSK for that connection.

Signed-off-by: Jeffery Miller <jefferymiller@google.com>
2 years agoDocument crypto_ec_key_get_subject_public_key() to use compressed format
Glenn Strauss [Mon, 3 Oct 2022 07:31:22 +0000 (03:31 -0400)] 
Document crypto_ec_key_get_subject_public_key() to use compressed format

Document in src/crypto/crypto.h that compressed point format is expected
in DER produced by crypto_ec_key_get_subject_public_key(). This is the
format needed for both SAE-PK and DPP use cases that are the current
users of this function.

Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
2 years agoDPP: Stop listen mode for chirp-initiated Authentication exchange
Jouni Malinen [Sat, 5 Nov 2022 15:25:15 +0000 (17:25 +0200)] 
DPP: Stop listen mode for chirp-initiated Authentication exchange

Stop listen mode if there is not sufficient time remaining to complete
the Authentication exchange within the current remain-on-channel
operation. This speeds up the operation and avoids some timeouts that
could prevent the provisioning step from completing. This addresses an
issue that was found in the following test case sequence:
dpp_controller_relay_discover dpp_chirp_ap_5g

Similar mechanism was already used for Reconfig Announcement frames, so
reuse that for this case with Presence Announcement frames.

Signed-off-by: Jouni Malinen <j@w1.fi>
2 years agoP2P: Discount current operating frequency when scanning new connection
Matthew Wang [Fri, 4 Nov 2022 21:18:02 +0000 (14:18 -0700)] 
P2P: Discount current operating frequency when scanning new connection

When scanning for a new connection, we currently optimize by scanning
all frequencies only when our MCC capabilities will allow an additional
operating frequency, and scan only the existing operating frequencies
otherwise. This is problematic when there the current operating
frequency singularly accounts for one of the shared radio frequencies
because we should be able to switch operating frequencies without adding
to the channel count. Fix this.

Signed-off-by: Matthew Wang <matthewmwang@chromium.org>
2 years agotests: Allow more time for sigma_dut sta_reassoc commands
Jouni Malinen [Sat, 5 Nov 2022 11:41:02 +0000 (13:41 +0200)] 
tests: Allow more time for sigma_dut sta_reassoc commands

When these are issued while associated, scanning all channels can take a
significant amount of time. That happened to work for existing test
cases somewhat by accident since the scan was sometimes limited to only
the current operating channel. However, that is now changing and the
following two test cases started failing with the change, so make them
wait longer:
sigma_dut_sae_pw_id_ft sigma_dut_ft_rsnxe_used_mismatch

Signed-off-by: Jouni Malinen <j@w1.fi>
2 years agoDo not drop connection attempt when reconnecting to the same ESS
김우용 [Fri, 4 Nov 2022 07:54:20 +0000 (07:54 +0000)] 
Do not drop connection attempt when reconnecting to the same ESS

Connection attempt could have been intermittently drop when reconnecting
to the same ESS due the current BSS entry getting removed immediately
after the disconnection for the purpose of reconnecting to the same ESS.

Avoid this by not removing a BSS entry for the same ESS when in this
special state of trying to reconnect to the same ESS.

Signed-off-by : WooYong Kim <wykim@newratek.com>

2 years agotests: P2P persistent group formation with extended listen
Shivani Baranwal [Thu, 20 Oct 2022 07:13:03 +0000 (12:43 +0530)] 
tests: P2P persistent group formation with extended listen

Add a new P2P persistent group formation, re-invocation, and cancel test
to verify that P2P_EXT_LISTEN is avoided and the scan is performed in
the P2P Client role to find the P2P GO for the ongoing P2P persistent
group formation on the current interface.

Signed-off-by: Shivani Baranwal <quic_shivbara@quicinc.com>
2 years agoP2P: Skip Extended Listen timeout to allow scans during group formation
Shivani Baranwal [Thu, 20 Oct 2022 12:46:28 +0000 (18:16 +0530)] 
P2P: Skip Extended Listen timeout to allow scans during group formation

Scans are allowed on the current interface for group formation only when
in the P2P_SEARCH, P2P_IDLE, or P2P_PROVISIONING state. But Extended
Listen timeout being enabled moves to the P2P_LISTEN_ONLY state. Due to
this P2P connection fails if the GO is not found with scans triggerred
before Extended Listen timeout. To avoid this skip Extended Listen
timeout to allow scans during group formation on the current interface.

Signed-off-by: Shivani Baranwal <quic_shivbara@quicinc.com>
2 years agoP2P: Clone sae_pwe config to new group interface config
Veerendranath Jakkam [Wed, 2 Nov 2022 10:25:19 +0000 (15:55 +0530)] 
P2P: Clone sae_pwe config to new group interface config

Clone sae_pwe configuration value when creating a new P2P group
interface. This is needed to avoid P2P connection failure at the P2P
Client side due to SAE H2E being disabled in the 6 GHz band operation
when a new group interface is created for the connection.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2 years agoP2P: Allow PSC channel to be used for 6 GHz BW40
Hu Wang [Wed, 12 Oct 2022 06:52:12 +0000 (23:52 -0700)] 
P2P: Allow PSC channel to be used for 6 GHz BW40

For the 6 GHz opclass 132, ch for loop only allows non-PSC channels { 1,
9, 17, 25, 33, 41, 49,... } to be used. This does not match the IEEE Std
802.11ax-2021 expectation of a 6 GHz-only AP "should set up the BSS with
a primary 20 MHz channel that coincides with a preferred scanning
channel".

Increase ch by 4 to allow PSC channel to be used for 6 GHz BW40.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoP2P: Track peer 6 GHz capability more robustly
Qiwei Cai [Thu, 3 Nov 2022 02:33:09 +0000 (10:33 +0800)] 
P2P: Track peer 6 GHz capability more robustly

It's necessary to maintain knowledge of the 6 GHz capability of the
peer. Since the Device Capability field migth change between frames
depending on the context in which they are used, loooking at the last
received message might not always provide accurate information.

Add supports_6ghz bool variable in struct p2p_device, initialize it to
false and set to true if the P2P_DEV_CAPAB_6GHZ_BAND_CAPABLE bit is set
to 1 in any P2P frame that includes the P2P Capability attribute. This
boolean would not be cleared to false at any point in time so that the
info doesn't disappear dynamically.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoAdd QCA vendor subcommand to notify about primary netdev
Krunalsinh Padhar [Thu, 3 Nov 2022 23:35:10 +0000 (16:35 -0700)] 
Add QCA vendor subcommand to notify about primary netdev

Add a new vendor subcommand
QCA_NL80211_VENDOR_SUBCMD_MLO_PEER_PRIM_NETDEV_EVENT to send notification
to application layer about primary netdev of an MLO peer association.

Also define the attributes present in this subcommand.

Signed-off-by: Krunalsinh Padhar <quic_kpadhar@quicinc.com>
2 years agoA vendor roam control configuration for delaying hand off for RX
Sunil Dutt [Thu, 20 Oct 2022 06:35:13 +0000 (12:05 +0530)] 
A vendor roam control configuration for delaying hand off for RX

Introduce a run time roam configuration for "hand off delay for RX".
This value, in milliseconds, will delay the hand off for the specified
time to receive pending RX frames from the current BSS.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Change pasn_use_384() to be a non-static function
Vinay Gannevaram [Mon, 10 Oct 2022 04:39:51 +0000 (10:09 +0530)] 
PASN: Change pasn_use_384() to be a non-static function

libpasn.so users, e.g., Wi-Fi Aware module, could use this function
while deriving protocol specific keys using KDK. Move this function to
global scope to allow that.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Rename struct wpas_pasn to pasn_data
Vinay Gannevaram [Thu, 3 Nov 2022 08:02:06 +0000 (13:32 +0530)] 
PASN: Rename struct wpas_pasn to pasn_data

struct wpas_pasn is common to both initiator and responder, so rename it
to pasn_data to avoid the "wpas_" prefix that could be seen as a
reference to wpa_supplicant (PASN initiator).

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Add pairing verification wrapper function for Wi-Fi Aware
Vinay Gannevaram [Fri, 7 Oct 2022 14:27:50 +0000 (19:57 +0530)] 
PASN: Add pairing verification wrapper function for Wi-Fi Aware

Wi-Fi Aware uses PASN handshake to authenticate peer devices. Devices
can simply verify each other for subsequent sessions as long as the keys
remain valid after authentication has been successful and pairing has
been established.

In pairing verification, Wi-Fi Aware devices uses PASN Authentication
frames with custom PMKID and Wi-Fi Aware R4 specific verification IEs.
It does not use wrapped data in the Authentication frames. This function
provides support to construct PASN Authentication frames for pairing
verification.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Mark wpas_pasn_start() comeback argument const
Jouni Malinen [Fri, 4 Nov 2022 10:56:37 +0000 (12:56 +0200)] 
PASN: Mark wpas_pasn_start() comeback argument const

Make it clear that this argument is not modified and freed within PASN
processing to be consistent with the only use of it by calling
wpas_pasn_build_auth_1() which has already marked it const.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Allow extra elements to be added into PASN Authentication frames
Vinay Gannevaram [Thu, 3 Nov 2022 07:29:16 +0000 (12:59 +0530)] 
PASN: Allow extra elements to be added into PASN Authentication frames

Wi-Fi Aware defines protocol specific elements in PASN Authentication
frames for pairing setup. Add an option to add this type of custom
elements into PASN frames. This is mainly for the libpasn.so use cases.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Makefile and Android.mk changes for libpasn.so
Vinay Gannevaram [Tue, 20 Sep 2022 13:23:04 +0000 (18:53 +0530)] 
PASN: Makefile and Android.mk changes for libpasn.so

The wpa_s and hapd context are isolated from the PASN initiator and
responder code and this functionality is now in the separate src/pasn
directory. Add option to build libpasn.so with this functionality. This
library can be used by a Wi-Fi Aware component to support NAN pairing
with other devices.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Move responder functionality into a separate file
Vinay Gannevaram [Sun, 30 Oct 2022 13:10:07 +0000 (18:40 +0530)] 
PASN: Move responder functionality into a separate file

PASN responder validates auth 1 frame and sends auth 2 frame to the
initiator. It analyses the auth 3 frame and verifies successful
authentication. Wi-Fi Aware modules can reuse this functionality through
a shared library libpasn.so generated from this code. Move the PASN
functionality that is now decoupled from the hapd context into a
separate file in a common directory to make it easier to build such a
library.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Move initiator changes into a separate file
Vinay Gannevaram [Sun, 30 Oct 2022 12:48:16 +0000 (18:18 +0530)] 
PASN: Move initiator changes into a separate file

PASN initiator functionality builds auth 1 and auth 3 frames, and
processes auth 2 frame received from the responder. Wi-Fi Aware modules
can reuse this functionality through a shared library libpasn.so
generated from this code. Move the PASN functionality that is now
decoupled from the wpa_s context into a separate file in a common
directory to make it easier to build such a library.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoMove SAE comeback token functionality into a separate file
Vinay Gannevaram [Fri, 7 Oct 2022 15:03:25 +0000 (20:33 +0530)] 
Move SAE comeback token functionality into a separate file

This is helpful in being able to get the functionality needed for SAE
into a separate library (libpasn.so) without needing all of the
ieee802_11.c functionality.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Compute MIC from RSNE and RSNXE of the frame for Wi-Fi Aware
Vinay Gannevaram [Fri, 7 Oct 2022 14:33:46 +0000 (20:03 +0530)] 
PASN: Compute MIC from RSNE and RSNXE of the frame for Wi-Fi Aware

Wi-Fi Aware R4 specification defines Beacon RSNE/RSNXE to be same as
RSNE/RSNXE present in Auth2 frame. So, MIC validation should be done
with the RSNE and RSNXE received in Auth2 frame.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Allow custom PMKID in Authentication frames for Wi-Fi Aware
Vinay Gannevaram [Fri, 7 Oct 2022 14:06:35 +0000 (19:36 +0530)] 
PASN: Allow custom PMKID in Authentication frames for Wi-Fi Aware

Wi-Fi Aware R4 specification introduces a custom PMKID derived from
Nonce and TAG. This custom PMKID is included in PASN Authentication
frames during pairing verification. So, allow use of a custom PMKID in
PASN frames and validate it using a function handler. Wi-Fi Aware
component that uses libpasn.so should take care of validating the custom
PMKID.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Add a handler func to send mgmt frames to the driver from AP
Vinay Gannevaram [Fri, 7 Oct 2022 13:31:38 +0000 (19:01 +0530)] 
PASN: Add a handler func to send mgmt frames to the driver from AP

Introduce a function handler to transmit PASN Authentication frames to
the driver. This removes the hapd dependency for sending the frames.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Store AKMP in the PTKSA cache
Vinay Gannevaram [Wed, 21 Sep 2022 04:44:55 +0000 (10:14 +0530)] 
PASN: Store AKMP in the PTKSA cache

PTK is stored in the PTKSA cache following a successful PASN handshake,
however AKMP is removed upon a WPA PASN reset. The PASN handshake is
used in the Wi-Fi Aware R4 specification to define the pairing setup
process. KDK is used to generate a new set of keys, while AKMP is
required for key derivation for pairing. So, keep AKMP in the PTKSA
cache.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Remove hapd dependency in processing PASN Authentication frames
Vinay Gannevaram [Tue, 20 Sep 2022 06:17:00 +0000 (11:47 +0530)] 
PASN: Remove hapd dependency in processing PASN Authentication frames

Remove hapd dependency in processing PASN M1/M3 frames and build PASN M2
frame. Initialize required pasn parameters from hapd before passing
Authentication frames.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Remove hapd dependency for PASN and SAE comeback
Vinay Gannevaram [Fri, 7 Oct 2022 12:40:49 +0000 (18:10 +0530)] 
PASN: Remove hapd dependency for PASN and SAE comeback

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Remove hapd dependency for pasn_derive_keys()
Vinay Gannevaram [Mon, 19 Sep 2022 17:50:20 +0000 (23:20 +0530)] 
PASN: Remove hapd dependency for pasn_derive_keys()

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Remove hapd dependency for SAE and FILS wrapped data
Vinay Gannevaram [Wed, 28 Sep 2022 22:31:00 +0000 (04:01 +0530)] 
PASN: Remove hapd dependency for SAE and FILS wrapped data

This makes hostapd use the struct defines from pasn_common.h so that the
same struct is shared with wpa_supplicant.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Common wpas_pasn structure for initiator and responder
Vinay Gannevaram [Mon, 19 Sep 2022 10:42:49 +0000 (16:12 +0530)] 
PASN: Common wpas_pasn structure for initiator and responder

Make struct wpas_pasn common for both the initiator and the responder by
adding required parameters for responder to the existing struct
wpas_pasn. This makes both hostapd and wpa_supplicant share the same
structure definitions in preparation for allowing PASN functionality to
be built into a separate library.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Add a common header file for initiator and responder
Vinay Gannevaram [Sat, 29 Oct 2022 13:11:39 +0000 (18:41 +0530)] 
PASN: Add a common header file for initiator and responder

This is a step towards decoupling the PASN initiator and responder
implemenentation is decoupled from the wpa_s and hapd contexts and
moving to a common folder for better abstraction. Move the struct
wpas_pasn definition to a common file for initiator and responder. The
idea is to provide a library libpasn.so from PASN common code. Include
C++ compatibilty wrapper to extend libpasn.so support for modules using
cpp code base.

This library can be used in applications implementing protocols based on
the PASN handshake.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Function handler to transmit Authentication frames
Vinay Gannevaram [Sat, 29 Oct 2022 13:01:29 +0000 (18:31 +0530)] 
PASN: Function handler to transmit Authentication frames

Introduce a function handler to transmit PASN Authentication frames to
the driver. This removes the wpa_s dependency from PASN functionality
for sending the frames.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Remove dependency of wpa_ssid for initiator
Vinay Gannevaram [Fri, 7 Oct 2022 09:04:48 +0000 (14:34 +0530)] 
PASN: Remove dependency of wpa_ssid for initiator

Get ssid and derive required information for SAE and FILS tunneled PASN
authentication to remove struct wpa_ssid dependency for PASN initiator.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Remove wpa_s dependency for wpas_pasn_start()
Vinay Gannevaram [Sun, 18 Sep 2022 18:29:36 +0000 (23:59 +0530)] 
PASN: Remove wpa_s dependency for wpas_pasn_start()

Before invoking wpas_pasn_start(), derive KDK and secure LTF flags.
Instead of using network id for pasn_start(), use a pointer to the
struct wpa_ssid.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Remove wpa_s dependency for wpas_pasn_build_auth_1()
Vinay Gannevaram [Sun, 18 Sep 2022 17:43:54 +0000 (23:13 +0530)] 
PASN: Remove wpa_s dependency for wpas_pasn_build_auth_1()

Obtain RSNXE capabilities from the driver flags as well and save them in
the wpas_pasn structure.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Remove wpa_s dependency for the functions processing RX frames
Vinay Gannevaram [Sun, 18 Sep 2022 13:43:45 +0000 (19:13 +0530)] 
PASN: Remove wpa_s dependency for the functions processing RX frames

Remove wpa_s dependency for processing PASN M2 frame and preparing M3
frame. To hold the context of wpa_s when transmitting M3 frame, add cb
ctx.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Remove wpa_s dependency for wpas_pasn_auth_tx_status()
Vinay Gannevaram [Sun, 18 Sep 2022 13:46:04 +0000 (19:16 +0530)] 
PASN: Remove wpa_s dependency for wpas_pasn_auth_tx_status()

This is a step towards allowing the PASN implementation to be used
outside the context of wpa_supplicant.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Remove wpa_s dependency for FILS wrapped data
Vinay Gannevaram [Sun, 18 Sep 2022 13:34:54 +0000 (19:04 +0530)] 
PASN: Remove wpa_s dependency for FILS wrapped data

To avoid reuse without struct wpa_supplicant, add new parameters to
struct wpas_pasn for FILS.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Remove wpa_sm dependency to add an entry to PMKSA cache
Vinay Gannevaram [Sun, 18 Sep 2022 17:57:13 +0000 (23:27 +0530)] 
PASN: Remove wpa_sm dependency to add an entry to PMKSA cache

Store PMKSA cache entry in wpas_pasn and remove wpa_sm dependency to add
an entry to PMKSA cache. This is a step towards allowing the PASN
implementation to be used outside the context of wpa_supplicant.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Remove unused wpa_s parameter for wpas_pasn_sae_setup_pt()
Vinay Gannevaram [Wed, 28 Sep 2022 19:18:18 +0000 (00:48 +0530)] 
PASN: Remove unused wpa_s parameter for wpas_pasn_sae_setup_pt()

This removes unnecessary struct wpa_supplicant dependency for
wpas_pasn_sae_setup_pt().

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Remove wpa_s dependency for SAE wrapped data functions
Vinay Gannevaram [Sun, 18 Sep 2022 13:27:31 +0000 (18:57 +0530)] 
PASN: Remove wpa_s dependency for SAE wrapped data functions

Use struct wpas_pasn (i.e., &wpa_s->pasn) as the function argument for
the SAE functionality that does not need the full struct wpa_supplicant
context. This is a step towards allowing PASN to be used outside the
context of wpa_supplicant.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoPASN: Add wpa_pasn_reset() to eliminate need for struct wpa_supplicant
Vinay Gannevaram [Sat, 17 Sep 2022 09:24:18 +0000 (14:54 +0530)] 
PASN: Add wpa_pasn_reset() to eliminate need for struct wpa_supplicant

Split wpas_pasn_reset() so that the main reset steps can be used without
an instance of struct wpa_supplicant. This is needed to allow PASN
implementation to be used for additional purposes outside the context of
wpa_supplicant.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoEnable use of PMKSA caching independent of RSN supplicant state machine
Vinay Gannevaram [Sun, 18 Sep 2022 18:01:51 +0000 (23:31 +0530)] 
Enable use of PMKSA caching independent of RSN supplicant state machine

Allow PMKSA caching functionality to be used even if sm, current_cb, and
free_cb are uninitialized. This makes RSN supplicant state machine
independent PMKSA caching possible for other modules, enabling
functional reuse.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFix the vendor ID assignment for configuring periodic sounding
Jouni Malinen [Thu, 3 Nov 2022 17:22:53 +0000 (19:22 +0200)] 
Fix the vendor ID assignment for configuring periodic sounding

This was supposed to update the requested value to the next available
one, not to duplicate the already assigned value.

Fixes: b17b86da4765 ("QCA vendor attribute to configure periodic sounding")
Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoQCA vendor attribute to configure periodic sounding
Kiran Kumar Lokere [Thu, 13 Oct 2022 06:34:10 +0000 (23:34 -0700)] 
QCA vendor attribute to configure periodic sounding

Add a new QCA vendor attribute to configure the periodic sounding
for Tx beamformer functionality.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoMLD STA: Fix crash caused by NULL wpa_s->current_ssid
Qiwei Cai [Thu, 20 Oct 2022 05:37:38 +0000 (13:37 +0800)] 
MLD STA: Fix crash caused by NULL wpa_s->current_ssid

For wpa_supplicant_get_new_bss(), wpa_s->current_ssid can be NULL in
some cases. Add a NULL check before accessing it to avoid NULL pointer
dereference errors.

Fixes: 7784964cbe88 ("MLD STA: Fetch MLO connection info into core wpa_supplicant")
Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agonl80211: Fix parsing PASN peer and src addresses from vendor nl attributes
Vinay Gannevaram [Fri, 21 Oct 2022 09:43:44 +0000 (15:13 +0530)] 
nl80211: Fix parsing PASN peer and src addresses from vendor nl attributes

Need to copy the actual data of the attribute, not the beginning of the
data structure pointing to the attribute.

Fixes: de3b91a172e5 ("nl80211: Define vendor interface functions to offload PASN authentication")
Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoMore debug prints for EAPOL-Key message generation (Authenticator)
Jouni Malinen [Thu, 3 Nov 2022 10:38:06 +0000 (12:38 +0200)] 
More debug prints for EAPOL-Key message generation (Authenticator)

AES-WRAP(KEK) protection of the Key Data field did not include all the
details in the log. Extend that to cover the details that were already
present for the AES-SIV case to make the debug log more useful for
analyzing issues in this area. Furthermore, print the full EAPOL-Key
frame in the log.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoMLD STA: Fully clear MLO info to avoid use of uninitialized members
Jouni Malinen [Wed, 2 Nov 2022 09:56:46 +0000 (11:56 +0200)] 
MLD STA: Fully clear MLO info to avoid use of uninitialized members

The initial wpa_drv_get_mlo_info() implementation cleared only the
valid_links information within struct driver_sta_mlo_info before trying
to fetch the information from the driver. While this is likely going to
work fine in practice, this can result in static analyzer warnings on
use of uninitialized memory (e.g., mlo.assoc_link_id could have been
read if wpa_s->valid_links was set to a nonzero value). In any case, it
is better to avoid such unnecessary warnings by clearing the full data
structure before using it.

Fixes: 7784964cbe88 ("MLD STA: Fetch MLO connection info into core wpa_supplicant")
Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoMLD STA: Use MLD addresses for sending non-Public Action frames
Veerendranath Jakkam [Wed, 19 Oct 2022 14:14:09 +0000 (19:44 +0530)] 
MLD STA: Use MLD addresses for sending non-Public Action frames

The Linux kernel expects to use the AP MLD address as destination and
BSSID addresses for non-Public Action frames when the current
association is MLO capable. Use the MLD addresses to support this.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2 years agoMLD STA: Support processing of M1 received before association event
Veerendranath Jakkam [Wed, 19 Oct 2022 14:14:05 +0000 (19:44 +0530)] 
MLD STA: Support processing of M1 received before association event

EAPOL-Key msg 1/4 indication can be received before association
indication from the driver. For MLO connection, the source address check
of such frames should be against the AP MLD address instead of the
associated link BSSID.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2 years agoEHT: Definitions for STA Control fields of Basic Multi-Link element
Veerendranath Jakkam [Wed, 19 Oct 2022 14:13:54 +0000 (19:43 +0530)] 
EHT: Definitions for STA Control fields of Basic Multi-Link element

Define subelement IDs and Per-STA Profile STA control fields of Basic
Multi-Link element as described in IEEE P802.11be/D2.2. Also add define
for Multi-Link Control field length.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2 years agoEHT: Multi-Link element defragmentation
Veerendranath Jakkam [Wed, 19 Oct 2022 14:13:53 +0000 (19:43 +0530)] 
EHT: Multi-Link element defragmentation

Add support for element defragmentation of different types of Multi-Link
elements.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2 years agocommon: Refactor element defragmentation
Veerendranath Jakkam [Wed, 19 Oct 2022 14:13:52 +0000 (19:43 +0530)] 
common: Refactor element defragmentation

Instead of saving the pointers to the fragment elements during parsing
of the frame, append all fragments found right after the element to the
element length. Defragmentation of the element can be done by parsing
appended fragment elements. This approach removes the limit on the
maximum number of fragmented elements supported in a frame.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2 years agoEHT: Parse Multi-Link elements
Veerendranath Jakkam [Wed, 19 Oct 2022 14:13:51 +0000 (19:43 +0530)] 
EHT: Parse Multi-Link elements

Parse and store pointers to different types of Multi-Link elements
received in Management frames.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2 years agoMLD STA: Fetch MLO association Link ID info to core wpa_supplicant
Veerendranath Jakkam [Wed, 19 Oct 2022 14:13:50 +0000 (19:43 +0530)] 
MLD STA: Fetch MLO association Link ID info to core wpa_supplicant

Fetch the MLO association Link ID info from the driver to the
wpa_supplicant instance of the corresponding MLD STA interface. This
info is needed when setting the MLO connection info to wpa_sm.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2 years agonl80211: Check MLO link status info in NL80211_CMD_CONNECT
Veerendranath Jakkam [Wed, 19 Oct 2022 14:13:49 +0000 (19:43 +0530)] 
nl80211: Check MLO link status info in NL80211_CMD_CONNECT

NL80211_CMD_CONNECT event indicates MLO links status info with kernel
commit 53ad07e9823b ("wifi: cfg80211: support reporting failed links").
Consider MLO links as valid links only if the status is success (or was
not indicated).

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2 years agoRADIUS: Add Filter-Id attribute
Morten Brørup [Tue, 25 Oct 2022 11:17:57 +0000 (13:17 +0200)] 
RADIUS: Add Filter-Id attribute

Add Filter-Id to the list of RADIUS attributes.

Signed-off-by: Morten Brørup <mb@smartsharesystems.com>
2 years agoAdd QCA vendor attributes for EHT support in external ACS
Jhalak Naik [Fri, 7 Oct 2022 10:10:07 +0000 (15:40 +0530)] 
Add QCA vendor attributes for EHT support in external ACS

Add support for new vendor sub-command attributes for 320 MHz
channel width and puncturing information as part of the
external ACS.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoVendor attribute to configure QoS/AC upgrade for UDP frames
Amarnath Hullur Subramanyam [Thu, 13 Oct 2022 05:28:01 +0000 (22:28 -0700)] 
Vendor attribute to configure QoS/AC upgrade for UDP frames

Introduce a new attribute to configure access category
override for UDP frames of BE/BK category. Unlike, the
earlier attribute QCA_WLAN_VENDOR_ATTR_CONFIG_UDP_QOS_UPGRADE
which will override for all UDP frames, this attribute is
for overriding only for BE/BK based UDP frames.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoEHT: Allow EHT to be disabled using disable_eht=1 in wpa_supplicant
Jouni Malinen [Mon, 17 Oct 2022 08:12:17 +0000 (11:12 +0300)] 
EHT: Allow EHT to be disabled using disable_eht=1 in wpa_supplicant

This is similar to the previously added disable_ht/vht/he parameters.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoSAE: Accept FT and -EXT-KEY AKMs for external auth
Jouni Malinen [Sun, 16 Oct 2022 15:35:51 +0000 (18:35 +0300)] 
SAE: Accept FT and -EXT-KEY AKMs for external auth

Use a full list of AKM suite selectors that can use SAE authentication
when checking for authentication trigger from the driver.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoP2P: Get cached scan results on iface creation to avoid scan
Matthew Wang [Wed, 12 Oct 2022 04:02:02 +0000 (21:02 -0700)] 
P2P: Get cached scan results on iface creation to avoid scan

This allows the P2P client to fast associate if the GO is already in the
scan cache without doing a full scan.

Signed-off-by: Matthew Wang <matthewmwang@chromium.org>
2 years agoSAE: Fix AKM suite selector check for external authentication
Jouni Malinen [Sun, 16 Oct 2022 15:25:11 +0000 (18:25 +0300)] 
SAE: Fix AKM suite selector check for external authentication

AKM suite selector check was initially implemented with incorrect byte
swapping of the value from the driver (nl80211). Fix this and leave a
workaround option for any potentially deployed device where the driver
might be using the swapped byte order.

Fixes: 5ff39c1380d9 ("SAE: Support external authentication offload for driver-SME cases")
Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agotests: FT-SAE-EXT-KEY
Jouni Malinen [Sun, 16 Oct 2022 13:38:27 +0000 (16:38 +0300)] 
tests: FT-SAE-EXT-KEY

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFT: Cover variable length KCK in function documentation
Jouni Malinen [Sun, 16 Oct 2022 13:38:27 +0000 (16:38 +0300)] 
FT: Cover variable length KCK in function documentation

FT can use different KCK length based on the AKM and PMK-R0 length.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFT: Reassociation Response frame validation for FT-SAE-EXT-KEY
Jouni Malinen [Sun, 16 Oct 2022 13:38:27 +0000 (16:38 +0300)] 
FT: Reassociation Response frame validation for FT-SAE-EXT-KEY

Cover the variable length MIC field when validating the Reassociation
Response frame.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFT: Response processing for FT-SAE-EXT-KEY
Jouni Malinen [Sun, 16 Oct 2022 13:38:27 +0000 (16:38 +0300)] 
FT: Response processing for FT-SAE-EXT-KEY

Cover the variable length MIC field when processing the response from an
AP.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFT: Supplicant side FTE generation for FT-SAE-EXT-KEY
Jouni Malinen [Sun, 16 Oct 2022 13:38:27 +0000 (16:38 +0300)] 
FT: Supplicant side FTE generation for FT-SAE-EXT-KEY

Add the SHA512-based variant.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFT: Authentication request frame processing for FT-SAE-EXT-KEY
Jouni Malinen [Sun, 16 Oct 2022 13:38:27 +0000 (16:38 +0300)] 
FT: Authentication request frame processing for FT-SAE-EXT-KEY

Figure out the correct hash algorithm based on which MIC field length
assumption results in successful parsing. This is needed since the key
length is not yet known at this point on the AP when using the new
FT-SAE-EXT-KEY AKM.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFT: Reassociation Request frame parsing for FT-SAE-EXT-KEY
Jouni Malinen [Sun, 16 Oct 2022 13:38:27 +0000 (16:38 +0300)] 
FT: Reassociation Request frame parsing for FT-SAE-EXT-KEY

Handle the new MIC field length option for the SHA512-based variant.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFT: Association Response frame FTE generation for FT-SAE-EXT-KEY
Jouni Malinen [Sun, 16 Oct 2022 13:38:27 +0000 (16:38 +0300)] 
FT: Association Response frame FTE generation for FT-SAE-EXT-KEY

Add the SHA512-based variant.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFT: Extend PMK-R0 derivation for FT-SAE-EXT-KEY
Jouni Malinen [Sun, 16 Oct 2022 13:38:27 +0000 (16:38 +0300)] 
FT: Extend PMK-R0 derivation for FT-SAE-EXT-KEY

Provide AKM to the helper function to cover the SHA512-based derivation
case.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFT: Extend PTK derivation for FT-SAE-EXT-KEY
Jouni Malinen [Sun, 16 Oct 2022 13:38:27 +0000 (16:38 +0300)] 
FT: Extend PTK derivation for FT-SAE-EXT-KEY

Cover the SHA512-based derivation case.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFT: Extend PMK-R1 derivation for FT-SAE-EXT-KEY
Jouni Malinen [Sun, 16 Oct 2022 13:38:27 +0000 (16:38 +0300)] 
FT: Extend PMK-R1 derivation for FT-SAE-EXT-KEY

Cover the SHA512-based derivation case.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFT: Debug print FTE subelements during parsing
Jouni Malinen [Sun, 16 Oct 2022 13:38:27 +0000 (16:38 +0300)] 
FT: Debug print FTE subelements during parsing

This can be helpful in trying to figure out issues with determination of
the MIC field length.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFT: Extend FTE parsing for FT-SAE-EXT-KEY
Jouni Malinen [Sun, 16 Oct 2022 13:38:27 +0000 (16:38 +0300)] 
FT: Extend FTE parsing for FT-SAE-EXT-KEY

Provide AKM, key length, and information about needed subelements to the
parser function so that the variable length MIC field cases can be
recognized for FT-SAE-EXT-KEY. Knowledge about R0KH-ID/R1KH-ID being
needed is required to be able to iterate over possible MIC field lengths
for the case where the AP does not yet know the correct key length at
the beginning of FT protocol.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFT: Extend MIC derivation for FT-SAE-EXT-KEY
Jouni Malinen [Sun, 16 Oct 2022 13:38:27 +0000 (16:38 +0300)] 
FT: Extend MIC derivation for FT-SAE-EXT-KEY

Provide AKM to the helper function so that the new SHA256 and SHA512
options can be covered for FT-SAE-EXT-KEY.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFT: Extend PMKR1Name derivation for FT-SAE-EXT-KEY
Jouni Malinen [Sun, 16 Oct 2022 13:38:27 +0000 (16:38 +0300)] 
FT: Extend PMKR1Name derivation for FT-SAE-EXT-KEY

Provide key length instead of SHA384/SHA256 selection to the helper
function so that the new SHA512 option can be covered for
FT-SAE-EXT-KEY.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFT: Support longer SAE PMK for FT in INITPSK AP
Jouni Malinen [Sun, 16 Oct 2022 13:38:27 +0000 (16:38 +0300)] 
FT: Support longer SAE PMK for FT in INITPSK AP

This is needed for the new FT-SAE-EXT-KEY AKM that uses variable length
PMK.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFT: AP mode FTE writing to support FT-SAE-KEY-EXT
Jouni Malinen [Sun, 16 Oct 2022 13:51:12 +0000 (16:51 +0300)] 
FT: AP mode FTE writing to support FT-SAE-KEY-EXT

Provide enough information to allow the FTE to be built using the
correct MIC field length based on the used AKM and key length.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoFT: Accept 512-bit PMK-R1 from RRB
Jouni Malinen [Sun, 16 Oct 2022 13:38:27 +0000 (16:38 +0300)] 
FT: Accept 512-bit PMK-R1 from RRB

This will be needed for FT-SAE-KEY-EXT.

Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
2 years agoAdd service class id attribute in SCS rule config vendor subcommand
Harsh Kumar Bijlani [Mon, 10 Oct 2022 06:54:20 +0000 (12:24 +0530)] 
Add service class id attribute in SCS rule config vendor subcommand

Add service class id attribute
QCA_WLAN_VENDOR_ATTR_SCS_RULE_CONFIG_SERVICE_CLASS_ID in SCS rule
configuration vendor subcommand
QCA_NL80211_VENDOR_SUBCMD_SCS_RULE_CONFIG.

Signed-off-by: Harsh Kumar Bijlani<quic_hbijlani@quicinc.com>
2 years agoWNM: Print unsupported neighbor report subelements in debug log
Chaoli Zhou [Tue, 11 Oct 2022 10:57:44 +0000 (18:57 +0800)] 
WNM: Print unsupported neighbor report subelements in debug log

This can be helpful in trying to figure out what might need to be added
in the future.

Signed-off-by: Chaoli Zhou <quic_zchaoli@quicinc.com>