[PATCH 718/961] staging: rtl8192e use kmemdup and check its return value

Greg Kroah-Hartman gregkh at suse.de
Wed Mar 16 21:06:01 UTC 2011


From: Xiaochen Wang <wangxiaochen0 at gmail.com>

use kmemdup instead of kmalloc and memcpy,
and check its return value

Signed-off-by: Xiaochen Wang <wangxiaochen0 at gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh at suse.de>
---
 .../staging/rtl8192e/ieee80211/ieee80211_softmac.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/rtl8192e/ieee80211/ieee80211_softmac.c b/drivers/staging/rtl8192e/ieee80211/ieee80211_softmac.c
index 88a9cd1..fc96676 100644
--- a/drivers/staging/rtl8192e/ieee80211/ieee80211_softmac.c
+++ b/drivers/staging/rtl8192e/ieee80211/ieee80211_softmac.c
@@ -1564,8 +1564,9 @@ static inline u16 auth_parse(struct sk_buff *skb, u8** challenge, int *chlen)
 
 		if(*(t++) == MFIE_TYPE_CHALLENGE){
 			*chlen = *(t++);
-			*challenge = kmalloc(*chlen, GFP_ATOMIC);
-			memcpy(*challenge, t, *chlen);
+			*challenge = kmemdup(t, *chlen, GFP_ATOMIC);
+			if (!*challenge)
+				return -ENOMEM;
 		}
 	}
 
-- 
1.7.4.1




More information about the devel mailing list