On 5/17/2016 10:36 AM, Diego Biurrun wrote:
> ---
> libavutil/tests/blowfish.c | 28 +++++++++++++++-------------
> 1 file changed, 15 insertions(+), 13 deletions(-)
>
> diff --git a/libavutil/tests/blowfish.c b/libavutil/tests/blowfish.c
> index acaab70..5fa3f42 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,47 @@ static void test_blowfish(AVBlowfish *ctx, uint8_t
> *dst, const uint8_t *src,
>
> int main(void)
> {
> - AVBlowfish ctx;
> + AVBlowfish *ctx = av_blowfish_alloc();
Missing check for malloc failure. Aside from that both patches are ok.
> uint32_t tmptext_l[NUM_VARIABLE_KEY_TESTS];
> uint32_t tmptext_r[NUM_VARIABLE_KEY_TESTS];
> uint8_t tmp[16], iv[8];
> int i;
>
> - 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 1;
> }
>
> - 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 1;
> }
> }
> printf("Test encryption/decryption success.\n");
> + av_free(ctx);
>
> return 0;
> }
>
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel