From 9f088e13ef2ef4921f279ebbf4591da52d432673 Mon Sep 17 00:00:00 2001 From: Connor Newton Date: Fri, 12 Apr 2019 13:30:39 +0100 Subject: [PATCH] [NEUS7920-218] [9610][7885][7872][7570] wlbt: Fix build without WPA3 external authentication support Gate compilation of optional feature code Change-Id: I382bd50f80c0f0f04aff057204adc2076b35f217 SCSC-Bug-Id: SSB-51719 Signed-off-by: Connor Newton --- drivers/net/wireless/scsc/cfg80211_ops.c | 8 ++++++++ drivers/net/wireless/scsc/mlme.c | 3 +++ drivers/net/wireless/scsc/mlme.h | 2 ++ drivers/net/wireless/scsc/rx.c | 2 ++ drivers/net/wireless/scsc/sap_mlme.c | 2 ++ drivers/net/wireless/scsc/sap_mlme.h | 2 ++ 6 files changed, 19 insertions(+) diff --git a/drivers/net/wireless/scsc/cfg80211_ops.c b/drivers/net/wireless/scsc/cfg80211_ops.c index 42c2da2a624a..af4ecf905ce8 100755 --- a/drivers/net/wireless/scsc/cfg80211_ops.c +++ b/drivers/net/wireless/scsc/cfg80211_ops.c @@ -1075,6 +1075,8 @@ int slsi_connect(struct wiphy *wiphy, struct net_device *dev, */ netif_carrier_on(dev); ndev_vif->sta.vif_status = SLSI_VIF_STATUS_CONNECTING; + +#ifdef CONFIG_SCSC_WLAN_SAE_CONFIG if (sme->auth_type == NL80211_AUTHTYPE_SAE && (sme->flags & CONNECT_REQ_EXTERNAL_AUTH_SUPPORT)) { const u8 *rsn; @@ -1091,6 +1093,7 @@ int slsi_connect(struct wiphy *wiphy, struct net_device *dev, } else { ndev_vif->sta.crypto.wpa_versions = 0; } +#endif r = slsi_mlme_connect(sdev, dev, sme, channel, bssid); if (r != 0) { @@ -2936,6 +2939,7 @@ int slsi_set_txq_params(struct wiphy *wiphy, struct net_device *ndev, return r; } +#ifdef CONFIG_SCSC_WLAN_SAE_CONFIG int slsi_synchronised_response(struct wiphy *wiphy, struct net_device *dev, struct cfg80211_external_auth_params *params) { @@ -2948,6 +2952,8 @@ int slsi_synchronised_response(struct wiphy *wiphy, struct net_device *dev, SLSI_MUTEX_UNLOCK(ndev_vif->vif_mutex); return r; } +#endif + #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 9)) static int slsi_update_ft_ies(struct wiphy *wiphy, struct net_device *dev, struct cfg80211_update_ft_ies_params *ftie) { @@ -3040,7 +3046,9 @@ static struct cfg80211_ops slsi_ops = { .mgmt_tx = slsi_mgmt_tx, .mgmt_tx_cancel_wait = slsi_mgmt_tx_cancel_wait, .set_txq_params = slsi_set_txq_params, +#ifdef CONFIG_SCSC_WLAN_SAE_CONFIG .external_auth = slsi_synchronised_response, +#endif #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 9)) .set_mac_acl = slsi_set_mac_acl, .update_ft_ies = slsi_update_ft_ies, diff --git a/drivers/net/wireless/scsc/mlme.c b/drivers/net/wireless/scsc/mlme.c index fc23b078969a..6a6fe0f2946a 100755 --- a/drivers/net/wireless/scsc/mlme.c +++ b/drivers/net/wireless/scsc/mlme.c @@ -2892,6 +2892,7 @@ int slsi_mlme_powermgt(struct slsi_dev *sdev, struct net_device *dev, u16 power_ return slsi_mlme_powermgt_unlocked(sdev, dev, power_mode); } +#ifdef CONFIG_SCSC_WLAN_SAE_CONFIG int slsi_mlme_synchronised_response(struct slsi_dev *sdev, struct net_device *dev, struct cfg80211_external_auth_params *params) { @@ -2919,6 +2920,8 @@ int slsi_mlme_synchronised_response(struct slsi_dev *sdev, struct net_device *de return 0; } +#endif + int slsi_mlme_register_action_frame(struct slsi_dev *sdev, struct net_device *dev, u32 af_bitmap_active, u32 af_bitmap_suspended) { struct netdev_vif *ndev_vif = netdev_priv(dev); diff --git a/drivers/net/wireless/scsc/mlme.h b/drivers/net/wireless/scsc/mlme.h index 230d1602dc85..7aa9bea212db 100755 --- a/drivers/net/wireless/scsc/mlme.h +++ b/drivers/net/wireless/scsc/mlme.h @@ -212,8 +212,10 @@ int slsi_mlme_connect_scan(struct slsi_dev *sdev, struct net_device *dev, int slsi_mlme_powermgt(struct slsi_dev *sdev, struct net_device *dev, u16 ps_mode); int slsi_mlme_powermgt_unlocked(struct slsi_dev *sdev, struct net_device *dev, u16 ps_mode); int slsi_mlme_register_action_frame(struct slsi_dev *sdev, struct net_device *dev, u32 af_bitmap_active, u32 af_bitmap_suspended); +#ifdef CONFIG_SCSC_WLAN_SAE_CONFIG int slsi_mlme_synchronised_response(struct slsi_dev *sdev, struct net_device *dev, struct cfg80211_external_auth_params *params); +#endif int slsi_mlme_channel_switch(struct slsi_dev *sdev, struct net_device *dev, u16 center_freq, u16 chan_info); int slsi_mlme_add_info_elements(struct slsi_dev *sdev, struct net_device *dev, u16 purpose, const u8 *ies, const u16 ies_len); int slsi_mlme_send_frame_mgmt(struct slsi_dev *sdev, struct net_device *dev, const u8 *frame, int frame_len, u16 data_desc, u16 msg_type, u16 host_tag, u16 freq, u32 dwell_time, u32 period); diff --git a/drivers/net/wireless/scsc/rx.c b/drivers/net/wireless/scsc/rx.c index aacfe0a32091..c991c1f4aadf 100755 --- a/drivers/net/wireless/scsc/rx.c +++ b/drivers/net/wireless/scsc/rx.c @@ -1588,6 +1588,7 @@ void slsi_rx_buffered_frames(struct slsi_dev *sdev, struct net_device *dev, stru } } +#ifdef CONFIG_SCSC_WLAN_SAE_CONFIG void slsi_rx_synchronised_ind(struct slsi_dev *sdev, struct net_device *dev, struct sk_buff *skb) { struct netdev_vif *ndev_vif = netdev_priv(dev); @@ -1613,6 +1614,7 @@ void slsi_rx_synchronised_ind(struct slsi_dev *sdev, struct net_device *dev, str SLSI_NET_DBG1(dev, SLSI_MLME, "cfg80211_external_auth_request failed"); SLSI_MUTEX_UNLOCK(ndev_vif->vif_mutex); } +#endif void slsi_rx_connected_ind(struct slsi_dev *sdev, struct net_device *dev, struct sk_buff *skb) { diff --git a/drivers/net/wireless/scsc/sap_mlme.c b/drivers/net/wireless/scsc/sap_mlme.c index 35936de57e16..21584c2f9fdb 100755 --- a/drivers/net/wireless/scsc/sap_mlme.c +++ b/drivers/net/wireless/scsc/sap_mlme.c @@ -191,10 +191,12 @@ static int slsi_rx_netdev_mlme(struct slsi_dev *sdev, struct net_device *dev, st slsi_kfree_skb(skb); break; #endif +#ifdef CONFIG_SCSC_WLAN_SAE_CONFIG case MLME_SPARE_SIGNAL_1_IND: slsi_rx_synchronised_ind(sdev, dev, skb); slsi_kfree_skb(skb); break; +#endif default: slsi_kfree_skb(skb); SLSI_NET_ERR(dev, "Unhandled Ind: 0x%.4x\n", id); diff --git a/drivers/net/wireless/scsc/sap_mlme.h b/drivers/net/wireless/scsc/sap_mlme.h index 29e8efa71a03..a37abcbc967d 100755 --- a/drivers/net/wireless/scsc/sap_mlme.h +++ b/drivers/net/wireless/scsc/sap_mlme.h @@ -15,7 +15,9 @@ int sap_mlme_deinit(void); void slsi_rx_scan_ind(struct slsi_dev *sdev, struct net_device *dev, struct sk_buff *skb); void slsi_rx_scan_done_ind(struct slsi_dev *sdev, struct net_device *dev, struct sk_buff *skb); void slsi_rx_channel_switched_ind(struct slsi_dev *sdev, struct net_device *dev, struct sk_buff *skb); +#ifdef CONFIG_SCSC_WLAN_SAE_CONFIG void slsi_rx_synchronised_ind(struct slsi_dev *sdev, struct net_device *dev, struct sk_buff *skb); +#endif void slsi_rx_connect_ind(struct slsi_dev *sdev, struct net_device *dev, struct sk_buff *skb); void slsi_rx_connected_ind(struct slsi_dev *sdev, struct net_device *dev, struct sk_buff *skb); void slsi_rx_received_frame_ind(struct slsi_dev *sdev, struct net_device *dev, struct sk_buff *skb); -- 2.20.1