The result of "foo = bar" is true, so in statements such as ... if((pDevice->bwextstep0 = TRUE)&&(param->u.wpa_key.key_index ==1)) ... an assignment is most likely not what was intended - a comparison was. As in: ... if ((pDevice->bwextstep0 == TRUE) && (param->u.wpa_key.key_index == 1)) ... There are a 3 such mistakes in the iwctl_siwencodeext() function. This patch fixes them all. Signed-off-by: Jesper Juhl <jj@xxxxxxxxxxxxx> --- drivers/staging/vt6656/iwctl.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) The file could also do with a serious style cleanup, but that's a different (set of) patches. This one just fixes the bug. diff --git a/drivers/staging/vt6656/iwctl.c b/drivers/staging/vt6656/iwctl.c index b24e531..5740438 100644 --- a/drivers/staging/vt6656/iwctl.c +++ b/drivers/staging/vt6656/iwctl.c @@ -1708,15 +1708,15 @@ if(param->u.wpa_key.alg_name == WPA_ALG_NONE) { if(param->u.wpa_key.key_index ==0) { pDevice->bwextstep0 = TRUE; } - if((pDevice->bwextstep0 = TRUE)&&(param->u.wpa_key.key_index ==1)) { + if ((pDevice->bwextstep0 == TRUE) && (param->u.wpa_key.key_index == 1)) { pDevice->bwextstep0 = FALSE; pDevice->bwextstep1 = TRUE; } - if((pDevice->bwextstep1 = TRUE)&&(param->u.wpa_key.key_index ==2)) { + if ((pDevice->bwextstep1 == TRUE) && (param->u.wpa_key.key_index == 2)) { pDevice->bwextstep1 = FALSE; pDevice->bwextstep2 = TRUE; } - if((pDevice->bwextstep2 = TRUE)&&(param->u.wpa_key.key_index ==3)) { + if ((pDevice->bwextstep2 == TRUE)&&(param->u.wpa_key.key_index == 3)) { pDevice->bwextstep2 = FALSE; pDevice->bwextstep3 = TRUE; } -- 1.7.11 -- Jesper Juhl <jj@xxxxxxxxxxxxx> http://www.chaosbits.net/ Don't top-post http://www.catb.org/jargon/html/T/top-post.html Plain text mails only, please. _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel