diff options
Diffstat (limited to 'drivers/net/wireless/ipw2100.c')
-rw-r--r-- | drivers/net/wireless/ipw2100.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/net/wireless/ipw2100.c b/drivers/net/wireless/ipw2100.c index 4e4eaa2a99ca..5bf4d4119c3d 100644 --- a/drivers/net/wireless/ipw2100.c +++ b/drivers/net/wireless/ipw2100.c | |||
@@ -7568,11 +7568,10 @@ static int ipw2100_wx_set_genie(struct net_device *dev, | |||
7568 | return -EINVAL; | 7568 | return -EINVAL; |
7569 | 7569 | ||
7570 | if (wrqu->data.length) { | 7570 | if (wrqu->data.length) { |
7571 | buf = kmalloc(wrqu->data.length, GFP_KERNEL); | 7571 | buf = kmemdup(extra, wrqu->data.length, GFP_KERNEL); |
7572 | if (buf == NULL) | 7572 | if (buf == NULL) |
7573 | return -ENOMEM; | 7573 | return -ENOMEM; |
7574 | 7574 | ||
7575 | memcpy(buf, extra, wrqu->data.length); | ||
7576 | kfree(ieee->wpa_ie); | 7575 | kfree(ieee->wpa_ie); |
7577 | ieee->wpa_ie = buf; | 7576 | ieee->wpa_ie = buf; |
7578 | ieee->wpa_ie_len = wrqu->data.length; | 7577 | ieee->wpa_ie_len = wrqu->data.length; |