diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2023-02-16 13:35:25 +0300 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2023-03-14 12:06:42 +0300 |
commit | 0c0edf6168ce1e02518ba44400b9269a13c3b9e6 (patch) | |
tree | c97169e7ed55d3be61e03c25f94e5dcf5efcfa89 /include/crypto | |
parent | 9807e49b6aab3451b00a99ced42acb4a535e8e22 (diff) | |
download | linux-0c0edf6168ce1e02518ba44400b9269a13c3b9e6.tar.xz |
crypto: api - Move MODULE_ALIAS_CRYPTO to algapi.h
This is part of the low-level API and should not be exposed to
top-level Crypto API users.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'include/crypto')
-rw-r--r-- | include/crypto/algapi.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/include/crypto/algapi.h b/include/crypto/algapi.h index dcc1fd4ef1b4..e28957993b56 100644 --- a/include/crypto/algapi.h +++ b/include/crypto/algapi.h @@ -34,6 +34,19 @@ #define CRYPTO_DMA_PADDING ((CRYPTO_DMA_ALIGN - 1) & ~(CRYPTO_MINALIGN - 1)) +/* + * Autoloaded crypto modules should only use a prefixed name to avoid allowing + * arbitrary modules to be loaded. Loading from userspace may still need the + * unprefixed names, so retains those aliases as well. + * This uses __MODULE_INFO directly instead of MODULE_ALIAS because pre-4.3 + * gcc (e.g. avr32 toolchain) uses __LINE__ for uniqueness, and this macro + * expands twice on the same line. Instead, use a separate base name for the + * alias. + */ +#define MODULE_ALIAS_CRYPTO(name) \ + __MODULE_INFO(alias, alias_userspace, name); \ + __MODULE_INFO(alias, alias_crypto, "crypto-" name) + struct crypto_aead; struct crypto_instance; struct module; |