staging: rtl8192u: use memdup_user to simplify code

Use memdup_user rather than duplicating its implementation. Fix the
following coccinelle warnings:

drivers/staging/rtl8192u/r8192U_core.c:3792:7-14: WARNING opportunity for memdup_user
drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c:3153:9-16: WARNING opportunity for memdup_user

Signed-off-by: Teodora Baluta <teobaluta@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Teodora Baluta 2013-10-25 11:27:09 +03:00 committed by Greg Kroah-Hartman
parent 5b66fb7d57
commit 38272d20b9
2 changed files with 6 additions and 16 deletions

View File

@ -3150,14 +3150,9 @@ int ieee80211_wpa_supplicant_ioctl(struct ieee80211_device *ieee, struct iw_poin
goto out;
}
param = kmalloc(p->length, GFP_KERNEL);
if (param == NULL){
ret = -ENOMEM;
goto out;
}
if (copy_from_user(param, p->pointer, p->length)) {
kfree(param);
ret = -EFAULT;
param = memdup_user(p->pointer, p->length);
if (IS_ERR(param)) {
ret = PTR_ERR(param);
goto out;
}

View File

@ -3789,14 +3789,9 @@ int rtl8192_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)
goto out;
}
ipw = kmalloc(p->length, GFP_KERNEL);
if (ipw == NULL) {
ret = -ENOMEM;
goto out;
}
if (copy_from_user(ipw, p->pointer, p->length)) {
kfree(ipw);
ret = -EFAULT;
ipw = memdup_user(p->pointer, p->length);
if (IS_ERR(ipw)) {
ret = PTR_ERR(ipw);
goto out;
}