浏览代码

crypto: aes - Precompute tables

The tables used by the various AES algorithms are currently
computed at run-time.  This has created an init ordering problem
because some AES algorithms may be registered before the tables
have been initialised.

This patch gets around this whole thing by precomputing the tables.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Herbert Xu 16 年之前
父节点
当前提交
0ee4a96902
共有 2 个文件被更改,包括 1059 次插入93 次删除
  1. 1055 89
      crypto/aes_generic.c
  2. 4 4
      include/crypto/aes.h

文件差异内容过多而无法显示
+ 1055 - 89
crypto/aes_generic.c


+ 4 - 4
include/crypto/aes.h

@@ -23,10 +23,10 @@ struct crypto_aes_ctx {
 	u32 key_dec[AES_MAX_KEYLENGTH_U32];
 };
 
-extern u32 crypto_ft_tab[4][256];
-extern u32 crypto_fl_tab[4][256];
-extern u32 crypto_it_tab[4][256];
-extern u32 crypto_il_tab[4][256];
+extern const u32 crypto_ft_tab[4][256];
+extern const u32 crypto_fl_tab[4][256];
+extern const u32 crypto_it_tab[4][256];
+extern const u32 crypto_il_tab[4][256];
 
 int crypto_aes_set_key(struct crypto_tfm *tfm, const u8 *in_key,
 		unsigned int key_len);

部分文件因为文件数量过多而无法显示