summaryrefslogtreecommitdiff
path: root/crypto/sig.c
diff options
context:
space:
mode:
authorHerbert Xu <herbert@gondor.apana.org.au>2024-03-13 09:49:37 +0800
committerHerbert Xu <herbert@gondor.apana.org.au>2024-03-13 09:49:37 +0800
commit02f50035275e6196772a2301fbce7fbda10812e0 (patch)
treed1440eb94030e01498231240595755811bcf2902 /crypto/sig.c
parentaa26e08ed1c636c7c4d682e3d7b9a7ebe911bfcc (diff)
downloadlinux-crypto-02f50035275e6196772a2301fbce7fbda10812e0.tar.gz
linux-crypto-02f50035275e6196772a2301fbce7fbda10812e0.zip
Revert "crypto: remove CONFIG_CRYPTO_STATS"
This reverts commit 687f35bd1fc7a325fe6f817af864426e66c288b5. While removing CONFIG_CRYPTO_STATS is a worthy goal, this also removed unrelated infrastructure such as crypto_comp_alg_common. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'crypto/sig.c')
-rw-r--r--crypto/sig.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/crypto/sig.c b/crypto/sig.c
index 7645bedf..224c4701 100644
--- a/crypto/sig.c
+++ b/crypto/sig.c
@@ -45,6 +45,16 @@ static int __maybe_unused crypto_sig_report(struct sk_buff *skb,
return nla_put(skb, CRYPTOCFGA_REPORT_AKCIPHER, sizeof(rsig), &rsig);
}
+static int __maybe_unused crypto_sig_report_stat(struct sk_buff *skb,
+ struct crypto_alg *alg)
+{
+ struct crypto_stat_akcipher rsig = {};
+
+ strscpy(rsig.type, "sig", sizeof(rsig.type));
+
+ return nla_put(skb, CRYPTOCFGA_STAT_AKCIPHER, sizeof(rsig), &rsig);
+}
+
static const struct crypto_type crypto_sig_type = {
.extsize = crypto_alg_extsize,
.init_tfm = crypto_sig_init_tfm,
@@ -54,6 +64,9 @@ static const struct crypto_type crypto_sig_type = {
#if IS_ENABLED(CONFIG_CRYPTO_USER)
.report = crypto_sig_report,
#endif
+#ifdef CONFIG_CRYPTO_STATS
+ .report_stat = crypto_sig_report_stat,
+#endif
.maskclear = ~CRYPTO_ALG_TYPE_MASK,
.maskset = CRYPTO_ALG_TYPE_SIG_MASK,
.type = CRYPTO_ALG_TYPE_SIG,