Add logic to
- Check if connect req freq is 6Ghz and security
is not allowed for 6Ghz, reject connect.
- Ignore 6Ghz APs if connect req security is invalid
for 6Ghz
Also added user config key_mgmt_mask_6ghz mask
to allow specific AKMs, by default all are allowed.
Add added user config check_6Ghz_security to enable
security checks as per spec.
Change-Id: I37518731faa4de67a49853e5ac544efa3b3ce1d6
CRs-Fixed: 2813013
Add change to enable bssid hint scoring for candidate selection in
connection manager.
Change-Id: I40a120781c93bf8fb09ec9591a94ee1484bb1a0c
CRs-Fixed: 2801397
There are some fils related compilation issues, add a fix
to resolve these compilation issues.
Change-Id: Ia8fc03885a42447a2f13a58840f3c5174c485bcc
CRs-Fixed: 2811623
There is a possibility that driver already has a vdev
with the mac address same as bssid, in this case sta
should not connect to this AP as it may lead to undefined
behavior.
To address above issue add a check to compare bssid with
already existing vdevs before connect start.
Along with above changes add few renaming changes also.
Change-Id: Ia12be0b392a01bf935b5261e505290064de68805
CRs-Fixed: 2809147
If ini vendor_roam_score_algorithm=1, for initial connect, select
candidate by estimated throughput(ETP). Calculate ETP of all
bssid of ssid selected by high layer, and try to connect AP by
order of ETP, legacy algorithm with following Parameters/Weightage
becomes useless. ETP should be [1Mbps, 20000Mbps],matches score
range: [1, 20000].
Add 11ax support besides 11ac/11abgn.
Change-Id: I3f55d2ae37801128b8a66f6d5c2ac55cb11a56d0
CRs-Fixed: 2704154
Move disconnect wait logic from osif to connection mgr, so that
MLO/IF manager can use the wait logic for disconnect
during vdev delete.
Change-Id: Ied2bbcfd6a532209f8008499424f94acc41efc0e
CRs-Fixed: 2800990
If a connect req fails before serialization, with a disconnect req
Already queued. Indicating the failed connect req and moving
the SM to INIT state will lead to a invalid disconnected state
Even when, disconnect is in progress.
Thus in this case wait for disconnect to complete before indicating
connect failure and moving SM to INIT state.
Change-Id: Ib25ed43276410cd3e1bb717f64742d691bb17568
CRs-Fixed: 2802137
currently connection manager is using incorrect api to
get the country info which gives compilation error for WIN.
Use correct api to get the country to avoid any compilation
issue.
Change-Id: I647b171ad2ee4a2b70f6803869435074643aa677
CRs-Fixed: 2801991
Unlink BSS on connect timeouts like AUTH/JOIN/ASSOC timeout and
in case of no candidate found. This is to avoid reconnect without
a scan.
Also remove entry if diconnect from peer or south bound disconnect
due to heartbeat failure, sta kickout etc.
Change-Id: Ie78c7e764e8c009a5d19ed5dda9c6b9bbf75196f
CRs-Fixed: 2798188
Initialize osif callbacks to connection manager and add
legacy callbacks to osif and initialize these legacy callbacks
for connection manager.
Change-Id: Ic3e8bd6f55b6cdbbc8cdd5c9c3a6631e8d3bd83e
CRs-Fixed: 2797472
On connect success update the scan entry with the beacon/probe rsp
received during connect. With this the scan db in driver and kernel
will remain in sync and avoid ageout. As after connect complete
driver update the scan entry in scan db with mlme info.
Change-Id: Ia9d394035eb295f66fbb2a7dd5966a914fe52e00
CRs-Fixed: 2798279
Currently scan for ssid is not handled in connection manager.
Add support for handling scan for ssid event, sending scan request
and handle scan success and failure cases.
Change-Id: Ie60f2c0da36abfc95531e437d3636299972c588a
CRs-Fixed: 2788058
Add connect params in osif connect request to pass scan IE and other
params from legacy to be used in connect request.
Change-Id: I83721023362ff2405727316f090671468200b362
CRs-Fixed: 2793280
Add logic to try with the same candidate again based on
below scenarios:
- If status code is STATUS_INVALID_PMKID
- Join timeout and only one candidate
- Assoc timeout and SAE connection
- Assoc timeout and reconnect vendor IE set
Change-Id: I7ce803549f4627bc13d03b99999767002fd84be4
CRs-Fixed: 2792775
Add logic to delete the pmkid and single pmkid depending on
connect response status code and failure.
Change-Id: I7a27f887173ba7cdc13c3ce49ded5d2fcc8198fa
CRs-Fixed: 2792774
Handle disconnect requests in different states.
Take care of flushing scan and older connect and queueing
internal disconnect depending on the current state.
Change-Id: I08015d866fb629951b85f95fcd3cf0155e902082
CRs-Fixed: 2793228
Add sync API for disconnect to wait for disconnect to complete.
This can be used during vdev delete sequence to move the vdev and
connection manager SM to init state before VDEV is marked logically
deleted.
Change-Id: Id562e444cf1995d800b8268f906f811f143d0fc9
CRs-Fixed: 2790885
Handle connect requests in different states.
Take care of flushing scan and older connect and queueing
internal disconnect depending on the current state.
Change-Id: I5be3fcd75a1b27e9a9f4d7da3008b3b5b2224f7b
CRs-Fixed: 2790028
Use CM_PREFIX_FMT and CM_PREFIX_REF to print connection mgr logs
instead of CM_PREFIX_LOG to avoid confusion.
Change-Id: I06c0009804d9c49da4916a120b6dc448ea28fdb6
CRs-Fixed: 2791198
Currently disconnect is not handled in connection manager,
add support to handle disconnect in connection manager.
Change-Id: If3d5ac12300527ea0162efd955521711ed52c494
CRs-Fixed: 2785950
Add public util API for connection manager to get connection
states and set max connection attempts.
Change-Id: I66d4318c7465e3926d6bacdc70dbb849827bf2c4
CRs-Fixed: 2787323
Add event handling for mlme indication for connect start for
peer and its response. Add the interface manager missing
events. Add sync and async event handling for serialization
callback
Change-Id: I5cbb9a6ac1350f8035224135fb159010311a8468
CRs-Fixed: 2784163
Currently connection manager does not update crypto params
of connect request based on RSN/WPA/WAPI IEs.
Add logic to update the connect params based on IEs.
Change-Id: I74aba3c061ed5fc203be7270dcc244f14718c781
CRs-Fixed: 2777574
Move RSNXE IE parsing to crypto module and add entry of RSNXE IE in
util_scan_copy_beacon_data() so that a copy of RSNXE IE remains in
scan entry cache and doesn't get free on scan result update.
Change-Id: I792c8636d7e1f21c6291158188ab2c1d241151ec
CRs-Fixed: 2780832
The naming of the osif files and functions is not correct as
these files and functions include wlan_cfg80211 as prefix
instead of osif.
Correct file name and function name should contain the component
name first, followed by feature name followed by method.
Change-Id: Ic166c112189ef79a84f61d16e7e04a6334c61178
CRs-Fixed: 2780298
Add reason code enum and prints in connect and disconnect handlers,
also take care of the vendor reason code during disconnect resp.
Change-Id: I1298e0739bd08d7d43fcb3839a07459819207196
CRs-Fixed: 2778233
Handle the serialization activation callback for connect and
disconnect and hw mode change resp for connect.
Change-Id: I553a650ea04daa5aa22ee43376b9359aed58c59f
CRs-Fixed: 2776022
Use cm_sm_deliver_event() API to post the event from any
callback/req/resp from external modules. i.e serialization/hw mode
callback OR any resp from SB/other module or req from NB.
And use cm_sm_deliver_event_sync() API to post the event when the
SM lock is already taken i.e. internal posting of the event.
Also to avoid any race add the connect/disconnect req to the
connection manager request list after posting to the SM.
Change-Id: I98fc39be5ef51242553dae54448c3fe2cb9604d2
CRs-Fixed: 2776010
SAE Public Key (SAE-PK) authentication is an extension of SAE. Host adds
support for SAE-PK APs roam score which host uses to select AP for initial
connection and roaming.
User configures SAE-PK APs weightage using INI "sae_pk_ap_weightage".
Change-Id: I9066c483188bcbf01e3ffbcc4c57f04e1a9129f1
CRs-Fixed: 2769373
Add connection manager connect response handler in osif to
handle and send the connect response to kernel.
Change-Id: If675055cb2133e64b4b32a47271b12a59eac4a66
CRs-Fixed: 2765977