Staging: vt6655: fix buffer overflow
authorDan Carpenter <error27@gmail.com>
Mon, 6 Sep 2010 12:32:30 +0000 (14:32 +0200)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 20 Sep 2010 23:31:54 +0000 (16:31 -0700)
commitdd173abfead903c7df54e977535973f3312cd307
tree905398a016da8e714894786c24684fa532cace12
parent350aede603f7db7a9b4c1a340fbe89ccae6523a2
Staging: vt6655: fix buffer overflow

"param->u.wpa_associate.wpa_ie_len" comes from the user.  We should
check it so that the copy_from_user() doesn't overflow the buffer.

Also further down in the function, we assume that if
"param->u.wpa_associate.wpa_ie_len" is set then "abyWPAIE[0]" is
initialized.  To make that work, I changed the test here to say that if
"wpa_ie_len" is set then "wpa_ie" has to be a valid pointer or we return
-EINVAL.

Oddly, we only use the first element of the abyWPAIE[] array.  So I
suspect there may be some other issues in this function.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/vt6655/wpactl.c