diff mbox

[06/10] brcmfmac: fix big endian bug in i-scan.

Message ID 1347283018-24223-7-git-send-email-arend@broadcom.com (mailing list archive)
State Not Applicable, archived
Headers show

Commit Message

Arend van Spriel Sept. 10, 2012, 1:16 p.m. UTC
From: Hante Meuleman <meuleman@broadcom.com>

ssid len is 32 bit and needs endian conversion for big endian systems.

Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
---
 .../net/wireless/brcm80211/brcmfmac/wl_cfg80211.c  |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Comments

Florian Fainelli Sept. 10, 2012, 4:37 p.m. UTC | #1
Hello,

On Monday 10 September 2012 15:16:54 Arend van Spriel wrote:
> From: Hante Meuleman <meuleman@broadcom.com>
> 
> ssid len is 32 bit and needs endian conversion for big endian systems.
> 
> Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
> Signed-off-by: Arend van Spriel <arend@broadcom.com>

This looks like a candidate for stable.

> ---
>  .../net/wireless/brcm80211/brcmfmac/wl_cfg80211.c  |    6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c 
b/drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c
> index 4a27ca0..6623f48 100644
> --- a/drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c
> +++ b/drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c
> @@ -501,8 +501,10 @@ static void brcmf_iscan_prep(struct 
brcmf_scan_params_le *params_le,
>  	params_le->active_time = cpu_to_le32(-1);
>  	params_le->passive_time = cpu_to_le32(-1);
>  	params_le->home_time = cpu_to_le32(-1);
> -	if (ssid && ssid->SSID_len)
> -		memcpy(&params_le->ssid_le, ssid, sizeof(struct brcmf_ssid));
> +	if (ssid && ssid->SSID_len) {
> +		params_le->ssid_le.SSID_len = cpu_to_le32(ssid->SSID_len);
> +		memcpy(&params_le->ssid_le.SSID, ssid->SSID, ssid->SSID_len);
> +	}
>  }
>  
>  static s32
> -- 
> 1.7.9.5
> 
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c b/drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c
index 4a27ca0..6623f48 100644
--- a/drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c
+++ b/drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c
@@ -501,8 +501,10 @@  static void brcmf_iscan_prep(struct brcmf_scan_params_le *params_le,
 	params_le->active_time = cpu_to_le32(-1);
 	params_le->passive_time = cpu_to_le32(-1);
 	params_le->home_time = cpu_to_le32(-1);
-	if (ssid && ssid->SSID_len)
-		memcpy(&params_le->ssid_le, ssid, sizeof(struct brcmf_ssid));
+	if (ssid && ssid->SSID_len) {
+		params_le->ssid_le.SSID_len = cpu_to_le32(ssid->SSID_len);
+		memcpy(&params_le->ssid_le.SSID, ssid->SSID, ssid->SSID_len);
+	}
 }
 
 static s32