From: Steffen Klassert <steffen.klassert@secunet.com>
To: Herbert Xu <herbert@gondor.apana.org.au>
Cc: linux-crypto@vger.kernel.org
Subject: [PATCH v2 08/15] crypto: Add userspace report for ablkcipher type algorithms
Date: Wed, 17 Aug 2011 14:13:53 +0200 [thread overview]
Message-ID: <20110817121353.GF16877@secunet.com> (raw)
In-Reply-To: <20110817120859.GX16877@secunet.com>
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
---
crypto/ablkcipher.c | 27 +++++++++++++++++++++++++++
include/linux/cryptouser.h | 11 +++++++++++
2 files changed, 38 insertions(+), 0 deletions(-)
diff --git a/crypto/ablkcipher.c b/crypto/ablkcipher.c
index fdc67d3..60f5c01 100644
--- a/crypto/ablkcipher.c
+++ b/crypto/ablkcipher.c
@@ -23,6 +23,8 @@
#include <linux/sched.h>
#include <linux/slab.h>
#include <linux/seq_file.h>
+#include <linux/cryptouser.h>
+#include <net/netlink.h>
#include <crypto/scatterwalk.h>
@@ -381,6 +383,30 @@ static int crypto_init_ablkcipher_ops(struct crypto_tfm *tfm, u32 type,
return 0;
}
+static int crypto_ablkcipher_report(struct sk_buff *skb, struct crypto_alg *alg)
+{
+ struct crypto_report_ablkcipher rablkcipher;
+
+ snprintf(rablkcipher.type, CRYPTO_MAX_ALG_NAME, "%s", "ablkcipher");
+ snprintf(rablkcipher.geniv, CRYPTO_MAX_ALG_NAME, "%s",
+ alg->cra_ablkcipher.geniv ?: "<default>");
+ snprintf(rablkcipher.async, CRYPTO_MAX_ALG_NAME, "%s",
+ alg->cra_flags & CRYPTO_ALG_ASYNC ? "yes" : "no");
+
+ rablkcipher.blocksize = alg->cra_blocksize;
+ rablkcipher.min_keysize = alg->cra_ablkcipher.min_keysize;
+ rablkcipher.max_keysize = alg->cra_ablkcipher.max_keysize;
+ rablkcipher.ivsize = alg->cra_ablkcipher.ivsize;
+
+ NLA_PUT(skb, CRYPTOCFGA_REPORT_ABLKCIPHER,
+ sizeof(struct crypto_report_ablkcipher), &rablkcipher);
+
+ return 0;
+
+nla_put_failure:
+ return -EMSGSIZE;
+}
+
static void crypto_ablkcipher_show(struct seq_file *m, struct crypto_alg *alg)
__attribute__ ((unused));
static void crypto_ablkcipher_show(struct seq_file *m, struct crypto_alg *alg)
@@ -403,6 +429,7 @@ const struct crypto_type crypto_ablkcipher_type = {
#ifdef CONFIG_PROC_FS
.show = crypto_ablkcipher_show,
#endif
+ .report = crypto_ablkcipher_report,
};
EXPORT_SYMBOL_GPL(crypto_ablkcipher_type);
diff --git a/include/linux/cryptouser.h b/include/linux/cryptouser.h
index c59109f..c0023cf 100644
--- a/include/linux/cryptouser.h
+++ b/include/linux/cryptouser.h
@@ -37,6 +37,7 @@ enum crypto_attr_type_t {
CRYPTOCFGA_REPORT_SHASH, /* struct crypto_report_shash */
CRYPTOCFGA_REPORT_AHASH, /* struct crypto_report_ahash */
CRYPTOCFGA_REPORT_BLKCIPHER, /* struct crypto_report_blkcipher */
+ CRYPTOCFGA_REPORT_ABLKCIPHER, /* struct crypto_report_ablkcipher */
__CRYPTOCFGA_MAX
#define CRYPTOCFGA_MAX (__CRYPTOCFGA_MAX - 1)
@@ -86,3 +87,13 @@ struct crypto_report_blkcipher {
unsigned int max_keysize;
unsigned int ivsize;
};
+
+struct crypto_report_ablkcipher {
+ char type[CRYPTO_MAX_NAME];
+ char async[CRYPTO_MAX_NAME];
+ char geniv[CRYPTO_MAX_NAME];
+ unsigned int blocksize;
+ unsigned int min_keysize;
+ unsigned int max_keysize;
+ unsigned int ivsize;
+};
--
1.7.0.4
next prev parent reply other threads:[~2011-08-17 12:13 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-17 12:08 [PATCH v2 00/15] crypto user configuration api Steffen Klassert
2011-08-17 12:09 ` [PATCH v2 01/15] crypto: Add a flag to identify crypto instances Steffen Klassert
2011-08-17 12:10 ` [PATCH v2 02/15] crypto: Add userspace configuration API Steffen Klassert
2011-08-22 6:59 ` Herbert Xu
2011-08-29 8:18 ` Steffen Klassert
2011-09-02 3:50 ` Herbert Xu
2011-08-17 12:10 ` [PATCH v2 03/15] crypto: Add a report function pointer to crypto_type Steffen Klassert
2011-08-17 12:11 ` [PATCH v2 04/15] crypto: Add userspace report for larval type algorithms Steffen Klassert
2011-08-17 12:12 ` [PATCH v2 05/15] crypto: Add userspace report for shash " Steffen Klassert
2011-08-17 12:12 ` [PATCH v2 06/15] crypto: Add userspace report for ahash " Steffen Klassert
2011-08-17 12:13 ` [PATCH v2 07/15] crypto: Add userspace report for blkcipher " Steffen Klassert
2011-08-17 12:13 ` Steffen Klassert [this message]
2011-08-17 12:14 ` [PATCH v2 09/15] crypto: Add userspace report for givcipher " Steffen Klassert
2011-08-17 12:15 ` [PATCH v2 10/15] crypto: Add userspace report for aead " Steffen Klassert
2011-08-17 12:15 ` [PATCH v2 11/15] crypto: Add userspace report for nivaead " Steffen Klassert
2011-08-17 12:16 ` [PATCH v2 12/15] crypto: Add userspace report for pcompress " Steffen Klassert
2011-08-17 12:16 ` [PATCH v2 13/15] crypto: Add userspace report for rng " Steffen Klassert
2011-08-17 12:17 ` [PATCH v2 14/15] crypto: Add userspace report for cipher " Steffen Klassert
2011-08-17 12:18 ` [PATCH v2 15/15] crypto: Add userspace report for compress " Steffen Klassert
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110817121353.GF16877@secunet.com \
--to=steffen.klassert@secunet.com \
--cc=herbert@gondor.apana.org.au \
--cc=linux-crypto@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.