Lines Matching defs:key_tfm
1538 * @key_tfm: Crypto context for key material, set by this function
1547 ecryptfs_process_key_cipher(struct crypto_skcipher **key_tfm,
1554 *key_tfm = NULL;
1565 *key_tfm = crypto_alloc_skcipher(full_alg_name, 0, CRYPTO_ALG_ASYNC);
1566 if (IS_ERR(*key_tfm)) {
1567 rc = PTR_ERR(*key_tfm);
1572 crypto_skcipher_set_flags(*key_tfm, CRYPTO_TFM_REQ_FORBID_WEAK_KEYS);
1574 *key_size = crypto_skcipher_max_keysize(*key_tfm);
1576 rc = crypto_skcipher_setkey(*key_tfm, dummy_key, *key_size);
1607 struct ecryptfs_key_tfm *key_tfm, *key_tfm_tmp;
1610 list_for_each_entry_safe(key_tfm, key_tfm_tmp, &key_tfm_list,
1612 list_del(&key_tfm->key_tfm_list);
1613 crypto_free_skcipher(key_tfm->key_tfm);
1614 kmem_cache_free(ecryptfs_key_tfm_cache, key_tfm);
1621 ecryptfs_add_new_key_tfm(struct ecryptfs_key_tfm **key_tfm, char *cipher_name,
1630 if (key_tfm)
1631 (*key_tfm) = tmp_tfm;
1641 rc = ecryptfs_process_key_cipher(&tmp_tfm->key_tfm,
1649 if (key_tfm)
1650 (*key_tfm) = NULL;
1661 * @key_tfm: set to corresponding tfm if found
1663 * Searches for cached key_tfm matching @cipher_name
1665 * Returns 1 if found, with @key_tfm set
1666 * Returns 0 if not found, with @key_tfm set to NULL
1668 int ecryptfs_tfm_exists(char *cipher_name, struct ecryptfs_key_tfm **key_tfm)
1676 if (key_tfm)
1677 (*key_tfm) = tmp_key_tfm;
1681 if (key_tfm)
1682 (*key_tfm) = NULL;
1701 struct ecryptfs_key_tfm *key_tfm;
1708 if (!ecryptfs_tfm_exists(cipher_name, &key_tfm)) {
1709 rc = ecryptfs_add_new_key_tfm(&key_tfm, cipher_name, 0);
1711 printk(KERN_ERR "Error adding new key_tfm to list; "
1716 (*tfm) = key_tfm->key_tfm;
1717 (*tfm_mutex) = &key_tfm->key_tfm_mutex;