crypto: api - Move module sig ifdef into accessor function
authorHerbert Xu <herbert@gondor.apana.org.au>
Wed, 22 Apr 2015 03:28:46 +0000 (11:28 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 23 Apr 2015 06:18:07 +0000 (14:18 +0800)
Currently we're hiding mod->sig_ok under an ifdef in open code.
This patch adds a module_sig_ok accessor function and removes that
ifdef.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Acked-by: Rusty Russell <rusty@rustcorp.com.au>
crypto/algapi.c
include/linux/module.h

index a60f62625b5f4e3117cb128c198ee6fa5ec741d1..f835f439bb23f4601574fa3fa742ca15300efb0e 100644 (file)
@@ -43,12 +43,9 @@ static inline int crypto_set_driver_name(struct crypto_alg *alg)
 
 static inline void crypto_check_module_sig(struct module *mod)
 {
-#ifdef CONFIG_CRYPTO_FIPS
-       if (fips_enabled && mod && !mod->sig_ok)
+       if (fips_enabled && mod && !module_sig_ok(mod))
                panic("Module %s signature verification failed in FIPS mode\n",
                      mod->name);
-#endif
-       return;
 }
 
 static int crypto_check_alg(struct crypto_alg *alg)
index c883b86ea9649ae62ca485dd3843e51e43edc346..1e5436042eb0322f77209586944954f650aa8b17 100644 (file)
@@ -655,4 +655,16 @@ static inline void module_bug_finalize(const Elf_Ehdr *hdr,
 static inline void module_bug_cleanup(struct module *mod) {}
 #endif /* CONFIG_GENERIC_BUG */
 
+#ifdef CONFIG_MODULE_SIG
+static inline bool module_sig_ok(struct module *module)
+{
+       return module->sig_ok;
+}
+#else  /* !CONFIG_MODULE_SIG */
+static inline bool module_sig_ok(struct module *module)
+{
+       return true;
+}
+#endif /* CONFIG_MODULE_SIG */
+
 #endif /* _LINUX_MODULE_H */