diff options
Diffstat (limited to 'crypto/fips.c')
| -rw-r--r-- | crypto/fips.c | 11 | 
1 files changed, 11 insertions, 0 deletions
diff --git a/crypto/fips.c b/crypto/fips.c index c0b3a3c3452d..7b1d8caee669 100644 --- a/crypto/fips.c +++ b/crypto/fips.c @@ -11,10 +11,14 @@  #include <linux/module.h>  #include <linux/kernel.h>  #include <linux/sysctl.h> +#include <linux/notifier.h>  int fips_enabled;  EXPORT_SYMBOL_GPL(fips_enabled); +ATOMIC_NOTIFIER_HEAD(fips_fail_notif_chain); +EXPORT_SYMBOL_GPL(fips_fail_notif_chain); +  /* Process kernel command-line parameter at boot time. fips=0 or fips=1 */  static int fips_enable(char *str)  { @@ -58,6 +62,13 @@ static void crypto_proc_fips_exit(void)  	unregister_sysctl_table(crypto_sysctls);  } +void fips_fail_notify(void) +{ +	if (fips_enabled) +		atomic_notifier_call_chain(&fips_fail_notif_chain, 0, NULL); +} +EXPORT_SYMBOL_GPL(fips_fail_notify); +  static int __init fips_init(void)  {  	crypto_proc_fips_init();  |