Add support for driver command to update roaming policy
The network block bssid parameter can be used to force a specific BSS to be used for a connection. It is also possible to modify this parameter during an association. Previously, that did not result in any notification to the driver which was somewhat problematic with drivers that take care of BSS selection. Add a new mechanism to allow wpa_supplicant to provide a driver update if the bssid parameter change for the current connection modifies roaming policy (roaming allowed/disallowed within ESS). Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
parent
0cd9846c63
commit
0ef023e478
5 changed files with 52 additions and 3 deletions
|
@ -2804,6 +2804,22 @@ struct wpa_driver_ops {
|
|||
*/
|
||||
int (*status)(void *priv, char *buf, size_t buflen);
|
||||
|
||||
/**
|
||||
* roaming - Set roaming policy for driver-based BSS selection
|
||||
* @priv: Private driver interface data
|
||||
* @allowed: Whether roaming within ESS is allowed
|
||||
* @bssid: Forced BSSID if roaming is disabled or %NULL if not set
|
||||
* Returns: Length of written status information or -1 on failure
|
||||
*
|
||||
* This optional callback can be used to update roaming policy from the
|
||||
* associate() command (bssid being set there indicates that the driver
|
||||
* should not roam before getting this roaming() call to allow roaming.
|
||||
* If the driver does not indicate WPA_DRIVER_FLAGS_BSS_SELECTION
|
||||
* capability, roaming policy is handled within wpa_supplicant and there
|
||||
* is no need to implement or react to this callback.
|
||||
*/
|
||||
int (*roaming)(void *priv, int allowed, const u8 *bssid);
|
||||
|
||||
#ifdef CONFIG_MACSEC
|
||||
int (*macsec_init)(void *priv, struct macsec_init_params *params);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue