crypto: proc - Print fips status
authorHerbert Xu <herbert@gondor.apana.org.au>
Thu, 9 Feb 2023 01:16:45 +0000 (09:16 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Tue, 14 Feb 2023 05:39:33 +0000 (13:39 +0800)
As FIPS may disable algorithms it is useful to show their status
in /proc/crypto.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Acked-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/proc.c

index 12fccb9..56c7c78 100644 (file)
@@ -11,6 +11,7 @@
 #include <linux/atomic.h>
 #include <linux/init.h>
 #include <linux/crypto.h>
+#include <linux/fips.h>
 #include <linux/module.h>      /* for module_name() */
 #include <linux/rwsem.h>
 #include <linux/proc_fs.h>
@@ -48,6 +49,11 @@ static int c_show(struct seq_file *m, void *p)
        seq_printf(m, "internal     : %s\n",
                   (alg->cra_flags & CRYPTO_ALG_INTERNAL) ?
                   "yes" : "no");
+       if (fips_enabled) {
+               seq_printf(m, "fips         : %s\n",
+                          (alg->cra_flags & CRYPTO_ALG_FIPS_INTERNAL) ?
+                          "no" : "yes");
+       }
 
        if (alg->cra_flags & CRYPTO_ALG_LARVAL) {
                seq_printf(m, "type         : larval\n");