Thread (10 messages) 10 messages, 2 authors, 2019-01-17

[PATCH 4/5] crypto: ctr - use template array registering API to simplify the code

flat view
STALE2844d SUPERSEDED

From: Xiongfeng Wang <hidden>
Date: 2019-01-16 02:51:36
Also in: lkml
Subsystem: crypto api, the rest · Maintainers: Herbert Xu, "David S. Miller", Linus Torvalds

Status: Superseded by v3 (posted 2019-01-18). [go to v3]

Revision v1 (3 revisions archived).

Revisions (3)
  1. v1 current
  2. v2 [diff against previous]
  3. v3 [diff against previous]
Use crypto template array registering API to simplify the code.

Signed-off-by: Xiongfeng Wang <redacted>
---
 crypto/ctr.c | 46 +++++++++++++++++-----------------------------
 1 file changed, 17 insertions(+), 29 deletions(-)
diff --git a/crypto/ctr.c b/crypto/ctr.c
index 30f3946..ef51099 100644
--- a/crypto/ctr.c
+++ b/crypto/ctr.c
@@ -248,13 +248,6 @@ static void crypto_ctr_free(struct crypto_instance *inst)
 	kfree(inst);
 }
 
-static struct crypto_template crypto_ctr_tmpl = {
-	.name = "ctr",
-	.alloc = crypto_ctr_alloc,
-	.free = crypto_ctr_free,
-	.module = THIS_MODULE,
-};
-
 static int crypto_rfc3686_setkey(struct crypto_skcipher *parent,
 				 const u8 *key, unsigned int keylen)
 {
@@ -444,36 +437,31 @@ static int crypto_rfc3686_create(struct crypto_template *tmpl,
 	goto out;
 }
 
-static struct crypto_template crypto_rfc3686_tmpl = {
-	.name = "rfc3686",
-	.create = crypto_rfc3686_create,
-	.module = THIS_MODULE,
+static struct crypto_template crypto_ctr_tmpl[] = {
+	{
+		.name = "ctr",
+		.alloc = crypto_ctr_alloc,
+		.free = crypto_ctr_free,
+		.module = THIS_MODULE,
+	},
+	{
+		.name = "rfc3686",
+		.create = crypto_rfc3686_create,
+		.module = THIS_MODULE,
+	},
 };
 
+
 static int __init crypto_ctr_module_init(void)
 {
-	int err;
-
-	err = crypto_register_template(&crypto_ctr_tmpl);
-	if (err)
-		goto out;
-
-	err = crypto_register_template(&crypto_rfc3686_tmpl);
-	if (err)
-		goto out_drop_ctr;
-
-out:
-	return err;
-
-out_drop_ctr:
-	crypto_unregister_template(&crypto_ctr_tmpl);
-	goto out;
+	return crypto_register_templates(crypto_ctr_tmpl,
+			ARRAY_SIZE(crypto_ctr_tmpl));
 }
 
 static void __exit crypto_ctr_module_exit(void)
 {
-	crypto_unregister_template(&crypto_rfc3686_tmpl);
-	crypto_unregister_template(&crypto_ctr_tmpl);
+	crypto_unregister_templates(crypto_ctr_tmpl,
+			ARRAY_SIZE(crypto_ctr_tmpl));
 }
 
 module_init(crypto_ctr_module_init);
-- 
1.7.12.4
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help