diff options
author | Jan-Simon Möller <dl9pf@gmx.de> | 2012-07-02 07:48:30 -0400 |
---|---|---|
committer | Behan Webster <behanw@converseincode.com> | 2014-10-14 04:51:24 -0400 |
commit | 4c5c30249452aaebf258751ea4222eba3dd3da4c (patch) | |
tree | 5b6c4924932fa8e31751d84b87bb40daf0a0067e /crypto/testmgr.c | |
parent | 357aabed626fe3fc753a99ef1d652f4e2d82ba26 (diff) |
crypto: LLVMLinux: Remove VLAIS usage from crypto/testmgr.c
Replaced the use of a Variable Length Array In Struct (VLAIS) with a C99
compliant equivalent. This patch allocates the appropriate amount of memory
using a char array using the SHASH_DESC_ON_STACK macro.
The new code can be compiled with both gcc and clang.
Signed-off-by: Jan-Simon Möller <dl9pf@gmx.de>
Signed-off-by: Behan Webster <behanw@converseincode.com>
Reviewed-by: Mark Charlebois <charlebm@gmail.com>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
Cc: pageexec@freemail.hu
Diffstat (limited to 'crypto/testmgr.c')
-rw-r--r-- | crypto/testmgr.c | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/crypto/testmgr.c b/crypto/testmgr.c index 9459dfd7357f..29a0cbdd0d19 100644 --- a/crypto/testmgr.c +++ b/crypto/testmgr.c | |||
@@ -1678,16 +1678,14 @@ static int alg_test_crc32c(const struct alg_test_desc *desc, | |||
1678 | } | 1678 | } |
1679 | 1679 | ||
1680 | do { | 1680 | do { |
1681 | struct { | 1681 | SHASH_DESC_ON_STACK(shash, tfm); |
1682 | struct shash_desc shash; | 1682 | u32 *ctx = (u32 *)shash_desc_ctx(shash); |
1683 | char ctx[crypto_shash_descsize(tfm)]; | ||
1684 | } sdesc; | ||
1685 | 1683 | ||
1686 | sdesc.shash.tfm = tfm; | 1684 | shash->tfm = tfm; |
1687 | sdesc.shash.flags = 0; | 1685 | shash->flags = 0; |
1688 | 1686 | ||
1689 | *(u32 *)sdesc.ctx = le32_to_cpu(420553207); | 1687 | *ctx = le32_to_cpu(420553207); |
1690 | err = crypto_shash_final(&sdesc.shash, (u8 *)&val); | 1688 | err = crypto_shash_final(shash, (u8 *)&val); |
1691 | if (err) { | 1689 | if (err) { |
1692 | printk(KERN_ERR "alg: crc32c: Operation failed for " | 1690 | printk(KERN_ERR "alg: crc32c: Operation failed for " |
1693 | "%s: %d\n", driver, err); | 1691 | "%s: %d\n", driver, err); |