mac80211: aes_cmac: check crypto_shash_setkey() return value
As crypto_shash_setkey() can fail, we should check the return value. Addresses-Coverity-ID: 1401813 ("Unchecked return value") Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Link: https://lore.kernel.org/r/iwlwifi.20210409123755.533ff7acf1d2.I034bafa201c4a6823333f8410aeaa60cca5ee9e0@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
bab7f5ca81
commit
8de8570489
|
@ -2,6 +2,7 @@
|
||||||
/*
|
/*
|
||||||
* AES-128-CMAC with TLen 16 for IEEE 802.11w BIP
|
* AES-128-CMAC with TLen 16 for IEEE 802.11w BIP
|
||||||
* Copyright 2008, Jouni Malinen <j@w1.fi>
|
* Copyright 2008, Jouni Malinen <j@w1.fi>
|
||||||
|
* Copyright (C) 2020 Intel Corporation
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <linux/kernel.h>
|
#include <linux/kernel.h>
|
||||||
|
@ -73,8 +74,14 @@ struct crypto_shash *ieee80211_aes_cmac_key_setup(const u8 key[],
|
||||||
struct crypto_shash *tfm;
|
struct crypto_shash *tfm;
|
||||||
|
|
||||||
tfm = crypto_alloc_shash("cmac(aes)", 0, 0);
|
tfm = crypto_alloc_shash("cmac(aes)", 0, 0);
|
||||||
if (!IS_ERR(tfm))
|
if (!IS_ERR(tfm)) {
|
||||||
crypto_shash_setkey(tfm, key, key_len);
|
int err = crypto_shash_setkey(tfm, key, key_len);
|
||||||
|
|
||||||
|
if (err) {
|
||||||
|
crypto_free_shash(tfm);
|
||||||
|
return ERR_PTR(err);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return tfm;
|
return tfm;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue