Browse Source

crypto: caam - add support for givencrypt cbc(des) and cbc(des3_ede)

Merge DES Cipher Block Chaining mode (CBC) and Triple DES Cipher Block
Chaining mode (CBC) algorithms from ablkcipher to givencrypt.

Signed-off-by: Catalin Vasile <catalin.vasile@freescale.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Catalin Vasile 10 years ago
parent
commit
ff2c3a3b8e
1 changed files with 6 additions and 4 deletions
  1. 6 4
      drivers/crypto/caam/caamalg.c

+ 6 - 4
drivers/crypto/caam/caamalg.c

@@ -4057,12 +4057,13 @@ static struct caam_alg_template driver_algs[] = {
 		.name = "cbc(des3_ede)",
 		.name = "cbc(des3_ede)",
 		.driver_name = "cbc-3des-caam",
 		.driver_name = "cbc-3des-caam",
 		.blocksize = DES3_EDE_BLOCK_SIZE,
 		.blocksize = DES3_EDE_BLOCK_SIZE,
-		.type = CRYPTO_ALG_TYPE_ABLKCIPHER,
+		.type = CRYPTO_ALG_TYPE_GIVCIPHER,
 		.template_ablkcipher = {
 		.template_ablkcipher = {
 			.setkey = ablkcipher_setkey,
 			.setkey = ablkcipher_setkey,
 			.encrypt = ablkcipher_encrypt,
 			.encrypt = ablkcipher_encrypt,
 			.decrypt = ablkcipher_decrypt,
 			.decrypt = ablkcipher_decrypt,
-			.geniv = "eseqiv",
+			.givencrypt = ablkcipher_givencrypt,
+			.geniv = "<built-in>",
 			.min_keysize = DES3_EDE_KEY_SIZE,
 			.min_keysize = DES3_EDE_KEY_SIZE,
 			.max_keysize = DES3_EDE_KEY_SIZE,
 			.max_keysize = DES3_EDE_KEY_SIZE,
 			.ivsize = DES3_EDE_BLOCK_SIZE,
 			.ivsize = DES3_EDE_BLOCK_SIZE,
@@ -4073,12 +4074,13 @@ static struct caam_alg_template driver_algs[] = {
 		.name = "cbc(des)",
 		.name = "cbc(des)",
 		.driver_name = "cbc-des-caam",
 		.driver_name = "cbc-des-caam",
 		.blocksize = DES_BLOCK_SIZE,
 		.blocksize = DES_BLOCK_SIZE,
-		.type = CRYPTO_ALG_TYPE_ABLKCIPHER,
+		.type = CRYPTO_ALG_TYPE_GIVCIPHER,
 		.template_ablkcipher = {
 		.template_ablkcipher = {
 			.setkey = ablkcipher_setkey,
 			.setkey = ablkcipher_setkey,
 			.encrypt = ablkcipher_encrypt,
 			.encrypt = ablkcipher_encrypt,
 			.decrypt = ablkcipher_decrypt,
 			.decrypt = ablkcipher_decrypt,
-			.geniv = "eseqiv",
+			.givencrypt = ablkcipher_givencrypt,
+			.geniv = "<built-in>",
 			.min_keysize = DES_KEY_SIZE,
 			.min_keysize = DES_KEY_SIZE,
 			.max_keysize = DES_KEY_SIZE,
 			.max_keysize = DES_KEY_SIZE,
 			.ivsize = DES_BLOCK_SIZE,
 			.ivsize = DES_BLOCK_SIZE,