staging: wilc1000: replace kmalloc/memcpy with kmemdup
[firefly-linux-kernel-4.4.55.git] / drivers / staging / wilc1000 / host_interface.c
index af98c43fef0e93accc419d26a18fb3e05de536bf..28fef252508686e59f09c70ef1b74f0534d1cbd1 100644 (file)
@@ -3124,8 +3124,10 @@ int host_int_add_wep_key_bss_sta(struct host_if_drv *hif_drv,
        msg.body.key_info.type = WEP;
        msg.body.key_info.action = ADDKEY;
        msg.drv = hif_drv;
-       msg.body.key_info.attr.wep.key = kmalloc(len, GFP_KERNEL);
-       memcpy(msg.body.key_info.attr.wep.key, key, len);
+       msg.body.key_info.attr.wep.key = kmemdup(key, len, GFP_KERNEL);
+       if (!msg.body.key_info.attr.wep.key)
+               return -ENOMEM;
+
        msg.body.key_info.attr.wep.key_len = len;
        msg.body.key_info.attr.wep.index = index;