mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-06 05:06:29 +00:00
crypto: Add userspace report for larval type algorithms
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
b6aa63c09b
commit
6c5a86f529
@ -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 {
|
|||||||
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 {
|
|||||||
__u32 cru_refcnt;
|
__u32 cru_refcnt;
|
||||||
__u32 cru_flags;
|
__u32 cru_flags;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct crypto_report_larval {
|
||||||
|
char type[CRYPTO_MAX_NAME];
|
||||||
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user