Use CRYPTO_API() etc. from include/crypto/api.h in preparation for compilation as part of support for FIPS 140 standalone modules. Generated using: ./fipsify.py --config CONFIG_X509_CERTIFICATE_PARSER --source crypto/asymmetric_keys/x509_loader.c --header include/keys/asymmetric-type.h Signed-off-by: Vegard Nossum <vegard.nossum@xxxxxxxxxx> --- crypto/asymmetric_keys/x509_loader.c | 4 ++-- crypto/fips140-api.c | 11 +++++++++++ include/keys/asymmetric-type.h | 5 +++-- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/crypto/asymmetric_keys/x509_loader.c b/crypto/asymmetric_keys/x509_loader.c index a41741326998..a480763b1649 100644 --- a/crypto/asymmetric_keys/x509_loader.c +++ b/crypto/asymmetric_keys/x509_loader.c @@ -4,7 +4,7 @@ #include <linux/key.h> #include <keys/asymmetric-type.h> -int x509_load_certificate_list(const u8 cert_list[], +int CRYPTO_API(x509_load_certificate_list)(const u8 cert_list[], const unsigned long list_size, const struct key *keyring) { @@ -55,4 +55,4 @@ int x509_load_certificate_list(const u8 cert_list[], pr_err("Problem parsing in-kernel X.509 certificate list\n"); return 0; } -EXPORT_SYMBOL_GPL(x509_load_certificate_list); +DEFINE_CRYPTO_API(x509_load_certificate_list); diff --git a/crypto/fips140-api.c b/crypto/fips140-api.c index db5b142e21df..91812ed74f8a 100644 --- a/crypto/fips140-api.c +++ b/crypto/fips140-api.c @@ -713,3 +713,14 @@ DEFINE_CRYPTO_API_STUB(x509_decode_time); #endif +/* + * crypto/asymmetric_keys/x509_loader.c + */ +#if !IS_BUILTIN(CONFIG_X509_CERTIFICATE_PARSER) + +#include <keys/asymmetric-type.h> + +DEFINE_CRYPTO_API_STUB(x509_load_certificate_list); + +#endif + diff --git a/include/keys/asymmetric-type.h b/include/keys/asymmetric-type.h index fb7f82527978..ee1bf9b28bfd 100644 --- a/include/keys/asymmetric-type.h +++ b/include/keys/asymmetric-type.h @@ -84,8 +84,9 @@ DECLARE_CRYPTO_API(find_asymmetric_key, struct key *, (struct key *keyring, const struct asymmetric_key_id *id_0, const struct asymmetric_key_id *id_1, const struct asymmetric_key_id *id_2, bool partial), (keyring, id_0, id_1, id_2, partial)); -int x509_load_certificate_list(const u8 cert_list[], const unsigned long list_size, - const struct key *keyring); +DECLARE_CRYPTO_API(x509_load_certificate_list, int, + (const u8 cert_list[], const unsigned long list_size, const struct key *keyring), + (cert_list, list_size, keyring)); /* * The payload is at the discretion of the subtype. -- 2.39.3