diff options
author | Clément Bœsch <clement@stupeflix.com> | 2016-06-24 11:14:23 +0200 |
---|---|---|
committer | Clément Bœsch <clement@stupeflix.com> | 2016-06-24 11:14:23 +0200 |
commit | b6310ab6b5bf9210b0e416d83d65137b0a3ce709 (patch) | |
tree | b2ac4cf79012c175ea04ff79f552e8546453fea1 /libavutil/tests | |
parent | 1ca383c8d4e8f48d12b7ab0ba8355534f33f5087 (diff) | |
parent | 8131bd4c22ad59b040173f67a5b2edb75863e801 (diff) | |
download | ffmpeg-b6310ab6b5bf9210b0e416d83d65137b0a3ce709.tar.gz |
Merge commit '8131bd4c22ad59b040173f67a5b2edb75863e801'
* commit '8131bd4c22ad59b040173f67a5b2edb75863e801':
blowfish-test: Use struct allocation functions from the API
Merged-by: Clément Bœsch <clement@stupeflix.com>
Diffstat (limited to 'libavutil/tests')
-rw-r--r-- | libavutil/tests/blowfish.c | 30 |
1 files changed, 17 insertions, 13 deletions
diff --git a/libavutil/tests/blowfish.c b/libavutil/tests/blowfish.c index 0f76a85b92..f4c9ced9b4 100644 --- a/libavutil/tests/blowfish.c +++ b/libavutil/tests/blowfish.c @@ -21,6 +21,7 @@ #include <stdlib.h> #include <string.h> +#include "libavutil/mem.h" #include "libavutil/blowfish.h" #define NUM_VARIABLE_KEY_TESTS 34 @@ -144,46 +145,49 @@ static void test_blowfish(AVBlowfish *ctx, uint8_t *dst, const uint8_t *src, int main(void) { - AVBlowfish ctx; uint32_t tmptext_l[NUM_VARIABLE_KEY_TESTS]; uint32_t tmptext_r[NUM_VARIABLE_KEY_TESTS]; uint8_t tmp[16], iv[8]; int i; + AVBlowfish *ctx = av_blowfish_alloc(); + if (!ctx) + return 1; - av_blowfish_init(&ctx, "abcdefghijklmnopqrstuvwxyz", 26); + av_blowfish_init(ctx, "abcdefghijklmnopqrstuvwxyz", 26); - test_blowfish(&ctx, tmp, plaintext, ciphertext, 1, NULL, 0, "encryption"); - test_blowfish(&ctx, tmp, ciphertext, plaintext, 1, NULL, 1, "decryption"); - test_blowfish(&ctx, tmp, tmp, ciphertext, 1, NULL, 0, "Inplace encryption"); - test_blowfish(&ctx, tmp, tmp, plaintext, 1, NULL, 1, "Inplace decryption"); + test_blowfish(ctx, tmp, plaintext, ciphertext, 1, NULL, 0, "encryption"); + test_blowfish(ctx, tmp, ciphertext, plaintext, 1, NULL, 1, "decryption"); + test_blowfish(ctx, tmp, tmp, ciphertext, 1, NULL, 0, "Inplace encryption"); + test_blowfish(ctx, tmp, tmp, plaintext, 1, NULL, 1, "Inplace decryption"); memcpy(iv, IV, 8); - test_blowfish(&ctx, tmp, plaintext2, ciphertext2, 2, iv, 0, "CBC encryption"); + test_blowfish(ctx, tmp, plaintext2, ciphertext2, 2, iv, 0, "CBC encryption"); memcpy(iv, IV, 8); - test_blowfish(&ctx, tmp, ciphertext2, plaintext2, 2, iv, 1, "CBC decryption"); + test_blowfish(ctx, tmp, ciphertext2, plaintext2, 2, iv, 1, "CBC decryption"); memcpy(iv, IV, 8); - test_blowfish(&ctx, tmp, tmp, ciphertext2, 2, iv, 0, "Inplace CBC encryption"); + test_blowfish(ctx, tmp, tmp, ciphertext2, 2, iv, 0, "Inplace CBC encryption"); memcpy(iv, IV, 8); - test_blowfish(&ctx, tmp, tmp, plaintext2, 2, iv, 1, "Inplace CBC decryption"); + test_blowfish(ctx, tmp, tmp, plaintext2, 2, iv, 1, "Inplace CBC decryption"); memcpy(tmptext_l, plaintext_l, sizeof(*plaintext_l) * NUM_VARIABLE_KEY_TESTS); memcpy(tmptext_r, plaintext_r, sizeof(*plaintext_r) * NUM_VARIABLE_KEY_TESTS); for (i = 0; i < NUM_VARIABLE_KEY_TESTS; i++) { - av_blowfish_init(&ctx, variable_key[i], 8); + av_blowfish_init(ctx, variable_key[i], 8); - av_blowfish_crypt_ecb(&ctx, &tmptext_l[i], &tmptext_r[i], 0); + av_blowfish_crypt_ecb(ctx, &tmptext_l[i], &tmptext_r[i], 0); if (tmptext_l[i] != ciphertext_l[i] || tmptext_r[i] != ciphertext_r[i]) { printf("Test encryption failed.\n"); return 2; } - av_blowfish_crypt_ecb(&ctx, &tmptext_l[i], &tmptext_r[i], 1); + av_blowfish_crypt_ecb(ctx, &tmptext_l[i], &tmptext_r[i], 1); if (tmptext_l[i] != plaintext_l[i] || tmptext_r[i] != plaintext_r[i]) { printf("Test decryption failed.\n"); return 3; } } printf("Test encryption/decryption success.\n"); + av_free(ctx); return 0; } |