mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-26 08:51:13 +00:00
40 lines
1.3 KiB
Diff
40 lines
1.3 KiB
Diff
|
From 3f5598286445f695bb63a22239dd3603c69a6eaf Mon Sep 17 00:00:00 2001
|
||
|
From: Eneas U de Queiroz <cotequeiroz@gmail.com>
|
||
|
Date: Mon, 28 Oct 2019 09:03:07 -0300
|
||
|
Subject: [PATCH] crypto: qce - fix ctr-aes-qce block, chunk sizes
|
||
|
|
||
|
Set blocksize of ctr-aes-qce to 1, so it can operate as a stream cipher,
|
||
|
adding the definition for chucksize instead, where the underlying block
|
||
|
size belongs.
|
||
|
|
||
|
Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
|
||
|
|
||
|
--- a/drivers/crypto/qce/skcipher.c
|
||
|
+++ b/drivers/crypto/qce/skcipher.c
|
||
|
@@ -261,6 +261,7 @@ struct qce_skcipher_def {
|
||
|
const char *name;
|
||
|
const char *drv_name;
|
||
|
unsigned int blocksize;
|
||
|
+ unsigned int chunksize;
|
||
|
unsigned int ivsize;
|
||
|
unsigned int min_keysize;
|
||
|
unsigned int max_keysize;
|
||
|
@@ -289,7 +290,8 @@ static const struct qce_skcipher_def skc
|
||
|
.flags = QCE_ALG_AES | QCE_MODE_CTR,
|
||
|
.name = "ctr(aes)",
|
||
|
.drv_name = "ctr-aes-qce",
|
||
|
- .blocksize = AES_BLOCK_SIZE,
|
||
|
+ .blocksize = 1,
|
||
|
+ .chunksize = AES_BLOCK_SIZE,
|
||
|
.ivsize = AES_BLOCK_SIZE,
|
||
|
.min_keysize = AES_MIN_KEY_SIZE,
|
||
|
.max_keysize = AES_MAX_KEY_SIZE,
|
||
|
@@ -359,6 +361,7 @@ static int qce_skcipher_register_one(con
|
||
|
def->drv_name);
|
||
|
|
||
|
alg->base.cra_blocksize = def->blocksize;
|
||
|
+ alg->chunksize = def->chunksize;
|
||
|
alg->ivsize = def->ivsize;
|
||
|
alg->min_keysize = def->min_keysize;
|
||
|
alg->max_keysize = def->max_keysize;
|