diff options
author | Steffen Klassert <steffen.klassert@secunet.com> | 2011-09-27 07:46:32 +0200 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2011-10-21 14:24:06 +0200 |
commit | a55465dca7befd31f4ffa54508d4e2d1e701b8dc (patch) | |
tree | bbc646c2b5bc6f418e1f45e40da78c533b9729b8 /crypto/pcompress.c | |
parent | b735d0a91556fd9fd5bbeeebd7d327c2d92c36c8 (diff) | |
download | lwn-a55465dca7befd31f4ffa54508d4e2d1e701b8dc.tar.gz lwn-a55465dca7befd31f4ffa54508d4e2d1e701b8dc.zip |
crypto: Add userspace report for pcompress type algorithms
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'crypto/pcompress.c')
-rw-r--r-- | crypto/pcompress.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/crypto/pcompress.c b/crypto/pcompress.c index f7c4a7d7412e..fefda78a6a2a 100644 --- a/crypto/pcompress.c +++ b/crypto/pcompress.c @@ -24,6 +24,8 @@ #include <linux/module.h> #include <linux/seq_file.h> #include <linux/string.h> +#include <linux/cryptouser.h> +#include <net/netlink.h> #include <crypto/compress.h> #include <crypto/internal/compress.h> @@ -46,6 +48,21 @@ static int crypto_pcomp_init_tfm(struct crypto_tfm *tfm) return 0; } +static int crypto_pcomp_report(struct sk_buff *skb, struct crypto_alg *alg) +{ + struct crypto_report_comp rpcomp; + + snprintf(rpcomp.type, CRYPTO_MAX_ALG_NAME, "%s", "pcomp"); + + NLA_PUT(skb, CRYPTOCFGA_REPORT_COMPRESS, + sizeof(struct crypto_report_comp), &rpcomp); + + return 0; + +nla_put_failure: + return -EMSGSIZE; +} + static void crypto_pcomp_show(struct seq_file *m, struct crypto_alg *alg) __attribute__ ((unused)); static void crypto_pcomp_show(struct seq_file *m, struct crypto_alg *alg) @@ -60,6 +77,7 @@ static const struct crypto_type crypto_pcomp_type = { #ifdef CONFIG_PROC_FS .show = crypto_pcomp_show, #endif + .report = crypto_pcomp_report, .maskclear = ~CRYPTO_ALG_TYPE_MASK, .maskset = CRYPTO_ALG_TYPE_MASK, .type = CRYPTO_ALG_TYPE_PCOMPRESS, |