summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless
diff options
context:
space:
mode:
authorStanislaw Gruszka <sgruszka@redhat.com>2010-02-26 15:10:28 +0100
committerJohn W. Linville <linville@tuxdriver.com>2010-03-02 20:28:48 +0100
commit6510b8917948283005a125c8337d3312a8a0561c (patch)
treefe437f922fe4e866b45ec0d7df89f1281b71e6ac /drivers/net/wireless
parentvirtio_net: remove forgotten assignment (diff)
downloadlinux-6510b8917948283005a125c8337d3312a8a0561c.tar.xz
linux-6510b8917948283005a125c8337d3312a8a0561c.zip
airo: return from set_wep_key() when key length is zero
Even if keylen == 0 is a bug and should not really happen, better avoid possibility of passing bad value to firmware. Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r--drivers/net/wireless/airo.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/wireless/airo.c b/drivers/net/wireless/airo.c
index 698d5672a070..dc5018a6d9ed 100644
--- a/drivers/net/wireless/airo.c
+++ b/drivers/net/wireless/airo.c
@@ -5255,7 +5255,8 @@ static int set_wep_key(struct airo_info *ai, u16 index, const char *key,
WepKeyRid wkr;
int rc;
- WARN_ON(keylen == 0);
+ if (WARN_ON(keylen == 0))
+ return -1;
memset(&wkr, 0, sizeof(wkr));
wkr.len = cpu_to_le16(sizeof(wkr));