summaryrefslogtreecommitdiff
path: root/net/wireless/wext.c
diff options
context:
space:
mode:
authorRobert Richter <robert.richter@amd.com>2009-06-10 23:47:10 +0400
committerRobert Richter <robert.richter@amd.com>2009-06-10 23:47:10 +0400
commit0886751c5d8b19fcee2e65d34ae21c9111e652a9 (patch)
tree015e8c2b3d44d46e9e8fccd016340c51bc876d3b /net/wireless/wext.c
parent7e4e0bd50e80df2fe5501f48f872448376cdd997 (diff)
parent07a2039b8eb0af4ff464efd3dfd95de5c02648c6 (diff)
downloadlinux-0886751c5d8b19fcee2e65d34ae21c9111e652a9.tar.xz
Merge commit 'v2.6.30' into oprofile/master
Diffstat (limited to 'net/wireless/wext.c')
-rw-r--r--net/wireless/wext.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/net/wireless/wext.c b/net/wireless/wext.c
index cb6a5bb85d80..0e59f9ae9b81 100644
--- a/net/wireless/wext.c
+++ b/net/wireless/wext.c
@@ -786,6 +786,13 @@ static int ioctl_standard_iw_point(struct iw_point *iwp, unsigned int cmd,
err = -EFAULT;
goto out;
}
+
+ if (cmd == SIOCSIWENCODEEXT) {
+ struct iw_encode_ext *ee = (void *) extra;
+
+ if (iwp->length < sizeof(*ee) + ee->key_len)
+ return -EFAULT;
+ }
}
err = handler(dev, info, (union iwreq_data *) iwp, extra);