save space by making the crypto testsuite optional and disabled by default
authorFelix Fietkau <nbd@openwrt.org>
Wed, 3 Feb 2010 03:38:26 +0000 (03:38 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Wed, 3 Feb 2010 03:38:26 +0000 (03:38 +0000)
SVN-Revision: 19502

target/linux/generic-2.6/config-2.6.32
target/linux/generic-2.6/patches-2.6.32/260-crypto_optional_tests.patch [new file with mode: 0644]

index ac2fe661882e6203f2b1fcf415da9fcb4a2c6c76..f3d500f99db7a5058dcc169a581f783ad1a23952 100644 (file)
@@ -391,6 +391,7 @@ CONFIG_CRYPTO_ALGAPI=y
 # CONFIG_CRYPTO_LZO is not set
 # CONFIG_CRYPTO_MANAGER2 is not set
 # CONFIG_CRYPTO_MANAGER is not set
+CONFIG_CRYPTO_MANAGER_NO_TESTS=y
 # CONFIG_CRYPTO_MD4 is not set
 # CONFIG_CRYPTO_MD5 is not set
 # CONFIG_CRYPTO_MICHAEL_MIC is not set
diff --git a/target/linux/generic-2.6/patches-2.6.32/260-crypto_optional_tests.patch b/target/linux/generic-2.6/patches-2.6.32/260-crypto_optional_tests.patch
new file mode 100644 (file)
index 0000000..0808c77
--- /dev/null
@@ -0,0 +1,63 @@
+--- a/crypto/Kconfig
++++ b/crypto/Kconfig
+@@ -96,6 +96,10 @@ config CRYPTO_MANAGER2
+       select CRYPTO_BLKCIPHER2
+       select CRYPTO_PCOMP
++config CRYPTO_MANAGER_NO_TESTS
++      bool "Disable internal testsuite to save space"
++      depends on CRYPTO_MANAGER
++
+ config CRYPTO_GF128MUL
+       tristate "GF(2^128) multiplication functions (EXPERIMENTAL)"
+       depends on EXPERIMENTAL
+--- a/crypto/testmgr.c
++++ b/crypto/testmgr.c
+@@ -47,6 +47,8 @@
+ #define ENCRYPT 1
+ #define DECRYPT 0
++#ifndef CONFIG_CRYPTO_MANAGER_NO_TESTS
++
+ struct tcrypt_result {
+       struct completion completion;
+       int err;
+@@ -2350,8 +2352,11 @@ static int alg_find_test(const char *alg
+       return -1;
+ }
++#endif /* CONFIG_CRYPTO_MANAGER_NO_TESTS */
++
+ int alg_test(const char *driver, const char *alg, u32 type, u32 mask)
+ {
++#ifndef CONFIG_CRYPTO_MANAGER_NO_TESTS
+       int i;
+       int j;
+       int rc;
+@@ -2406,5 +2411,8 @@ notest:
+       return 0;
+ non_fips_alg:
+       return -EINVAL;
++#else /* CONFIG_CRYPTO_MANAGER_NO_TESTS */
++      return 0;
++#endif /* CONFIG_CRYPTO_MANAGER_NO_TESTS */
+ }
+ EXPORT_SYMBOL_GPL(alg_test);
+--- a/crypto/testmgr.h
++++ b/crypto/testmgr.h
+@@ -20,6 +20,8 @@
+ #include <crypto/compress.h>
++#ifndef CONFIG_CRYPTO_MANAGER_NO_TESTS
++
+ #define MAX_DIGEST_SIZE               64
+ #define MAX_TAP                       8
+@@ -9537,4 +9539,6 @@ static struct hash_testvec crc32c_tv_tem
+       },
+ };
++#endif /* CONFIG_CRYPTO_MANAGER_NO_TESTS */
++
+ #endif        /* _CRYPTO_TESTMGR_H */