mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 11:18:45 +07:00
80279fb7ba
When we disconnect from the AP, drivers call cfg80211_disconnect(). This doesn't know whether the disconnection was initiated locally or by the AP though, which can cause problems with the supplicant, for example with WPS. This issue obviously doesn't show up with any mac80211 based driver since mac80211 doesn't call this function. Fix this by requiring drivers to indicate whether the disconnect is locally generated or not. I've tried to update the drivers, but may not have gotten the values correct, and some drivers may currently not be able to report correct values. In case of doubt I left it at false, which is the current behaviour. For libertas, make adjustments as indicated by Dan Williams. Reported-by: Matthieu Mauger <matthieux.mauger@intel.com> Tested-by: Matthieu Mauger <matthieux.mauger@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
22 lines
611 B
C
22 lines
611 B
C
#ifndef __LBS_CFG80211_H__
|
|
#define __LBS_CFG80211_H__
|
|
|
|
struct device;
|
|
struct lbs_private;
|
|
struct regulatory_request;
|
|
struct wiphy;
|
|
|
|
struct wireless_dev *lbs_cfg_alloc(struct device *dev);
|
|
int lbs_cfg_register(struct lbs_private *priv);
|
|
void lbs_cfg_free(struct lbs_private *priv);
|
|
|
|
void lbs_send_disconnect_notification(struct lbs_private *priv,
|
|
bool locally_generated);
|
|
void lbs_send_mic_failureevent(struct lbs_private *priv, u32 event);
|
|
|
|
void lbs_scan_done(struct lbs_private *priv);
|
|
void lbs_scan_deinit(struct lbs_private *priv);
|
|
int lbs_disconnect(struct lbs_private *priv, u16 reason);
|
|
|
|
#endif
|