提交 1ad0f160 编写于 作者: E Eric Biggers 提交者: Herbert Xu

crypto: drop mask=CRYPTO_ALG_ASYNC from 'cipher' tfm allocations

'cipher' algorithms (single block ciphers) are always synchronous, so
passing CRYPTO_ALG_ASYNC in the mask to crypto_alloc_cipher() has no
effect.  Many users therefore already don't pass it, but some still do.
This inconsistency can cause confusion, especially since the way the
'mask' argument works is somewhat counterintuitive.

Thus, just remove the unneeded CRYPTO_ALG_ASYNC flags.

This patch shouldn't change any actual behavior.
Signed-off-by: NEric Biggers <ebiggers@google.com>
Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
上级 d4165590
...@@ -137,7 +137,7 @@ static int fallback_init_cip(struct crypto_tfm *tfm) ...@@ -137,7 +137,7 @@ static int fallback_init_cip(struct crypto_tfm *tfm)
struct s390_aes_ctx *sctx = crypto_tfm_ctx(tfm); struct s390_aes_ctx *sctx = crypto_tfm_ctx(tfm);
sctx->fallback.cip = crypto_alloc_cipher(name, 0, sctx->fallback.cip = crypto_alloc_cipher(name, 0,
CRYPTO_ALG_ASYNC | CRYPTO_ALG_NEED_FALLBACK); CRYPTO_ALG_NEED_FALLBACK);
if (IS_ERR(sctx->fallback.cip)) { if (IS_ERR(sctx->fallback.cip)) {
pr_err("Allocating AES fallback algorithm %s failed\n", pr_err("Allocating AES fallback algorithm %s failed\n",
......
...@@ -520,8 +520,7 @@ static int crypto4xx_compute_gcm_hash_key_sw(__le32 *hash_start, const u8 *key, ...@@ -520,8 +520,7 @@ static int crypto4xx_compute_gcm_hash_key_sw(__le32 *hash_start, const u8 *key,
uint8_t src[16] = { 0 }; uint8_t src[16] = { 0 };
int rc = 0; int rc = 0;
aes_tfm = crypto_alloc_cipher("aes", 0, CRYPTO_ALG_ASYNC | aes_tfm = crypto_alloc_cipher("aes", 0, CRYPTO_ALG_NEED_FALLBACK);
CRYPTO_ALG_NEED_FALLBACK);
if (IS_ERR(aes_tfm)) { if (IS_ERR(aes_tfm)) {
rc = PTR_ERR(aes_tfm); rc = PTR_ERR(aes_tfm);
pr_warn("could not load aes cipher driver: %d\n", rc); pr_warn("could not load aes cipher driver: %d\n", rc);
......
...@@ -346,9 +346,7 @@ static int ccp_aes_cmac_cra_init(struct crypto_tfm *tfm) ...@@ -346,9 +346,7 @@ static int ccp_aes_cmac_cra_init(struct crypto_tfm *tfm)
crypto_ahash_set_reqsize(ahash, sizeof(struct ccp_aes_cmac_req_ctx)); crypto_ahash_set_reqsize(ahash, sizeof(struct ccp_aes_cmac_req_ctx));
cipher_tfm = crypto_alloc_cipher("aes", 0, cipher_tfm = crypto_alloc_cipher("aes", 0, CRYPTO_ALG_NEED_FALLBACK);
CRYPTO_ALG_ASYNC |
CRYPTO_ALG_NEED_FALLBACK);
if (IS_ERR(cipher_tfm)) { if (IS_ERR(cipher_tfm)) {
pr_warn("could not load aes cipher driver\n"); pr_warn("could not load aes cipher driver\n");
return PTR_ERR(cipher_tfm); return PTR_ERR(cipher_tfm);
......
...@@ -261,7 +261,7 @@ static int fallback_init_cip(struct crypto_tfm *tfm) ...@@ -261,7 +261,7 @@ static int fallback_init_cip(struct crypto_tfm *tfm)
struct geode_aes_op *op = crypto_tfm_ctx(tfm); struct geode_aes_op *op = crypto_tfm_ctx(tfm);
op->fallback.cip = crypto_alloc_cipher(name, 0, op->fallback.cip = crypto_alloc_cipher(name, 0,
CRYPTO_ALG_ASYNC | CRYPTO_ALG_NEED_FALLBACK); CRYPTO_ALG_NEED_FALLBACK);
if (IS_ERR(op->fallback.cip)) { if (IS_ERR(op->fallback.cip)) {
printk(KERN_ERR "Error allocating fallback algo %s\n", name); printk(KERN_ERR "Error allocating fallback algo %s\n", name);
......
...@@ -377,7 +377,7 @@ static struct crypto_cipher *alloc_essiv_cipher(struct crypt_config *cc, ...@@ -377,7 +377,7 @@ static struct crypto_cipher *alloc_essiv_cipher(struct crypt_config *cc,
int err; int err;
/* Setup the essiv_tfm with the given salt */ /* Setup the essiv_tfm with the given salt */
essiv_tfm = crypto_alloc_cipher(cc->cipher, 0, CRYPTO_ALG_ASYNC); essiv_tfm = crypto_alloc_cipher(cc->cipher, 0, 0);
if (IS_ERR(essiv_tfm)) { if (IS_ERR(essiv_tfm)) {
ti->error = "Error allocating crypto tfm for ESSIV"; ti->error = "Error allocating crypto tfm for ESSIV";
return essiv_tfm; return essiv_tfm;
......
...@@ -1359,7 +1359,7 @@ static int micsetup(struct airo_info *ai) { ...@@ -1359,7 +1359,7 @@ static int micsetup(struct airo_info *ai) {
int i; int i;
if (ai->tfm == NULL) if (ai->tfm == NULL)
ai->tfm = crypto_alloc_cipher("aes", 0, CRYPTO_ALG_ASYNC); ai->tfm = crypto_alloc_cipher("aes", 0, 0);
if (IS_ERR(ai->tfm)) { if (IS_ERR(ai->tfm)) {
airo_print_err(ai->dev->name, "failed to load transform for AES"); airo_print_err(ai->dev->name, "failed to load transform for AES");
......
...@@ -67,7 +67,7 @@ static void *rtllib_ccmp_init(int key_idx) ...@@ -67,7 +67,7 @@ static void *rtllib_ccmp_init(int key_idx)
goto fail; goto fail;
priv->key_idx = key_idx; priv->key_idx = key_idx;
priv->tfm = (void *)crypto_alloc_cipher("aes", 0, CRYPTO_ALG_ASYNC); priv->tfm = (void *)crypto_alloc_cipher("aes", 0, 0);
if (IS_ERR(priv->tfm)) { if (IS_ERR(priv->tfm)) {
pr_debug("Could not allocate crypto API aes\n"); pr_debug("Could not allocate crypto API aes\n");
priv->tfm = NULL; priv->tfm = NULL;
......
...@@ -71,7 +71,7 @@ static void *ieee80211_ccmp_init(int key_idx) ...@@ -71,7 +71,7 @@ static void *ieee80211_ccmp_init(int key_idx)
goto fail; goto fail;
priv->key_idx = key_idx; priv->key_idx = key_idx;
priv->tfm = (void *)crypto_alloc_cipher("aes", 0, CRYPTO_ALG_ASYNC); priv->tfm = (void *)crypto_alloc_cipher("aes", 0, 0);
if (IS_ERR(priv->tfm)) { if (IS_ERR(priv->tfm)) {
pr_debug("ieee80211_crypt_ccmp: could not allocate crypto API aes\n"); pr_debug("ieee80211_crypt_ccmp: could not allocate crypto API aes\n");
priv->tfm = NULL; priv->tfm = NULL;
......
...@@ -316,7 +316,7 @@ ssize_t wusb_prf(void *out, size_t out_size, ...@@ -316,7 +316,7 @@ ssize_t wusb_prf(void *out, size_t out_size,
goto error_setkey_cbc; goto error_setkey_cbc;
} }
tfm_aes = crypto_alloc_cipher("aes", 0, CRYPTO_ALG_ASYNC); tfm_aes = crypto_alloc_cipher("aes", 0, 0);
if (IS_ERR(tfm_aes)) { if (IS_ERR(tfm_aes)) {
result = PTR_ERR(tfm_aes); result = PTR_ERR(tfm_aes);
printk(KERN_ERR "E: can't load AES: %d\n", (int)result); printk(KERN_ERR "E: can't load AES: %d\n", (int)result);
......
...@@ -1390,7 +1390,7 @@ static struct smp_chan *smp_chan_create(struct l2cap_conn *conn) ...@@ -1390,7 +1390,7 @@ static struct smp_chan *smp_chan_create(struct l2cap_conn *conn)
if (!smp) if (!smp)
return NULL; return NULL;
smp->tfm_aes = crypto_alloc_cipher("aes", 0, CRYPTO_ALG_ASYNC); smp->tfm_aes = crypto_alloc_cipher("aes", 0, 0);
if (IS_ERR(smp->tfm_aes)) { if (IS_ERR(smp->tfm_aes)) {
BT_ERR("Unable to create AES crypto context"); BT_ERR("Unable to create AES crypto context");
goto zfree_smp; goto zfree_smp;
...@@ -3233,7 +3233,7 @@ static struct l2cap_chan *smp_add_cid(struct hci_dev *hdev, u16 cid) ...@@ -3233,7 +3233,7 @@ static struct l2cap_chan *smp_add_cid(struct hci_dev *hdev, u16 cid)
if (!smp) if (!smp)
return ERR_PTR(-ENOMEM); return ERR_PTR(-ENOMEM);
tfm_aes = crypto_alloc_cipher("aes", 0, CRYPTO_ALG_ASYNC); tfm_aes = crypto_alloc_cipher("aes", 0, 0);
if (IS_ERR(tfm_aes)) { if (IS_ERR(tfm_aes)) {
BT_ERR("Unable to create AES crypto context"); BT_ERR("Unable to create AES crypto context");
kzfree(smp); kzfree(smp);
...@@ -3906,7 +3906,7 @@ int __init bt_selftest_smp(void) ...@@ -3906,7 +3906,7 @@ int __init bt_selftest_smp(void)
struct crypto_kpp *tfm_ecdh; struct crypto_kpp *tfm_ecdh;
int err; int err;
tfm_aes = crypto_alloc_cipher("aes", 0, CRYPTO_ALG_ASYNC); tfm_aes = crypto_alloc_cipher("aes", 0, 0);
if (IS_ERR(tfm_aes)) { if (IS_ERR(tfm_aes)) {
BT_ERR("Unable to create AES crypto context"); BT_ERR("Unable to create AES crypto context");
return PTR_ERR(tfm_aes); return PTR_ERR(tfm_aes);
......
...@@ -30,13 +30,13 @@ int ieee80211_wep_init(struct ieee80211_local *local) ...@@ -30,13 +30,13 @@ int ieee80211_wep_init(struct ieee80211_local *local)
/* start WEP IV from a random value */ /* start WEP IV from a random value */
get_random_bytes(&local->wep_iv, IEEE80211_WEP_IV_LEN); get_random_bytes(&local->wep_iv, IEEE80211_WEP_IV_LEN);
local->wep_tx_tfm = crypto_alloc_cipher("arc4", 0, CRYPTO_ALG_ASYNC); local->wep_tx_tfm = crypto_alloc_cipher("arc4", 0, 0);
if (IS_ERR(local->wep_tx_tfm)) { if (IS_ERR(local->wep_tx_tfm)) {
local->wep_rx_tfm = ERR_PTR(-EINVAL); local->wep_rx_tfm = ERR_PTR(-EINVAL);
return PTR_ERR(local->wep_tx_tfm); return PTR_ERR(local->wep_tx_tfm);
} }
local->wep_rx_tfm = crypto_alloc_cipher("arc4", 0, CRYPTO_ALG_ASYNC); local->wep_rx_tfm = crypto_alloc_cipher("arc4", 0, 0);
if (IS_ERR(local->wep_rx_tfm)) { if (IS_ERR(local->wep_rx_tfm)) {
crypto_free_cipher(local->wep_tx_tfm); crypto_free_cipher(local->wep_tx_tfm);
local->wep_tx_tfm = ERR_PTR(-EINVAL); local->wep_tx_tfm = ERR_PTR(-EINVAL);
......
...@@ -75,7 +75,7 @@ static void *lib80211_ccmp_init(int key_idx) ...@@ -75,7 +75,7 @@ static void *lib80211_ccmp_init(int key_idx)
goto fail; goto fail;
priv->key_idx = key_idx; priv->key_idx = key_idx;
priv->tfm = crypto_alloc_cipher("aes", 0, CRYPTO_ALG_ASYNC); priv->tfm = crypto_alloc_cipher("aes", 0, 0);
if (IS_ERR(priv->tfm)) { if (IS_ERR(priv->tfm)) {
priv->tfm = NULL; priv->tfm = NULL;
goto fail; goto fail;
......
...@@ -99,7 +99,7 @@ static void *lib80211_tkip_init(int key_idx) ...@@ -99,7 +99,7 @@ static void *lib80211_tkip_init(int key_idx)
priv->key_idx = key_idx; priv->key_idx = key_idx;
priv->tx_tfm_arc4 = crypto_alloc_cipher("arc4", 0, CRYPTO_ALG_ASYNC); priv->tx_tfm_arc4 = crypto_alloc_cipher("arc4", 0, 0);
if (IS_ERR(priv->tx_tfm_arc4)) { if (IS_ERR(priv->tx_tfm_arc4)) {
priv->tx_tfm_arc4 = NULL; priv->tx_tfm_arc4 = NULL;
goto fail; goto fail;
...@@ -111,7 +111,7 @@ static void *lib80211_tkip_init(int key_idx) ...@@ -111,7 +111,7 @@ static void *lib80211_tkip_init(int key_idx)
goto fail; goto fail;
} }
priv->rx_tfm_arc4 = crypto_alloc_cipher("arc4", 0, CRYPTO_ALG_ASYNC); priv->rx_tfm_arc4 = crypto_alloc_cipher("arc4", 0, 0);
if (IS_ERR(priv->rx_tfm_arc4)) { if (IS_ERR(priv->rx_tfm_arc4)) {
priv->rx_tfm_arc4 = NULL; priv->rx_tfm_arc4 = NULL;
goto fail; goto fail;
......
...@@ -48,13 +48,13 @@ static void *lib80211_wep_init(int keyidx) ...@@ -48,13 +48,13 @@ static void *lib80211_wep_init(int keyidx)
goto fail; goto fail;
priv->key_idx = keyidx; priv->key_idx = keyidx;
priv->tx_tfm = crypto_alloc_cipher("arc4", 0, CRYPTO_ALG_ASYNC); priv->tx_tfm = crypto_alloc_cipher("arc4", 0, 0);
if (IS_ERR(priv->tx_tfm)) { if (IS_ERR(priv->tx_tfm)) {
priv->tx_tfm = NULL; priv->tx_tfm = NULL;
goto fail; goto fail;
} }
priv->rx_tfm = crypto_alloc_cipher("arc4", 0, CRYPTO_ALG_ASYNC); priv->rx_tfm = crypto_alloc_cipher("arc4", 0, 0);
if (IS_ERR(priv->rx_tfm)) { if (IS_ERR(priv->rx_tfm)) {
priv->rx_tfm = NULL; priv->rx_tfm = NULL;
goto fail; goto fail;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册