diff options
Diffstat (limited to 'include/linux/crypto.h')
-rw-r--r-- | include/linux/crypto.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/include/linux/crypto.h b/include/linux/crypto.h index 208a63290b23..9c8776d0ada8 100644 --- a/include/linux/crypto.h +++ b/include/linux/crypto.h | |||
@@ -26,6 +26,19 @@ | |||
26 | #include <linux/uaccess.h> | 26 | #include <linux/uaccess.h> |
27 | 27 | ||
28 | /* | 28 | /* |
29 | * Autoloaded crypto modules should only use a prefixed name to avoid allowing | ||
30 | * arbitrary modules to be loaded. Loading from userspace may still need the | ||
31 | * unprefixed names, so retains those aliases as well. | ||
32 | * This uses __MODULE_INFO directly instead of MODULE_ALIAS because pre-4.3 | ||
33 | * gcc (e.g. avr32 toolchain) uses __LINE__ for uniqueness, and this macro | ||
34 | * expands twice on the same line. Instead, use a separate base name for the | ||
35 | * alias. | ||
36 | */ | ||
37 | #define MODULE_ALIAS_CRYPTO(name) \ | ||
38 | __MODULE_INFO(alias, alias_userspace, name); \ | ||
39 | __MODULE_INFO(alias, alias_crypto, "crypto-" name) | ||
40 | |||
41 | /* | ||
29 | * Algorithm masks and types. | 42 | * Algorithm masks and types. |
30 | */ | 43 | */ |
31 | #define CRYPTO_ALG_TYPE_MASK 0x0000000f | 44 | #define CRYPTO_ALG_TYPE_MASK 0x0000000f |