diff options
author | Steffen Klassert <steffen.klassert@secunet.com> | 2011-09-27 01:46:32 -0400 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2011-10-21 08:24:06 -0400 |
commit | a55465dca7befd31f4ffa54508d4e2d1e701b8dc (patch) | |
tree | bbc646c2b5bc6f418e1f45e40da78c533b9729b8 /crypto | |
parent | b735d0a91556fd9fd5bbeeebd7d327c2d92c36c8 (diff) |
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')
-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 @@ | |||
24 | #include <linux/module.h> | 24 | #include <linux/module.h> |
25 | #include <linux/seq_file.h> | 25 | #include <linux/seq_file.h> |
26 | #include <linux/string.h> | 26 | #include <linux/string.h> |
27 | #include <linux/cryptouser.h> | ||
28 | #include <net/netlink.h> | ||
27 | 29 | ||
28 | #include <crypto/compress.h> | 30 | #include <crypto/compress.h> |
29 | #include <crypto/internal/compress.h> | 31 | #include <crypto/internal/compress.h> |
@@ -46,6 +48,21 @@ static int crypto_pcomp_init_tfm(struct crypto_tfm *tfm) | |||
46 | return 0; | 48 | return 0; |
47 | } | 49 | } |
48 | 50 | ||
51 | static int crypto_pcomp_report(struct sk_buff *skb, struct crypto_alg *alg) | ||
52 | { | ||
53 | struct crypto_report_comp rpcomp; | ||
54 | |||
55 | snprintf(rpcomp.type, CRYPTO_MAX_ALG_NAME, "%s", "pcomp"); | ||
56 | |||
57 | NLA_PUT(skb, CRYPTOCFGA_REPORT_COMPRESS, | ||
58 | sizeof(struct crypto_report_comp), &rpcomp); | ||
59 | |||
60 | return 0; | ||
61 | |||
62 | nla_put_failure: | ||
63 | return -EMSGSIZE; | ||
64 | } | ||
65 | |||
49 | static void crypto_pcomp_show(struct seq_file *m, struct crypto_alg *alg) | 66 | static void crypto_pcomp_show(struct seq_file *m, struct crypto_alg *alg) |
50 | __attribute__ ((unused)); | 67 | __attribute__ ((unused)); |
51 | static void crypto_pcomp_show(struct seq_file *m, struct crypto_alg *alg) | 68 | 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 = { | |||
60 | #ifdef CONFIG_PROC_FS | 77 | #ifdef CONFIG_PROC_FS |
61 | .show = crypto_pcomp_show, | 78 | .show = crypto_pcomp_show, |
62 | #endif | 79 | #endif |
80 | .report = crypto_pcomp_report, | ||
63 | .maskclear = ~CRYPTO_ALG_TYPE_MASK, | 81 | .maskclear = ~CRYPTO_ALG_TYPE_MASK, |
64 | .maskset = CRYPTO_ALG_TYPE_MASK, | 82 | .maskset = CRYPTO_ALG_TYPE_MASK, |
65 | .type = CRYPTO_ALG_TYPE_PCOMPRESS, | 83 | .type = CRYPTO_ALG_TYPE_PCOMPRESS, |