summaryrefslogtreecommitdiff
path: root/libavutil/xtea.c
diff options
context:
space:
mode:
authorDiego Biurrun <diego@biurrun.de>2016-03-17 19:13:17 +0100
committerDiego Biurrun <diego@biurrun.de>2016-04-07 16:14:42 +0200
commitd12b5b2f135aade4099f4b26b0fe678656158c13 (patch)
treed5b44fd428a1c68213fe51aca21b5819bce3d33a /libavutil/xtea.c
parent330177b508420a553083df94f22cbd5142de0f4a (diff)
build: Split test programs off into separate files
This avoids spurious library rebuilds when only the test program code is changed and simplifies the build system.
Diffstat (limited to 'libavutil/xtea.c')
-rw-r--r--libavutil/xtea.c100
1 files changed, 0 insertions, 100 deletions
diff --git a/libavutil/xtea.c b/libavutil/xtea.c
index 25fd2f07b1..3e222365b3 100644
--- a/libavutil/xtea.c
+++ b/libavutil/xtea.c
@@ -173,103 +173,3 @@ void av_xtea_le_crypt(AVXTEA *ctx, uint8_t *dst, const uint8_t *src, int count,
{
xtea_crypt(ctx, dst, src, count, iv, decrypt, xtea_le_crypt_ecb);
}
-
-#ifdef TEST
-#include <stdio.h>
-
-#define XTEA_NUM_TESTS 6
-
-static const uint8_t xtea_test_key[XTEA_NUM_TESTS][16] = {
- { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
- 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f },
- { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
- 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f },
- { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
- 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f },
- { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },
- { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },
- { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }
-};
-
-static const uint8_t xtea_test_pt[XTEA_NUM_TESTS][8] = {
- { 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48 },
- { 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41 },
- { 0x5a, 0x5b, 0x6e, 0x27, 0x89, 0x48, 0xd7, 0x7f },
- { 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48 },
- { 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41 },
- { 0x70, 0xe1, 0x22, 0x5d, 0x6e, 0x4e, 0x76, 0x55 }
-};
-
-static const uint8_t xtea_test_ct[XTEA_NUM_TESTS][8] = {
- { 0x49, 0x7d, 0xf3, 0xd0, 0x72, 0x61, 0x2c, 0xb5 },
- { 0xe7, 0x8f, 0x2d, 0x13, 0x74, 0x43, 0x41, 0xd8 },
- { 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41 },
- { 0xa0, 0x39, 0x05, 0x89, 0xf8, 0xb8, 0xef, 0xa5 },
- { 0xed, 0x23, 0x37, 0x5a, 0x82, 0x1a, 0x8c, 0x2d },
- { 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41 }
-};
-
-static void test_xtea(AVXTEA *ctx, uint8_t *dst, const uint8_t *src,
- const uint8_t *ref, int len, uint8_t *iv, int dir,
- const char *test,
- void (*crypt)(AVXTEA *, uint8_t *, const uint8_t *, int, uint8_t *, int))
-{
- crypt(ctx, dst, src, len, iv, dir);
- if (memcmp(dst, ref, 8*len)) {
- int i;
- printf("%s failed\ngot ", test);
- for (i = 0; i < 8*len; i++)
- printf("%02x ", dst[i]);
- printf("\nexpected ");
- for (i = 0; i < 8*len; i++)
- printf("%02x ", ref[i]);
- printf("\n");
- exit(1);
- }
-}
-
-int main(void)
-{
- AVXTEA ctx;
- uint8_t buf[16], iv[8];
- int i, j;
- const uint8_t src[32] = "HelloWorldHelloWorldHelloWorld";
- uint8_t ct[32];
- uint8_t pl[32];
-
- for (i = 0; i < XTEA_NUM_TESTS; i++) {
- av_xtea_init(&ctx, xtea_test_key[i]);
-
- test_xtea(&ctx, buf, xtea_test_pt[i], xtea_test_ct[i], 1, NULL, 0, "encryption", av_xtea_crypt);
- test_xtea(&ctx, buf, xtea_test_ct[i], xtea_test_pt[i], 1, NULL, 1, "decryption", av_xtea_crypt);
-
- for (j = 0; j < 4; j++)
- AV_WL32(&buf[4*j], AV_RB32(&xtea_test_key[i][4*j]));
- av_xtea_le_init(&ctx, buf);
- for (j = 0; j < 2; j++) {
- AV_WL32(&ct[4*j], AV_RB32(&xtea_test_ct[i][4*j]));
- AV_WL32(&pl[4*j], AV_RB32(&xtea_test_pt[i][4*j]));
- }
- test_xtea(&ctx, buf, pl, ct, 1, NULL, 0, "encryption", av_xtea_le_crypt);
- test_xtea(&ctx, buf, ct, pl, 1, NULL, 1, "decryption", av_xtea_le_crypt);
-
- /* encrypt */
- memcpy(iv, "HALLO123", 8);
- av_xtea_crypt(&ctx, ct, src, 4, iv, 0);
-
- /* decrypt into pl */
- memcpy(iv, "HALLO123", 8);
- test_xtea(&ctx, pl, ct, src, 4, iv, 1, "CBC decryption", av_xtea_crypt);
-
- memcpy(iv, "HALLO123", 8);
- test_xtea(&ctx, ct, ct, src, 4, iv, 1, "CBC inplace decryption", av_xtea_crypt);
- }
- printf("Test encryption/decryption success.\n");
-
- return 0;
-}
-
-#endif