aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/wilc1000/host_interface.c
diff options
context:
space:
mode:
authorAjay Singh <ajay.kathat@microchip.com>2018-05-11 13:43:09 +0530
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-05-14 14:04:47 +0200
commitb3706d0ff356ca90f96414f652d9d4ff71f12065 (patch)
tree7a04e64d6fa0653dd739e7918943e228ae995640 /drivers/staging/wilc1000/host_interface.c
parentstaging: wilc1000: fix line over 80 chars in host_int_parse_assoc_resp_info() (diff)
downloadlinux-dev-b3706d0ff356ca90f96414f652d9d4ff71f12065.tar.xz
linux-dev-b3706d0ff356ca90f96414f652d9d4ff71f12065.zip
staging: wilc1000: replace kmalloc with kmemdup() in handle_connect_timeout()
Instead of kmalloc and memcpy use kmemdup in handle_connect_timeout(). Also return -ENOMEM incase of failure to allocate the memory. Signed-off-by: Ajay Singh <ajay.kathat@microchip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/wilc1000/host_interface.c')
-rw-r--r--drivers/staging/wilc1000/host_interface.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/staging/wilc1000/host_interface.c b/drivers/staging/wilc1000/host_interface.c
index 039b49b2c18a..89f4afdbdf6f 100644
--- a/drivers/staging/wilc1000/host_interface.c
+++ b/drivers/staging/wilc1000/host_interface.c
@@ -1166,10 +1166,11 @@ static s32 handle_connect_timeout(struct wilc_vif *vif)
if (hif_drv->usr_conn_req.ies) {
info.req_ies_len = hif_drv->usr_conn_req.ies_len;
- info.req_ies = kmalloc(hif_drv->usr_conn_req.ies_len, GFP_KERNEL);
- memcpy(info.req_ies,
- hif_drv->usr_conn_req.ies,
- hif_drv->usr_conn_req.ies_len);
+ info.req_ies = kmemdup(hif_drv->usr_conn_req.ies,
+ hif_drv->usr_conn_req.ies_len,
+ GFP_KERNEL);
+ if (!info.req_ies)
+ return -ENOMEM;
}
hif_drv->usr_conn_req.conn_result(CONN_DISCONN_EVENT_CONN_RESP,