Re: p80211wext.c: possible problem with IW_ENCODE_ALG_WEP

From: Richard Kennedy
Date: Tue May 05 2009 - 08:48:35 EST


Julia Lawall wrote:
> The file drivers/staging/wlan-ng/p80211wext.c contains the following code:
>
> (starting at line 1490 in a recent linux-next)
>
> if (!(ext->alg & IW_ENCODE_ALG_WEP)) {
> pr_debug("asked to set a non wep key :(");
> return -EINVAL;
> }
>
> The reference to IW_ENCODE_ALG_WEP seems to refer to the following
> definitions in include/linux/wireless.h
>
> /* struct iw_encode_ext ->alg */
> #define IW_ENCODE_ALG_NONE 0
> #define IW_ENCODE_ALG_WEP 1
> #define IW_ENCODE_ALG_TKIP 2
> #define IW_ENCODE_ALG_CCMP 3
> #define IW_ENCODE_ALG_PMK 4
> #define IW_ENCODE_ALG_AES_CMAC 5
>
> But if the alg field returns true for a bit and with IW_ENCODE_ALG_WEP,
> then it would also return true for a bit and with IW_ENCODE_ALG_CCMP and
> IW_ENCODE_ALG_AES_CMAC. Is this what is intended, or should the test be
> encoded in another way?
>
> julia
Hi Julia,

You're quite right, this is not what was intended.

The card only handles WEP keys so
if (ext->alg != IW_ENCODE_ALG_WEP) {...}

would be better.

Do you want to send a patch to correct this? If not, I can do it.

regards
Richard
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/