Browse Source

xtea-test: factorize test code

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
tags/n1.1
Michael Niedermayer 13 years ago
parent
commit
a0321dadfd
1 changed files with 9 additions and 10 deletions
  1. +9
    -10
      libavutil/xtea.c

+ 9
- 10
libavutil/xtea.c View File

@@ -227,20 +227,19 @@ int main(void)
uint8_t buf[8];
int i;

#define CHECK(dst, src, ref, len, iv, dir, error) \
av_xtea_crypt(&ctx, dst, src, len, iv, dir);\
if (memcmp(dst, ref, 8*len)) {\
printf(error);\
return 1;\
}

for (i = 0; i < XTEA_NUM_TESTS; i++) {
av_xtea_init(&ctx, xtea_test_key[i]);

av_xtea_crypt(&ctx, buf, xtea_test_pt[i], 1, NULL, 0);
if (memcmp(buf, xtea_test_ct[i], 8)) {
printf("Test encryption failed.\n");
return 1;
}
CHECK(buf, xtea_test_pt[i], xtea_test_ct[i], 1, NULL, 0, "Test encryption failed.\n");
CHECK(buf, xtea_test_ct[i], xtea_test_pt[i], 1, NULL, 1, "Test decryption failed.\n");

av_xtea_crypt(&ctx, buf, xtea_test_ct[i], 1, NULL, 1);
if (memcmp(buf, xtea_test_pt[i], 8)) {
printf("Test decryption failed.\n");
return 1;
}
}
printf("Test encryption/decryption success.\n");



Loading…
Cancel
Save