提交 6c5a86f5 编写于 作者: S Steffen Klassert 提交者: Herbert Xu

crypto: Add userspace report for larval type algorithms

Signed-off-by: NSteffen Klassert <steffen.klassert@secunet.com>
Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
上级 b6aa63c0
...@@ -84,11 +84,23 @@ static int crypto_report_one(struct crypto_alg *alg, ...@@ -84,11 +84,23 @@ static int crypto_report_one(struct crypto_alg *alg,
NLA_PUT_U32(skb, CRYPTOCFGA_PRIORITY_VAL, alg->cra_priority); NLA_PUT_U32(skb, CRYPTOCFGA_PRIORITY_VAL, alg->cra_priority);
if (alg->cra_flags & CRYPTO_ALG_LARVAL) {
struct crypto_report_larval rl;
snprintf(rl.type, CRYPTO_MAX_ALG_NAME, "%s", "larval");
NLA_PUT(skb, CRYPTOCFGA_REPORT_LARVAL,
sizeof(struct crypto_report_larval), &rl);
goto out;
}
if (alg->cra_type && alg->cra_type->report) { if (alg->cra_type && alg->cra_type->report) {
if (alg->cra_type->report(skb, alg)) if (alg->cra_type->report(skb, alg))
goto nla_put_failure; goto nla_put_failure;
} }
out:
return 0; return 0;
nla_put_failure: nla_put_failure:
......
...@@ -36,6 +36,7 @@ enum { ...@@ -36,6 +36,7 @@ enum {
enum crypto_attr_type_t { enum crypto_attr_type_t {
CRYPTOCFGA_UNSPEC, CRYPTOCFGA_UNSPEC,
CRYPTOCFGA_PRIORITY_VAL, /* __u32 */ CRYPTOCFGA_PRIORITY_VAL, /* __u32 */
CRYPTOCFGA_REPORT_LARVAL, /* struct crypto_report_larval */
__CRYPTOCFGA_MAX __CRYPTOCFGA_MAX
#define CRYPTOCFGA_MAX (__CRYPTOCFGA_MAX - 1) #define CRYPTOCFGA_MAX (__CRYPTOCFGA_MAX - 1)
...@@ -50,3 +51,7 @@ struct crypto_user_alg { ...@@ -50,3 +51,7 @@ struct crypto_user_alg {
__u32 cru_refcnt; __u32 cru_refcnt;
__u32 cru_flags; __u32 cru_flags;
}; };
struct crypto_report_larval {
char type[CRYPTO_MAX_NAME];
};
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册