[PATCH 18/32] staging: brcm80211: Fix for WPA GTK install issue in brcmfmac driver

Grant Grundler grundler at chromium.org
Fri May 13 15:22:51 UTC 2011


On Fri, May 13, 2011 at 2:59 AM, Arend van Spriel <arend at broadcom.com> wrote:
> From: Sukesh Srikakula <sukeshs at broadcom.com>
>
> Last 16 bytes of the key sent by cfg80211 needs to be swapped before
> installing it to FW for TKIP encryption. This is not done for group
> key in current code, which is corrected with this fix.
>
> Cc: devel at linuxdriverproject.org
> Cc: linux-wireless at vger.kernel.org
> Cc: Grant Grundler <grundler at chromium.org>

Thanks Arend+Sukesh for posting this! :)

Tested-by: Grant Grundler <grundler at chromium.org>

Please add the same line for Aaron Plattner <aplattner at nvidia.com>
    http://gerrit.chromium.org/gerrit/502

cheers,
grant

> Reviewed-by: Franky (Zhenhui) Lin <frankyl at broadcom.com>
> Reviewed-by: Brett Rudley <brudley at broadcom.com>
> Signed-off-by: Arend van Spriel <arend at broadcom.com>
> ---
>  drivers/staging/brcm80211/brcmfmac/wl_cfg80211.c |    4 ++++
>  1 files changed, 4 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/staging/brcm80211/brcmfmac/wl_cfg80211.c b/drivers/staging/brcm80211/brcmfmac/wl_cfg80211.c
> index b44daf9..c60fc7c 100644
> --- a/drivers/staging/brcm80211/brcmfmac/wl_cfg80211.c
> +++ b/drivers/staging/brcm80211/brcmfmac/wl_cfg80211.c
> @@ -1616,6 +1616,7 @@ wl_cfg80211_add_key(struct wiphy *wiphy, struct net_device *dev,
>        s32 val;
>        s32 wsec;
>        s32 err = 0;
> +       u8 keybuf[8];
>
>        WL_DBG("key index (%d)\n", key_idx);
>        CHECK_SYS_UP();
> @@ -1644,6 +1645,9 @@ wl_cfg80211_add_key(struct wiphy *wiphy, struct net_device *dev,
>                WL_DBG("WLAN_CIPHER_SUITE_WEP104\n");
>                break;
>        case WLAN_CIPHER_SUITE_TKIP:
> +               memcpy(keybuf, &key.data[24], sizeof(keybuf));
> +               memcpy(&key.data[24], &key.data[16], sizeof(keybuf));
> +               memcpy(&key.data[16], keybuf, sizeof(keybuf));
>                key.algo = CRYPTO_ALGO_TKIP;
>                WL_DBG("WLAN_CIPHER_SUITE_TKIP\n");
>                break;
> --
> 1.7.4.1
>
>
>



More information about the devel mailing list