aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--crypto/tcrypt.c50
-rw-r--r--crypto/testmgr.c60
-rw-r--r--crypto/testmgr.h1412
3 files changed, 1520 insertions, 2 deletions
diff --git a/crypto/tcrypt.c b/crypto/tcrypt.c
index a94bbd77dc60..871076b1e0ab 100644
--- a/crypto/tcrypt.c
+++ b/crypto/tcrypt.c
@@ -1043,6 +1043,10 @@ static int do_test(int m)
1043 1043
1044 case 15: 1044 case 15:
1045 ret += tcrypt_test("ecb(cast6)"); 1045 ret += tcrypt_test("ecb(cast6)");
1046 ret += tcrypt_test("cbc(cast6)");
1047 ret += tcrypt_test("ctr(cast6)");
1048 ret += tcrypt_test("lrw(cast6)");
1049 ret += tcrypt_test("xts(cast6)");
1046 break; 1050 break;
1047 1051
1048 case 16: 1052 case 16:
@@ -1376,6 +1380,29 @@ static int do_test(int m)
1376 speed_template_8_16); 1380 speed_template_8_16);
1377 break; 1381 break;
1378 1382
1383 case 210:
1384 test_cipher_speed("ecb(cast6)", ENCRYPT, sec, NULL, 0,
1385 speed_template_16_32);
1386 test_cipher_speed("ecb(cast6)", DECRYPT, sec, NULL, 0,
1387 speed_template_16_32);
1388 test_cipher_speed("cbc(cast6)", ENCRYPT, sec, NULL, 0,
1389 speed_template_16_32);
1390 test_cipher_speed("cbc(cast6)", DECRYPT, sec, NULL, 0,
1391 speed_template_16_32);
1392 test_cipher_speed("ctr(cast6)", ENCRYPT, sec, NULL, 0,
1393 speed_template_16_32);
1394 test_cipher_speed("ctr(cast6)", DECRYPT, sec, NULL, 0,
1395 speed_template_16_32);
1396 test_cipher_speed("lrw(cast6)", ENCRYPT, sec, NULL, 0,
1397 speed_template_32_48);
1398 test_cipher_speed("lrw(cast6)", DECRYPT, sec, NULL, 0,
1399 speed_template_32_48);
1400 test_cipher_speed("xts(cast6)", ENCRYPT, sec, NULL, 0,
1401 speed_template_32_64);
1402 test_cipher_speed("xts(cast6)", DECRYPT, sec, NULL, 0,
1403 speed_template_32_64);
1404 break;
1405
1379 case 300: 1406 case 300:
1380 /* fall through */ 1407 /* fall through */
1381 1408
@@ -1671,6 +1698,29 @@ static int do_test(int m)
1671 speed_template_8_16); 1698 speed_template_8_16);
1672 break; 1699 break;
1673 1700
1701 case 507:
1702 test_acipher_speed("ecb(cast6)", ENCRYPT, sec, NULL, 0,
1703 speed_template_16_32);
1704 test_acipher_speed("ecb(cast6)", DECRYPT, sec, NULL, 0,
1705 speed_template_16_32);
1706 test_acipher_speed("cbc(cast6)", ENCRYPT, sec, NULL, 0,
1707 speed_template_16_32);
1708 test_acipher_speed("cbc(cast6)", DECRYPT, sec, NULL, 0,
1709 speed_template_16_32);
1710 test_acipher_speed("ctr(cast6)", ENCRYPT, sec, NULL, 0,
1711 speed_template_16_32);
1712 test_acipher_speed("ctr(cast6)", DECRYPT, sec, NULL, 0,
1713 speed_template_16_32);
1714 test_acipher_speed("lrw(cast6)", ENCRYPT, sec, NULL, 0,
1715 speed_template_32_48);
1716 test_acipher_speed("lrw(cast6)", DECRYPT, sec, NULL, 0,
1717 speed_template_32_48);
1718 test_acipher_speed("xts(cast6)", ENCRYPT, sec, NULL, 0,
1719 speed_template_32_64);
1720 test_acipher_speed("xts(cast6)", DECRYPT, sec, NULL, 0,
1721 speed_template_32_64);
1722 break;
1723
1674 case 1000: 1724 case 1000:
1675 test_available(); 1725 test_available();
1676 break; 1726 break;
diff --git a/crypto/testmgr.c b/crypto/testmgr.c
index def0f430b667..cff3c1c3f83c 100644
--- a/crypto/testmgr.c
+++ b/crypto/testmgr.c
@@ -1878,6 +1878,21 @@ static const struct alg_test_desc alg_test_descs[] = {
1878 } 1878 }
1879 } 1879 }
1880 }, { 1880 }, {
1881 .alg = "cbc(cast6)",
1882 .test = alg_test_skcipher,
1883 .suite = {
1884 .cipher = {
1885 .enc = {
1886 .vecs = cast6_cbc_enc_tv_template,
1887 .count = CAST6_CBC_ENC_TEST_VECTORS
1888 },
1889 .dec = {
1890 .vecs = cast6_cbc_dec_tv_template,
1891 .count = CAST6_CBC_DEC_TEST_VECTORS
1892 }
1893 }
1894 }
1895 }, {
1881 .alg = "cbc(des)", 1896 .alg = "cbc(des)",
1882 .test = alg_test_skcipher, 1897 .test = alg_test_skcipher,
1883 .suite = { 1898 .suite = {
@@ -2144,6 +2159,21 @@ static const struct alg_test_desc alg_test_descs[] = {
2144 } 2159 }
2145 } 2160 }
2146 }, { 2161 }, {
2162 .alg = "ctr(cast6)",
2163 .test = alg_test_skcipher,
2164 .suite = {
2165 .cipher = {
2166 .enc = {
2167 .vecs = cast6_ctr_enc_tv_template,
2168 .count = CAST6_CTR_ENC_TEST_VECTORS
2169 },
2170 .dec = {
2171 .vecs = cast6_ctr_dec_tv_template,
2172 .count = CAST6_CTR_DEC_TEST_VECTORS
2173 }
2174 }
2175 }
2176 }, {
2147 .alg = "ctr(serpent)", 2177 .alg = "ctr(serpent)",
2148 .test = alg_test_skcipher, 2178 .test = alg_test_skcipher,
2149 .suite = { 2179 .suite = {
@@ -2620,6 +2650,21 @@ static const struct alg_test_desc alg_test_descs[] = {
2620 } 2650 }
2621 } 2651 }
2622 }, { 2652 }, {
2653 .alg = "lrw(cast6)",
2654 .test = alg_test_skcipher,
2655 .suite = {
2656 .cipher = {
2657 .enc = {
2658 .vecs = cast6_lrw_enc_tv_template,
2659 .count = CAST6_LRW_ENC_TEST_VECTORS
2660 },
2661 .dec = {
2662 .vecs = cast6_lrw_dec_tv_template,
2663 .count = CAST6_LRW_DEC_TEST_VECTORS
2664 }
2665 }
2666 }
2667 }, {
2623 .alg = "lrw(serpent)", 2668 .alg = "lrw(serpent)",
2624 .test = alg_test_skcipher, 2669 .test = alg_test_skcipher,
2625 .suite = { 2670 .suite = {
@@ -2972,6 +3017,21 @@ static const struct alg_test_desc alg_test_descs[] = {
2972 } 3017 }
2973 } 3018 }
2974 }, { 3019 }, {
3020 .alg = "xts(cast6)",
3021 .test = alg_test_skcipher,
3022 .suite = {
3023 .cipher = {
3024 .enc = {
3025 .vecs = cast6_xts_enc_tv_template,
3026 .count = CAST6_XTS_ENC_TEST_VECTORS
3027 },
3028 .dec = {
3029 .vecs = cast6_xts_dec_tv_template,
3030 .count = CAST6_XTS_DEC_TEST_VECTORS
3031 }
3032 }
3033 }
3034 }, {
2975 .alg = "xts(serpent)", 3035 .alg = "xts(serpent)",
2976 .test = alg_test_skcipher, 3036 .test = alg_test_skcipher,
2977 .suite = { 3037 .suite = {
diff --git a/crypto/testmgr.h b/crypto/testmgr.h
index 9309948a7028..6eb3ef5e3f88 100644
--- a/crypto/testmgr.h
+++ b/crypto/testmgr.h
@@ -6896,8 +6896,16 @@ static struct cipher_testvec serpent_xts_dec_tv_template[] = {
6896}; 6896};
6897 6897
6898/* Cast6 test vectors from RFC 2612 */ 6898/* Cast6 test vectors from RFC 2612 */
6899#define CAST6_ENC_TEST_VECTORS 3 6899#define CAST6_ENC_TEST_VECTORS 4
6900#define CAST6_DEC_TEST_VECTORS 3 6900#define CAST6_DEC_TEST_VECTORS 4
6901#define CAST6_CBC_ENC_TEST_VECTORS 1
6902#define CAST6_CBC_DEC_TEST_VECTORS 1
6903#define CAST6_CTR_ENC_TEST_VECTORS 1
6904#define CAST6_CTR_DEC_TEST_VECTORS 1
6905#define CAST6_LRW_ENC_TEST_VECTORS 1
6906#define CAST6_LRW_DEC_TEST_VECTORS 1
6907#define CAST6_XTS_ENC_TEST_VECTORS 1
6908#define CAST6_XTS_DEC_TEST_VECTORS 1
6901 6909
6902static struct cipher_testvec cast6_enc_tv_template[] = { 6910static struct cipher_testvec cast6_enc_tv_template[] = {
6903 { 6911 {
@@ -6930,6 +6938,140 @@ static struct cipher_testvec cast6_enc_tv_template[] = {
6930 .result = "\x4f\x6a\x20\x38\x28\x68\x97\xb9" 6938 .result = "\x4f\x6a\x20\x38\x28\x68\x97\xb9"
6931 "\xc9\x87\x01\x36\x55\x33\x17\xfa", 6939 "\xc9\x87\x01\x36\x55\x33\x17\xfa",
6932 .rlen = 16, 6940 .rlen = 16,
6941 }, { /* Generated from TF test vectors */
6942 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9"
6943 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A"
6944 "\x27\x04\xE1\x27\x04\xE1\xBE\x9B"
6945 "\x78\xBE\x9B\x78\x55\x32\x0F\x55",
6946 .klen = 32,
6947 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F"
6948 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64",
6949 .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31"
6950 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3"
6951 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15"
6952 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87"
6953 "\x1E\x92\x29\xC0\x34\xCB\x62\xF9"
6954 "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48"
6955 "\xDF\x76\x0D\x81\x18\xAF\x23\xBA"
6956 "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C"
6957 "\xC3\x37\xCE\x65\xFC\x70\x07\x9E"
6958 "\x12\xA9\x40\xD7\x4B\xE2\x79\x10"
6959 "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F"
6960 "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1"
6961 "\x68\xFF\x73\x0A\xA1\x15\xAC\x43"
6962 "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5"
6963 "\x29\xC0\x57\xEE\x62\xF9\x90\x04"
6964 "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76"
6965 "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8"
6966 "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A"
6967 "\xF1\x65\xFC\x93\x07\x9E\x35\xCC"
6968 "\x40\xD7\x6E\x05\x79\x10\xA7\x1B"
6969 "\xB2\x49\xE0\x54\xEB\x82\x19\x8D"
6970 "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF"
6971 "\x96\x0A\xA1\x38\xCF\x43\xDA\x71"
6972 "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3"
6973 "\x57\xEE\x85\x1C\x90\x27\xBE\x32"
6974 "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4"
6975 "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16"
6976 "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88"
6977 "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA"
6978 "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49"
6979 "\xE0\x77\x0E\x82\x19\xB0\x24\xBB"
6980 "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D"
6981 "\xC4\x38\xCF\x66\xFD\x71\x08\x9F"
6982 "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11"
6983 "\x85\x1C\xB3\x27\xBE\x55\xEC\x60"
6984 "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2"
6985 "\x69\x00\x74\x0B\xA2\x16\xAD\x44"
6986 "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6"
6987 "\x2A\xC1\x58\xEF\x63\xFA\x91\x05"
6988 "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77"
6989 "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9"
6990 "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B"
6991 "\xF2\x66\xFD\x94\x08\x9F\x36\xCD"
6992 "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C"
6993 "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E"
6994 "\x25\xBC\x30\xC7\x5E\xF5\x69\x00"
6995 "\x97\x0B\xA2\x39\xD0\x44\xDB\x72"
6996 "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4"
6997 "\x58\xEF\x86\x1D\x91\x28\xBF\x33"
6998 "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5"
6999 "\x3C\xD3\x47\xDE\x75\x0C\x80\x17"
7000 "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89"
7001 "\x20\x94\x2B\xC2\x36\xCD\x64\xFB"
7002 "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A"
7003 "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC"
7004 "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E"
7005 "\xC5\x39\xD0\x67\xFE\x72\x09\xA0"
7006 "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12"
7007 "\x86\x1D\xB4\x28\xBF\x56\xED\x61"
7008 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3"
7009 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45"
7010 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7",
7011 .ilen = 496,
7012 .result = "\xC3\x70\x22\x32\xF5\x80\xCB\x54"
7013 "\xFC\x30\xE0\xF6\xEB\x39\x57\xA6"
7014 "\xB6\xB9\xC5\xA4\x91\x55\x14\x97"
7015 "\xC1\x20\xFF\x6C\x5C\xF0\x67\xEA"
7016 "\x2F\xED\xD8\xC9\xFB\x38\x3F\xFE"
7017 "\x93\xBE\xDC\x00\xD3\x7F\xAD\x4C"
7018 "\x5A\x08\x92\xD1\x47\x0C\xFA\x6C"
7019 "\xD0\x6A\x99\x10\x72\xF8\x47\x62"
7020 "\x81\x42\xF8\xD8\xF5\xBB\x94\x08"
7021 "\xAA\x97\xA2\x8B\x69\xB3\xD2\x7E"
7022 "\xBC\xB5\x00\x0C\xE5\x44\x4B\x58"
7023 "\xE8\x63\xDC\xB3\xC4\xE5\x23\x12"
7024 "\x5A\x72\x85\x47\x8B\xEC\x9F\x26"
7025 "\x84\xB6\xED\x10\x33\x63\x9B\x5F"
7026 "\x4D\x53\xEE\x94\x45\x8B\x60\x58"
7027 "\x86\x20\xF9\x1E\x82\x08\x3E\x58"
7028 "\x60\x1B\x34\x19\x02\xBE\x4E\x09"
7029 "\xBB\x7C\x15\xCC\x60\x27\x55\x7A"
7030 "\x12\xB8\xD8\x08\x89\x3C\xA6\xF3"
7031 "\xF1\xDD\xA7\x07\xA3\x12\x85\x28"
7032 "\xE9\x57\xAC\x80\x0C\x5C\x0F\x3A"
7033 "\x5D\xC2\x91\xC7\x90\xE4\x8C\x43"
7034 "\x92\xE4\x7C\x26\x69\x4D\x83\x68"
7035 "\x14\x96\x42\x47\xBD\xA9\xE4\x8A"
7036 "\x33\x19\xEB\x54\x8E\x0D\x4B\x6E"
7037 "\x91\x51\xB5\x36\x08\xDE\x1C\x06"
7038 "\x03\xBD\xDE\x81\x26\xF7\x99\xC2"
7039 "\xBA\xF7\x6D\x87\x0D\xE4\xA6\xCF"
7040 "\xC1\xF5\x27\x05\xB8\x02\x57\x72"
7041 "\xE6\x42\x13\x0B\xC6\x47\x05\x74"
7042 "\x24\x15\xF7\x0D\xC2\x23\x9D\xB9"
7043 "\x3C\x77\x18\x93\xBA\xB4\xFC\x8C"
7044 "\x98\x82\x67\x67\xB4\xD7\xD3\x43"
7045 "\x23\x08\x02\xB7\x9B\x99\x05\xFB"
7046 "\xD3\xB5\x00\x0A\xA9\x9D\x66\xD6"
7047 "\x2E\x49\x58\xD0\xA8\x57\x29\x7F"
7048 "\x0A\x0E\x7D\xFC\x92\x83\xCC\x67"
7049 "\xA2\xB1\x70\x3A\x8F\x87\x4A\x8D"
7050 "\x17\xE2\x58\x2B\x88\x0D\x68\x62"
7051 "\xBF\x35\xD1\x6F\xC0\xF0\x18\x62"
7052 "\xB2\xC7\x2D\x58\xC7\x16\xDE\x08"
7053 "\xEB\x84\x1D\x25\xA7\x38\x94\x06"
7054 "\x93\x9D\xF8\xFE\x88\x71\xE7\x84"
7055 "\x2C\xA0\x38\xA3\x1D\x48\xCF\x29"
7056 "\x0B\xBC\xD8\x50\x99\x1A\x26\xFB"
7057 "\x8E\x75\x3D\x73\xEB\x6A\xED\x29"
7058 "\xE0\x8E\xED\xFC\xFE\x6F\xF6\xBA"
7059 "\x41\xE2\x10\x4C\x01\x8B\x69\x2B"
7060 "\x25\x3F\x4D\x70\x7B\x92\xD6\x3B"
7061 "\xAC\xF9\x77\x18\xD9\x6A\x30\xA6"
7062 "\x2E\xFA\x30\xFF\xC8\xD5\x1D\x06"
7063 "\x59\x28\x1D\x86\x43\x04\x5D\x3B"
7064 "\x99\x4C\x04\x5A\x21\x17\x8B\x76"
7065 "\x8F\x72\xCB\xA1\x9C\x29\x4C\xC3"
7066 "\x65\xA2\x58\x2A\xC5\x66\x24\xBF"
7067 "\xBA\xE6\x0C\xDD\x34\x24\x74\xC8"
7068 "\x84\x0A\x66\x2C\xBE\x8F\x32\xA9"
7069 "\xE7\xE4\xA1\xD7\xDA\xAB\x23\x1E"
7070 "\xEB\xEE\x6C\x94\x6F\x9C\x2E\xD1"
7071 "\x49\x2C\xF3\xD4\x90\xCC\x93\x4C"
7072 "\x84\x52\x6D\x68\xDE\xC6\x64\xB2"
7073 "\x11\x74\x93\x57\xB4\x7E\xC6\x00",
7074 .rlen = 496,
6933 }, 7075 },
6934}; 7076};
6935 7077
@@ -6964,6 +7106,1272 @@ static struct cipher_testvec cast6_dec_tv_template[] = {
6964 .ilen = 16, 7106 .ilen = 16,
6965 .result = zeroed_string, 7107 .result = zeroed_string,
6966 .rlen = 16, 7108 .rlen = 16,
7109 }, { /* Generated from TF test vectors */
7110 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9"
7111 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A"
7112 "\x27\x04\xE1\x27\x04\xE1\xBE\x9B"
7113 "\x78\xBE\x9B\x78\x55\x32\x0F\x55",
7114 .klen = 32,
7115 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F"
7116 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64",
7117 .input = "\xC3\x70\x22\x32\xF5\x80\xCB\x54"
7118 "\xFC\x30\xE0\xF6\xEB\x39\x57\xA6"
7119 "\xB6\xB9\xC5\xA4\x91\x55\x14\x97"
7120 "\xC1\x20\xFF\x6C\x5C\xF0\x67\xEA"
7121 "\x2F\xED\xD8\xC9\xFB\x38\x3F\xFE"
7122 "\x93\xBE\xDC\x00\xD3\x7F\xAD\x4C"
7123 "\x5A\x08\x92\xD1\x47\x0C\xFA\x6C"
7124 "\xD0\x6A\x99\x10\x72\xF8\x47\x62"
7125 "\x81\x42\xF8\xD8\xF5\xBB\x94\x08"
7126 "\xAA\x97\xA2\x8B\x69\xB3\xD2\x7E"
7127 "\xBC\xB5\x00\x0C\xE5\x44\x4B\x58"
7128 "\xE8\x63\xDC\xB3\xC4\xE5\x23\x12"
7129 "\x5A\x72\x85\x47\x8B\xEC\x9F\x26"
7130 "\x84\xB6\xED\x10\x33\x63\x9B\x5F"
7131 "\x4D\x53\xEE\x94\x45\x8B\x60\x58"
7132 "\x86\x20\xF9\x1E\x82\x08\x3E\x58"
7133 "\x60\x1B\x34\x19\x02\xBE\x4E\x09"
7134 "\xBB\x7C\x15\xCC\x60\x27\x55\x7A"
7135 "\x12\xB8\xD8\x08\x89\x3C\xA6\xF3"
7136 "\xF1\xDD\xA7\x07\xA3\x12\x85\x28"
7137 "\xE9\x57\xAC\x80\x0C\x5C\x0F\x3A"
7138 "\x5D\xC2\x91\xC7\x90\xE4\x8C\x43"
7139 "\x92\xE4\x7C\x26\x69\x4D\x83\x68"
7140 "\x14\x96\x42\x47\xBD\xA9\xE4\x8A"
7141 "\x33\x19\xEB\x54\x8E\x0D\x4B\x6E"
7142 "\x91\x51\xB5\x36\x08\xDE\x1C\x06"
7143 "\x03\xBD\xDE\x81\x26\xF7\x99\xC2"
7144 "\xBA\xF7\x6D\x87\x0D\xE4\xA6\xCF"
7145 "\xC1\xF5\x27\x05\xB8\x02\x57\x72"
7146 "\xE6\x42\x13\x0B\xC6\x47\x05\x74"
7147 "\x24\x15\xF7\x0D\xC2\x23\x9D\xB9"
7148 "\x3C\x77\x18\x93\xBA\xB4\xFC\x8C"
7149 "\x98\x82\x67\x67\xB4\xD7\xD3\x43"
7150 "\x23\x08\x02\xB7\x9B\x99\x05\xFB"
7151 "\xD3\xB5\x00\x0A\xA9\x9D\x66\xD6"
7152 "\x2E\x49\x58\xD0\xA8\x57\x29\x7F"
7153 "\x0A\x0E\x7D\xFC\x92\x83\xCC\x67"
7154 "\xA2\xB1\x70\x3A\x8F\x87\x4A\x8D"
7155 "\x17\xE2\x58\x2B\x88\x0D\x68\x62"
7156 "\xBF\x35\xD1\x6F\xC0\xF0\x18\x62"
7157 "\xB2\xC7\x2D\x58\xC7\x16\xDE\x08"
7158 "\xEB\x84\x1D\x25\xA7\x38\x94\x06"
7159 "\x93\x9D\xF8\xFE\x88\x71\xE7\x84"
7160 "\x2C\xA0\x38\xA3\x1D\x48\xCF\x29"
7161 "\x0B\xBC\xD8\x50\x99\x1A\x26\xFB"
7162 "\x8E\x75\x3D\x73\xEB\x6A\xED\x29"
7163 "\xE0\x8E\xED\xFC\xFE\x6F\xF6\xBA"
7164 "\x41\xE2\x10\x4C\x01\x8B\x69\x2B"
7165 "\x25\x3F\x4D\x70\x7B\x92\xD6\x3B"
7166 "\xAC\xF9\x77\x18\xD9\x6A\x30\xA6"
7167 "\x2E\xFA\x30\xFF\xC8\xD5\x1D\x06"
7168 "\x59\x28\x1D\x86\x43\x04\x5D\x3B"
7169 "\x99\x4C\x04\x5A\x21\x17\x8B\x76"
7170 "\x8F\x72\xCB\xA1\x9C\x29\x4C\xC3"
7171 "\x65\xA2\x58\x2A\xC5\x66\x24\xBF"
7172 "\xBA\xE6\x0C\xDD\x34\x24\x74\xC8"
7173 "\x84\x0A\x66\x2C\xBE\x8F\x32\xA9"
7174 "\xE7\xE4\xA1\xD7\xDA\xAB\x23\x1E"
7175 "\xEB\xEE\x6C\x94\x6F\x9C\x2E\xD1"
7176 "\x49\x2C\xF3\xD4\x90\xCC\x93\x4C"
7177 "\x84\x52\x6D\x68\xDE\xC6\x64\xB2"
7178 "\x11\x74\x93\x57\xB4\x7E\xC6\x00",
7179 .ilen = 496,
7180 .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31"
7181 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3"
7182 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15"
7183 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87"
7184 "\x1E\x92\x29\xC0\x34\xCB\x62\xF9"
7185 "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48"
7186 "\xDF\x76\x0D\x81\x18\xAF\x23\xBA"
7187 "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C"
7188 "\xC3\x37\xCE\x65\xFC\x70\x07\x9E"
7189 "\x12\xA9\x40\xD7\x4B\xE2\x79\x10"
7190 "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F"
7191 "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1"
7192 "\x68\xFF\x73\x0A\xA1\x15\xAC\x43"
7193 "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5"
7194 "\x29\xC0\x57\xEE\x62\xF9\x90\x04"
7195 "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76"
7196 "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8"
7197 "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A"
7198 "\xF1\x65\xFC\x93\x07\x9E\x35\xCC"
7199 "\x40\xD7\x6E\x05\x79\x10\xA7\x1B"
7200 "\xB2\x49\xE0\x54\xEB\x82\x19\x8D"
7201 "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF"
7202 "\x96\x0A\xA1\x38\xCF\x43\xDA\x71"
7203 "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3"
7204 "\x57\xEE\x85\x1C\x90\x27\xBE\x32"
7205 "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4"
7206 "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16"
7207 "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88"
7208 "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA"
7209 "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49"
7210 "\xE0\x77\x0E\x82\x19\xB0\x24\xBB"
7211 "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D"
7212 "\xC4\x38\xCF\x66\xFD\x71\x08\x9F"
7213 "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11"
7214 "\x85\x1C\xB3\x27\xBE\x55\xEC\x60"
7215 "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2"
7216 "\x69\x00\x74\x0B\xA2\x16\xAD\x44"
7217 "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6"
7218 "\x2A\xC1\x58\xEF\x63\xFA\x91\x05"
7219 "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77"
7220 "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9"
7221 "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B"
7222 "\xF2\x66\xFD\x94\x08\x9F\x36\xCD"
7223 "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C"
7224 "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E"
7225 "\x25\xBC\x30\xC7\x5E\xF5\x69\x00"
7226 "\x97\x0B\xA2\x39\xD0\x44\xDB\x72"
7227 "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4"
7228 "\x58\xEF\x86\x1D\x91\x28\xBF\x33"
7229 "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5"
7230 "\x3C\xD3\x47\xDE\x75\x0C\x80\x17"
7231 "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89"
7232 "\x20\x94\x2B\xC2\x36\xCD\x64\xFB"
7233 "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A"
7234 "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC"
7235 "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E"
7236 "\xC5\x39\xD0\x67\xFE\x72\x09\xA0"
7237 "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12"
7238 "\x86\x1D\xB4\x28\xBF\x56\xED\x61"
7239 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3"
7240 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45"
7241 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7",
7242 .rlen = 496,
7243 },
7244};
7245
7246static struct cipher_testvec cast6_cbc_enc_tv_template[] = {
7247 { /* Generated from TF test vectors */
7248 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9"
7249 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A"
7250 "\x27\x04\xE1\x27\x04\xE1\xBE\x9B"
7251 "\x78\xBE\x9B\x78\x55\x32\x0F\x55",
7252 .klen = 32,
7253 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F"
7254 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64",
7255 .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31"
7256 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3"
7257 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15"
7258 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87"
7259 "\x1E\x92\x29\xC0\x34\xCB\x62\xF9"
7260 "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48"
7261 "\xDF\x76\x0D\x81\x18\xAF\x23\xBA"
7262 "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C"
7263 "\xC3\x37\xCE\x65\xFC\x70\x07\x9E"
7264 "\x12\xA9\x40\xD7\x4B\xE2\x79\x10"
7265 "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F"
7266 "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1"
7267 "\x68\xFF\x73\x0A\xA1\x15\xAC\x43"
7268 "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5"
7269 "\x29\xC0\x57\xEE\x62\xF9\x90\x04"
7270 "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76"
7271 "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8"
7272 "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A"
7273 "\xF1\x65\xFC\x93\x07\x9E\x35\xCC"
7274 "\x40\xD7\x6E\x05\x79\x10\xA7\x1B"
7275 "\xB2\x49\xE0\x54\xEB\x82\x19\x8D"
7276 "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF"
7277 "\x96\x0A\xA1\x38\xCF\x43\xDA\x71"
7278 "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3"
7279 "\x57\xEE\x85\x1C\x90\x27\xBE\x32"
7280 "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4"
7281 "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16"
7282 "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88"
7283 "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA"
7284 "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49"
7285 "\xE0\x77\x0E\x82\x19\xB0\x24\xBB"
7286 "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D"
7287 "\xC4\x38\xCF\x66\xFD\x71\x08\x9F"
7288 "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11"
7289 "\x85\x1C\xB3\x27\xBE\x55\xEC\x60"
7290 "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2"
7291 "\x69\x00\x74\x0B\xA2\x16\xAD\x44"
7292 "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6"
7293 "\x2A\xC1\x58\xEF\x63\xFA\x91\x05"
7294 "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77"
7295 "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9"
7296 "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B"
7297 "\xF2\x66\xFD\x94\x08\x9F\x36\xCD"
7298 "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C"
7299 "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E"
7300 "\x25\xBC\x30\xC7\x5E\xF5\x69\x00"
7301 "\x97\x0B\xA2\x39\xD0\x44\xDB\x72"
7302 "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4"
7303 "\x58\xEF\x86\x1D\x91\x28\xBF\x33"
7304 "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5"
7305 "\x3C\xD3\x47\xDE\x75\x0C\x80\x17"
7306 "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89"
7307 "\x20\x94\x2B\xC2\x36\xCD\x64\xFB"
7308 "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A"
7309 "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC"
7310 "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E"
7311 "\xC5\x39\xD0\x67\xFE\x72\x09\xA0"
7312 "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12"
7313 "\x86\x1D\xB4\x28\xBF\x56\xED\x61"
7314 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3"
7315 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45"
7316 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7",
7317 .ilen = 496,
7318 .result = "\xDF\x77\x68\x96\xC7\xBA\xF8\xE2"
7319 "\x0E\x24\x99\x1A\xAA\xF3\xC6\x9F"
7320 "\xA0\x73\xB3\x70\xC3\x68\x64\x70"
7321 "\xAD\x33\x02\xFB\x88\x74\xAA\x78"
7322 "\xC7\x47\x1A\x18\x61\x2D\xAC\x9F"
7323 "\x7E\x6F\xDF\x05\x13\x76\xA6\x72"
7324 "\xB7\x13\x09\x0F\x7D\x38\xDF\x25"
7325 "\x4E\xFD\x50\x45\xFA\x35\x6A\xC0"
7326 "\x57\x95\xE1\x21\x26\x10\x9A\x21"
7327 "\xA1\x8A\x51\x05\xD1\xB1\x78\x35"
7328 "\x98\xF5\xAE\xC0\xC1\x8B\x94\xFF"
7329 "\xD0\x69\x3F\x42\xC2\x01\xA7\x9B"
7330 "\x23\x16\x47\x72\x81\x13\x3A\x72"
7331 "\xEC\xD9\x40\x88\x00\x9C\xB0\xA8"
7332 "\x9C\xAC\xCE\x11\x73\x7B\x63\x3E"
7333 "\xA3\x63\x98\x7D\x35\xE4\xD9\x83"
7334 "\xE2\xD0\x52\x87\x0C\x1F\xB0\xB3"
7335 "\x41\x1A\x93\x8D\x76\x31\x9F\xF2"
7336 "\xFE\x09\xA3\x8F\x22\x6A\x3B\xB9"
7337 "\x6C\x9E\xE4\xA1\xA0\xC4\xE7\xA1"
7338 "\x21\x9C\x1A\xCA\x65\xDE\x44\x03"
7339 "\x99\xF2\xD2\x39\xE3\x3F\x0F\x37"
7340 "\x53\x50\x23\xA4\x81\x6E\xDA\xFB"
7341 "\xF8\x7B\x01\xD7\xB2\x32\x9C\xB8"
7342 "\xB1\x0E\x99\x17\xB5\x38\xF9\xD7"
7343 "\x86\x2D\x6E\x94\x5C\x99\x9D\xB3"
7344 "\xD3\x63\x4B\x2A\x7D\x44\x6A\xB2"
7345 "\xC1\x03\xE6\x5A\x37\xD8\x64\x18"
7346 "\xAA\x32\xCE\x29\xED\xC0\xA2\xCB"
7347 "\x8D\xAF\xCD\xBE\x8F\xB6\xEC\xB4"
7348 "\x89\x05\x81\x6E\x71\x4F\xC3\x28"
7349 "\x10\xC1\x62\xC4\x41\xE9\xD2\x39"
7350 "\xF3\x22\x39\x12\x2C\xC2\x95\x2D"
7351 "\xBF\x93\x58\x4B\x04\xD1\x8D\x57"
7352 "\xAE\xEB\x60\x03\x56\x35\xAD\x5A"
7353 "\xE9\xC3\xFF\x4E\x31\xE1\x37\xF8"
7354 "\x7D\xEE\x65\x8A\xB6\x88\x1A\x3E"
7355 "\x07\x09\x82\xBA\xF0\x80\x8A\xD0"
7356 "\xA0\x3F\x6A\xE9\x24\x87\x19\x65"
7357 "\x73\x3F\x12\x91\x47\x54\xBA\x39"
7358 "\x30\x5B\x1E\xE5\xC2\xF9\x3F\xEF"
7359 "\xD6\x75\xF9\xB8\x7C\x8B\x05\x76"
7360 "\xEE\xB7\x08\x25\x4B\xB6\x7B\x47"
7361 "\x72\xC0\x4C\xD4\xDA\xE0\x75\xF1"
7362 "\x7C\xE8\x94\x9E\x16\x6E\xB8\x12"
7363 "\xA1\xC1\x6E\x3B\x1C\x59\x41\x2D"
7364 "\x23\xFA\x7D\x77\xB8\x46\x75\xFE"
7365 "\x4F\x10\xD3\x09\x60\xA1\x36\x96"
7366 "\x5B\xC2\xDC\x6E\x84\x7D\x9B\x14"
7367 "\x80\x21\x83\x58\x3C\x76\xFD\x28"
7368 "\x1D\xF9\x93\x13\xD7\x0E\x62\x14"
7369 "\x5A\xC5\x4E\x08\xA5\x56\xA4\x3C"
7370 "\x68\x93\x44\x70\xDF\xCF\x4A\x51"
7371 "\x0B\x81\x29\x41\xE5\x62\x4D\x36"
7372 "\xB3\xEA\x94\xA6\xB9\xDD\x3F\x09"
7373 "\x62\x34\xA0\x6A\x7E\x7D\xF5\xF6"
7374 "\x01\x91\xB4\x27\xDA\x59\xD6\x17"
7375 "\x56\x4D\x82\x62\x37\xA3\x48\x01"
7376 "\x99\x91\x77\xB2\x08\x6B\x2C\x37"
7377 "\xC5\x5C\xAD\xB6\x07\xB6\x84\xF3"
7378 "\x4D\x59\x7D\xC5\x28\x69\xFA\x92"
7379 "\x22\x46\x89\x2D\x0F\x2B\x08\x24",
7380 .rlen = 496,
7381 },
7382};
7383
7384static struct cipher_testvec cast6_cbc_dec_tv_template[] = {
7385 { /* Generated from TF test vectors */
7386 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9"
7387 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A"
7388 "\x27\x04\xE1\x27\x04\xE1\xBE\x9B"
7389 "\x78\xBE\x9B\x78\x55\x32\x0F\x55",
7390 .klen = 32,
7391 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F"
7392 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64",
7393 .input = "\xDF\x77\x68\x96\xC7\xBA\xF8\xE2"
7394 "\x0E\x24\x99\x1A\xAA\xF3\xC6\x9F"
7395 "\xA0\x73\xB3\x70\xC3\x68\x64\x70"
7396 "\xAD\x33\x02\xFB\x88\x74\xAA\x78"
7397 "\xC7\x47\x1A\x18\x61\x2D\xAC\x9F"
7398 "\x7E\x6F\xDF\x05\x13\x76\xA6\x72"
7399 "\xB7\x13\x09\x0F\x7D\x38\xDF\x25"
7400 "\x4E\xFD\x50\x45\xFA\x35\x6A\xC0"
7401 "\x57\x95\xE1\x21\x26\x10\x9A\x21"
7402 "\xA1\x8A\x51\x05\xD1\xB1\x78\x35"
7403 "\x98\xF5\xAE\xC0\xC1\x8B\x94\xFF"
7404 "\xD0\x69\x3F\x42\xC2\x01\xA7\x9B"
7405 "\x23\x16\x47\x72\x81\x13\x3A\x72"
7406 "\xEC\xD9\x40\x88\x00\x9C\xB0\xA8"
7407 "\x9C\xAC\xCE\x11\x73\x7B\x63\x3E"
7408 "\xA3\x63\x98\x7D\x35\xE4\xD9\x83"
7409 "\xE2\xD0\x52\x87\x0C\x1F\xB0\xB3"
7410 "\x41\x1A\x93\x8D\x76\x31\x9F\xF2"
7411 "\xFE\x09\xA3\x8F\x22\x6A\x3B\xB9"
7412 "\x6C\x9E\xE4\xA1\xA0\xC4\xE7\xA1"
7413 "\x21\x9C\x1A\xCA\x65\xDE\x44\x03"
7414 "\x99\xF2\xD2\x39\xE3\x3F\x0F\x37"
7415 "\x53\x50\x23\xA4\x81\x6E\xDA\xFB"
7416 "\xF8\x7B\x01\xD7\xB2\x32\x9C\xB8"
7417 "\xB1\x0E\x99\x17\xB5\x38\xF9\xD7"
7418 "\x86\x2D\x6E\x94\x5C\x99\x9D\xB3"
7419 "\xD3\x63\x4B\x2A\x7D\x44\x6A\xB2"
7420 "\xC1\x03\xE6\x5A\x37\xD8\x64\x18"
7421 "\xAA\x32\xCE\x29\xED\xC0\xA2\xCB"
7422 "\x8D\xAF\xCD\xBE\x8F\xB6\xEC\xB4"
7423 "\x89\x05\x81\x6E\x71\x4F\xC3\x28"
7424 "\x10\xC1\x62\xC4\x41\xE9\xD2\x39"
7425 "\xF3\x22\x39\x12\x2C\xC2\x95\x2D"
7426 "\xBF\x93\x58\x4B\x04\xD1\x8D\x57"
7427 "\xAE\xEB\x60\x03\x56\x35\xAD\x5A"
7428 "\xE9\xC3\xFF\x4E\x31\xE1\x37\xF8"
7429 "\x7D\xEE\x65\x8A\xB6\x88\x1A\x3E"
7430 "\x07\x09\x82\xBA\xF0\x80\x8A\xD0"
7431 "\xA0\x3F\x6A\xE9\x24\x87\x19\x65"
7432 "\x73\x3F\x12\x91\x47\x54\xBA\x39"
7433 "\x30\x5B\x1E\xE5\xC2\xF9\x3F\xEF"
7434 "\xD6\x75\xF9\xB8\x7C\x8B\x05\x76"
7435 "\xEE\xB7\x08\x25\x4B\xB6\x7B\x47"
7436 "\x72\xC0\x4C\xD4\xDA\xE0\x75\xF1"
7437 "\x7C\xE8\x94\x9E\x16\x6E\xB8\x12"
7438 "\xA1\xC1\x6E\x3B\x1C\x59\x41\x2D"
7439 "\x23\xFA\x7D\x77\xB8\x46\x75\xFE"
7440 "\x4F\x10\xD3\x09\x60\xA1\x36\x96"
7441 "\x5B\xC2\xDC\x6E\x84\x7D\x9B\x14"
7442 "\x80\x21\x83\x58\x3C\x76\xFD\x28"
7443 "\x1D\xF9\x93\x13\xD7\x0E\x62\x14"
7444 "\x5A\xC5\x4E\x08\xA5\x56\xA4\x3C"
7445 "\x68\x93\x44\x70\xDF\xCF\x4A\x51"
7446 "\x0B\x81\x29\x41\xE5\x62\x4D\x36"
7447 "\xB3\xEA\x94\xA6\xB9\xDD\x3F\x09"
7448 "\x62\x34\xA0\x6A\x7E\x7D\xF5\xF6"
7449 "\x01\x91\xB4\x27\xDA\x59\xD6\x17"
7450 "\x56\x4D\x82\x62\x37\xA3\x48\x01"
7451 "\x99\x91\x77\xB2\x08\x6B\x2C\x37"
7452 "\xC5\x5C\xAD\xB6\x07\xB6\x84\xF3"
7453 "\x4D\x59\x7D\xC5\x28\x69\xFA\x92"
7454 "\x22\x46\x89\x2D\x0F\x2B\x08\x24",
7455 .ilen = 496,
7456 .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31"
7457 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3"
7458 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15"
7459 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87"
7460 "\x1E\x92\x29\xC0\x34\xCB\x62\xF9"
7461 "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48"
7462 "\xDF\x76\x0D\x81\x18\xAF\x23\xBA"
7463 "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C"
7464 "\xC3\x37\xCE\x65\xFC\x70\x07\x9E"
7465 "\x12\xA9\x40\xD7\x4B\xE2\x79\x10"
7466 "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F"
7467 "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1"
7468 "\x68\xFF\x73\x0A\xA1\x15\xAC\x43"
7469 "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5"
7470 "\x29\xC0\x57\xEE\x62\xF9\x90\x04"
7471 "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76"
7472 "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8"
7473 "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A"
7474 "\xF1\x65\xFC\x93\x07\x9E\x35\xCC"
7475 "\x40\xD7\x6E\x05\x79\x10\xA7\x1B"
7476 "\xB2\x49\xE0\x54\xEB\x82\x19\x8D"
7477 "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF"
7478 "\x96\x0A\xA1\x38\xCF\x43\xDA\x71"
7479 "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3"
7480 "\x57\xEE\x85\x1C\x90\x27\xBE\x32"
7481 "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4"
7482 "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16"
7483 "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88"
7484 "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA"
7485 "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49"
7486 "\xE0\x77\x0E\x82\x19\xB0\x24\xBB"
7487 "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D"
7488 "\xC4\x38\xCF\x66\xFD\x71\x08\x9F"
7489 "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11"
7490 "\x85\x1C\xB3\x27\xBE\x55\xEC\x60"
7491 "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2"
7492 "\x69\x00\x74\x0B\xA2\x16\xAD\x44"
7493 "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6"
7494 "\x2A\xC1\x58\xEF\x63\xFA\x91\x05"
7495 "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77"
7496 "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9"
7497 "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B"
7498 "\xF2\x66\xFD\x94\x08\x9F\x36\xCD"
7499 "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C"
7500 "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E"
7501 "\x25\xBC\x30\xC7\x5E\xF5\x69\x00"
7502 "\x97\x0B\xA2\x39\xD0\x44\xDB\x72"
7503 "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4"
7504 "\x58\xEF\x86\x1D\x91\x28\xBF\x33"
7505 "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5"
7506 "\x3C\xD3\x47\xDE\x75\x0C\x80\x17"
7507 "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89"
7508 "\x20\x94\x2B\xC2\x36\xCD\x64\xFB"
7509 "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A"
7510 "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC"
7511 "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E"
7512 "\xC5\x39\xD0\x67\xFE\x72\x09\xA0"
7513 "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12"
7514 "\x86\x1D\xB4\x28\xBF\x56\xED\x61"
7515 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3"
7516 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45"
7517 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7",
7518 .rlen = 496,
7519 },
7520};
7521
7522static struct cipher_testvec cast6_ctr_enc_tv_template[] = {
7523 { /* Generated from TF test vectors */
7524 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9"
7525 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A"
7526 "\x27\x04\xE1\x27\x04\xE1\xBE\x9B"
7527 "\x78\xBE\x9B\x78\x55\x32\x0F\x55",
7528 .klen = 32,
7529 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F"
7530 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64",
7531 .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31"
7532 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3"
7533 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15"
7534 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87"
7535 "\x1E\x92\x29\xC0\x34\xCB\x62\xF9"
7536 "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48"
7537 "\xDF\x76\x0D\x81\x18\xAF\x23\xBA"
7538 "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C"
7539 "\xC3\x37\xCE\x65\xFC\x70\x07\x9E"
7540 "\x12\xA9\x40\xD7\x4B\xE2\x79\x10"
7541 "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F"
7542 "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1"
7543 "\x68\xFF\x73\x0A\xA1\x15\xAC\x43"
7544 "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5"
7545 "\x29\xC0\x57\xEE\x62\xF9\x90\x04"
7546 "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76"
7547 "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8"
7548 "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A"
7549 "\xF1\x65\xFC\x93\x07\x9E\x35\xCC"
7550 "\x40\xD7\x6E\x05\x79\x10\xA7\x1B"
7551 "\xB2\x49\xE0\x54\xEB\x82\x19\x8D"
7552 "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF"
7553 "\x96\x0A\xA1\x38\xCF\x43\xDA\x71"
7554 "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3"
7555 "\x57\xEE\x85\x1C\x90\x27\xBE\x32"
7556 "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4"
7557 "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16"
7558 "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88"
7559 "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA"
7560 "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49"
7561 "\xE0\x77\x0E\x82\x19\xB0\x24\xBB"
7562 "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D"
7563 "\xC4\x38\xCF\x66\xFD\x71\x08\x9F"
7564 "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11"
7565 "\x85\x1C\xB3\x27\xBE\x55\xEC\x60"
7566 "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2"
7567 "\x69\x00\x74\x0B\xA2\x16\xAD\x44"
7568 "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6"
7569 "\x2A\xC1\x58\xEF\x63\xFA\x91\x05"
7570 "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77"
7571 "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9"
7572 "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B"
7573 "\xF2\x66\xFD\x94\x08\x9F\x36\xCD"
7574 "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C"
7575 "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E"
7576 "\x25\xBC\x30\xC7\x5E\xF5\x69\x00"
7577 "\x97\x0B\xA2\x39\xD0\x44\xDB\x72"
7578 "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4"
7579 "\x58\xEF\x86\x1D\x91\x28\xBF\x33"
7580 "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5"
7581 "\x3C\xD3\x47\xDE\x75\x0C\x80\x17"
7582 "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89"
7583 "\x20\x94\x2B\xC2\x36\xCD\x64\xFB"
7584 "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A"
7585 "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC"
7586 "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E"
7587 "\xC5\x39\xD0\x67\xFE\x72\x09\xA0"
7588 "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12"
7589 "\x86\x1D\xB4\x28\xBF\x56\xED\x61"
7590 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3"
7591 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45"
7592 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7",
7593 .ilen = 496,
7594 .result = "\x26\x0A\xF1\xE2\x3F\x8A\xEF\xA3"
7595 "\x53\x9A\x5E\x1B\x2A\x1A\xC6\x0A"
7596 "\x57\xA3\xEF\x47\x2A\xE8\x88\xA7"
7597 "\x3C\xD0\xEC\xB9\x94\x50\x7D\x56"
7598 "\xBC\xE1\xC1\xF5\xE1\xEE\x12\xF8"
7599 "\x4F\x03\x82\x3A\x93\x6B\x4C\xD3"
7600 "\xE3\xF3\xFA\xC2\x23\x55\x98\x20"
7601 "\x49\x76\x9B\x6B\xC1\x23\xBF\xE5"
7602 "\xD4\xC4\x2F\x61\xE1\x67\x2A\x30"
7603 "\x6F\x29\xCA\x54\xF8\x1B\xA6\x7D"
7604 "\x66\x45\xEE\xC8\x19\xBE\x50\xF0"
7605 "\x5F\x65\xF8\x1E\x4D\x07\x87\xD9"
7606 "\xD3\xD9\x1B\x09\x89\xFD\x42\xC5"
7607 "\xDB\xEB\x86\xF1\x67\x04\x0F\x5C"
7608 "\x81\xDF\x82\x12\xC7\x4C\x1B\x07"
7609 "\xDE\xE6\xFA\x29\x86\xD1\xB0\xBA"
7610 "\x3D\x6A\x69\x76\xEC\x0F\xB4\xE6"
7611 "\xCD\xA7\xF8\xA8\xB8\xE0\x33\xF5"
7612 "\x49\x61\x22\x52\x64\x8C\x46\x41"
7613 "\x1F\x48\x5F\x4F\xA2\x89\x36\x17"
7614 "\x20\xF8\x2F\x8F\x4B\xFA\xF2\xC0"
7615 "\x1E\x18\xA2\xF8\xB7\x6D\x98\xE3"
7616 "\x00\x14\x15\x59\xC1\x30\x64\xAF"
7617 "\xA8\x01\x38\xAB\xD4\x8B\xEC\x7C"
7618 "\x44\x9A\xC6\x2C\x2E\x2B\x2B\xF4"
7619 "\x02\x37\xC4\x69\xEF\x36\xC1\xF3"
7620 "\xA0\xFB\xFE\x29\xAD\x39\xCF\xD0"
7621 "\x51\x73\xA3\x22\x42\x41\xAB\xD2"
7622 "\x0F\x50\x14\xB9\x54\xD3\xD4\xFA"
7623 "\xBF\xC9\xBB\xCE\xC4\x1D\x2D\xAF"
7624 "\xC9\x3F\x07\x87\x42\x4B\x3A\x54"
7625 "\x34\x8E\x37\xA3\x03\x6F\x65\x66"
7626 "\xDB\x44\xC3\xE8\xD7\xDD\x7D\xDD"
7627 "\x61\xB4\x2B\x80\xA3\x98\x13\xF5"
7628 "\x5A\xD3\x34\x58\xC3\x6E\xF6\xB8"
7629 "\x0A\xC6\x50\x01\x8E\xD5\x6C\x7D"
7630 "\xFE\x16\xB6\xCF\xFC\x51\x40\xAE"
7631 "\xB3\x15\xAC\x90\x6F\x0B\x28\x3A"
7632 "\x60\x40\x38\x90\x20\x46\xC7\xB3"
7633 "\x0B\x12\x6D\x3B\x15\x14\xF9\xF4"
7634 "\x11\x41\x76\x6B\xB3\x60\x82\x3C"
7635 "\x84\xFB\x08\x2E\x92\x25\xCB\x79"
7636 "\x6F\x58\xC5\x94\x00\x00\x47\xB6"
7637 "\x9E\xDC\x0F\x29\x70\x46\x20\x76"
7638 "\x65\x75\x66\x5C\x00\x96\xB3\xE1"
7639 "\x0B\xA7\x11\x8B\x2E\x61\x4E\x45"
7640 "\x73\xFC\x91\xAB\x79\x41\x23\x14"
7641 "\x13\xB6\x72\x6C\x46\xB3\x03\x11"
7642 "\xE4\xF1\xEE\xC9\x7A\xCF\x96\x32"
7643 "\xB6\xF0\x8B\x97\xB4\xCF\x82\xB7"
7644 "\x15\x48\x44\x99\x09\xF6\xE0\xD7"
7645 "\xBC\xF1\x5B\x91\x4F\x30\x22\xA2"
7646 "\x45\xC4\x68\x55\xC2\xBE\xA7\xD2"
7647 "\x12\x53\x35\x9C\xF9\xE7\x35\x5D"
7648 "\x81\xE4\x86\x42\xC3\x58\xFB\xF0"
7649 "\x38\x9B\x8E\x5A\xEF\x83\x33\x0F"
7650 "\x00\x4E\x3F\x9F\xF5\x84\x62\xC4"
7651 "\x19\x35\x88\x22\x45\x59\x0E\x8F"
7652 "\xEC\x27\xDD\x4A\xA4\x1F\xBC\x41"
7653 "\x9B\x66\x8D\x32\xBA\x81\x34\x87"
7654 "\x0E\x74\x33\x30\x62\xB9\x89\xDF"
7655 "\xF9\xC5\xDD\x27\xB3\x39\xCB\xCB",
7656 .rlen = 496,
7657 },
7658};
7659
7660static struct cipher_testvec cast6_ctr_dec_tv_template[] = {
7661 { /* Generated from TF test vectors */
7662 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9"
7663 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A"
7664 "\x27\x04\xE1\x27\x04\xE1\xBE\x9B"
7665 "\x78\xBE\x9B\x78\x55\x32\x0F\x55",
7666 .klen = 32,
7667 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F"
7668 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64",
7669 .input = "\x26\x0A\xF1\xE2\x3F\x8A\xEF\xA3"
7670 "\x53\x9A\x5E\x1B\x2A\x1A\xC6\x0A"
7671 "\x57\xA3\xEF\x47\x2A\xE8\x88\xA7"
7672 "\x3C\xD0\xEC\xB9\x94\x50\x7D\x56"
7673 "\xBC\xE1\xC1\xF5\xE1\xEE\x12\xF8"
7674 "\x4F\x03\x82\x3A\x93\x6B\x4C\xD3"
7675 "\xE3\xF3\xFA\xC2\x23\x55\x98\x20"
7676 "\x49\x76\x9B\x6B\xC1\x23\xBF\xE5"
7677 "\xD4\xC4\x2F\x61\xE1\x67\x2A\x30"
7678 "\x6F\x29\xCA\x54\xF8\x1B\xA6\x7D"
7679 "\x66\x45\xEE\xC8\x19\xBE\x50\xF0"
7680 "\x5F\x65\xF8\x1E\x4D\x07\x87\xD9"
7681 "\xD3\xD9\x1B\x09\x89\xFD\x42\xC5"
7682 "\xDB\xEB\x86\xF1\x67\x04\x0F\x5C"
7683 "\x81\xDF\x82\x12\xC7\x4C\x1B\x07"
7684 "\xDE\xE6\xFA\x29\x86\xD1\xB0\xBA"
7685 "\x3D\x6A\x69\x76\xEC\x0F\xB4\xE6"
7686 "\xCD\xA7\xF8\xA8\xB8\xE0\x33\xF5"
7687 "\x49\x61\x22\x52\x64\x8C\x46\x41"
7688 "\x1F\x48\x5F\x4F\xA2\x89\x36\x17"
7689 "\x20\xF8\x2F\x8F\x4B\xFA\xF2\xC0"
7690 "\x1E\x18\xA2\xF8\xB7\x6D\x98\xE3"
7691 "\x00\x14\x15\x59\xC1\x30\x64\xAF"
7692 "\xA8\x01\x38\xAB\xD4\x8B\xEC\x7C"
7693 "\x44\x9A\xC6\x2C\x2E\x2B\x2B\xF4"
7694 "\x02\x37\xC4\x69\xEF\x36\xC1\xF3"
7695 "\xA0\xFB\xFE\x29\xAD\x39\xCF\xD0"
7696 "\x51\x73\xA3\x22\x42\x41\xAB\xD2"
7697 "\x0F\x50\x14\xB9\x54\xD3\xD4\xFA"
7698 "\xBF\xC9\xBB\xCE\xC4\x1D\x2D\xAF"
7699 "\xC9\x3F\x07\x87\x42\x4B\x3A\x54"
7700 "\x34\x8E\x37\xA3\x03\x6F\x65\x66"
7701 "\xDB\x44\xC3\xE8\xD7\xDD\x7D\xDD"
7702 "\x61\xB4\x2B\x80\xA3\x98\x13\xF5"
7703 "\x5A\xD3\x34\x58\xC3\x6E\xF6\xB8"
7704 "\x0A\xC6\x50\x01\x8E\xD5\x6C\x7D"
7705 "\xFE\x16\xB6\xCF\xFC\x51\x40\xAE"
7706 "\xB3\x15\xAC\x90\x6F\x0B\x28\x3A"
7707 "\x60\x40\x38\x90\x20\x46\xC7\xB3"
7708 "\x0B\x12\x6D\x3B\x15\x14\xF9\xF4"
7709 "\x11\x41\x76\x6B\xB3\x60\x82\x3C"
7710 "\x84\xFB\x08\x2E\x92\x25\xCB\x79"
7711 "\x6F\x58\xC5\x94\x00\x00\x47\xB6"
7712 "\x9E\xDC\x0F\x29\x70\x46\x20\x76"
7713 "\x65\x75\x66\x5C\x00\x96\xB3\xE1"
7714 "\x0B\xA7\x11\x8B\x2E\x61\x4E\x45"
7715 "\x73\xFC\x91\xAB\x79\x41\x23\x14"
7716 "\x13\xB6\x72\x6C\x46\xB3\x03\x11"
7717 "\xE4\xF1\xEE\xC9\x7A\xCF\x96\x32"
7718 "\xB6\xF0\x8B\x97\xB4\xCF\x82\xB7"
7719 "\x15\x48\x44\x99\x09\xF6\xE0\xD7"
7720 "\xBC\xF1\x5B\x91\x4F\x30\x22\xA2"
7721 "\x45\xC4\x68\x55\xC2\xBE\xA7\xD2"
7722 "\x12\x53\x35\x9C\xF9\xE7\x35\x5D"
7723 "\x81\xE4\x86\x42\xC3\x58\xFB\xF0"
7724 "\x38\x9B\x8E\x5A\xEF\x83\x33\x0F"
7725 "\x00\x4E\x3F\x9F\xF5\x84\x62\xC4"
7726 "\x19\x35\x88\x22\x45\x59\x0E\x8F"
7727 "\xEC\x27\xDD\x4A\xA4\x1F\xBC\x41"
7728 "\x9B\x66\x8D\x32\xBA\x81\x34\x87"
7729 "\x0E\x74\x33\x30\x62\xB9\x89\xDF"
7730 "\xF9\xC5\xDD\x27\xB3\x39\xCB\xCB",
7731 .ilen = 496,
7732 .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31"
7733 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3"
7734 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15"
7735 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87"
7736 "\x1E\x92\x29\xC0\x34\xCB\x62\xF9"
7737 "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48"
7738 "\xDF\x76\x0D\x81\x18\xAF\x23\xBA"
7739 "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C"
7740 "\xC3\x37\xCE\x65\xFC\x70\x07\x9E"
7741 "\x12\xA9\x40\xD7\x4B\xE2\x79\x10"
7742 "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F"
7743 "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1"
7744 "\x68\xFF\x73\x0A\xA1\x15\xAC\x43"
7745 "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5"
7746 "\x29\xC0\x57\xEE\x62\xF9\x90\x04"
7747 "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76"
7748 "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8"
7749 "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A"
7750 "\xF1\x65\xFC\x93\x07\x9E\x35\xCC"
7751 "\x40\xD7\x6E\x05\x79\x10\xA7\x1B"
7752 "\xB2\x49\xE0\x54\xEB\x82\x19\x8D"
7753 "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF"
7754 "\x96\x0A\xA1\x38\xCF\x43\xDA\x71"
7755 "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3"
7756 "\x57\xEE\x85\x1C\x90\x27\xBE\x32"
7757 "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4"
7758 "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16"
7759 "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88"
7760 "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA"
7761 "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49"
7762 "\xE0\x77\x0E\x82\x19\xB0\x24\xBB"
7763 "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D"
7764 "\xC4\x38\xCF\x66\xFD\x71\x08\x9F"
7765 "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11"
7766 "\x85\x1C\xB3\x27\xBE\x55\xEC\x60"
7767 "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2"
7768 "\x69\x00\x74\x0B\xA2\x16\xAD\x44"
7769 "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6"
7770 "\x2A\xC1\x58\xEF\x63\xFA\x91\x05"
7771 "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77"
7772 "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9"
7773 "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B"
7774 "\xF2\x66\xFD\x94\x08\x9F\x36\xCD"
7775 "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C"
7776 "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E"
7777 "\x25\xBC\x30\xC7\x5E\xF5\x69\x00"
7778 "\x97\x0B\xA2\x39\xD0\x44\xDB\x72"
7779 "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4"
7780 "\x58\xEF\x86\x1D\x91\x28\xBF\x33"
7781 "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5"
7782 "\x3C\xD3\x47\xDE\x75\x0C\x80\x17"
7783 "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89"
7784 "\x20\x94\x2B\xC2\x36\xCD\x64\xFB"
7785 "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A"
7786 "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC"
7787 "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E"
7788 "\xC5\x39\xD0\x67\xFE\x72\x09\xA0"
7789 "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12"
7790 "\x86\x1D\xB4\x28\xBF\x56\xED\x61"
7791 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3"
7792 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45"
7793 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7",
7794 .rlen = 496,
7795 },
7796};
7797
7798static struct cipher_testvec cast6_lrw_enc_tv_template[] = {
7799 { /* Generated from TF test vectors */
7800 .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c"
7801 "\x23\x84\xcb\x1c\x77\xd6\x19\x5d"
7802 "\xfe\xf1\xa9\xf3\x7b\xbc\x8d\x21"
7803 "\xa7\x9c\x21\xf8\xcb\x90\x02\x89"
7804 "\xa8\x45\x34\x8e\xc8\xc5\xb5\xf1"
7805 "\x26\xf5\x0e\x76\xfe\xfd\x1b\x1e",
7806 .klen = 48,
7807 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
7808 "\x00\x00\x00\x00\x00\x00\x00\x01",
7809 .input = "\x05\x11\xb7\x18\xab\xc6\x2d\xac"
7810 "\x70\x5d\xf6\x22\x94\xcd\xe5\x6c"
7811 "\x17\x6b\xf6\x1c\xf0\xf3\x6e\xf8"
7812 "\x50\x38\x1f\x71\x49\xb6\x57\xd6"
7813 "\x8f\xcb\x8d\x6b\xe3\xa6\x29\x90"
7814 "\xfe\x2a\x62\x82\xae\x6d\x8b\xf6"
7815 "\xad\x1e\x9e\x20\x5f\x38\xbe\x04"
7816 "\xda\x10\x8e\xed\xa2\xa4\x87\xab"
7817 "\xda\x6b\xb4\x0c\x75\xba\xd3\x7c"
7818 "\xc9\xac\x42\x31\x95\x7c\xc9\x04"
7819 "\xeb\xd5\x6e\x32\x69\x8a\xdb\xa6"
7820 "\x15\xd7\x3f\x4f\x2f\x66\x69\x03"
7821 "\x9c\x1f\x54\x0f\xde\x1f\xf3\x65"
7822 "\x4c\x96\x12\xed\x7c\x92\x03\x01"
7823 "\x6f\xbc\x35\x93\xac\xf1\x27\xf1"
7824 "\xb4\x96\x82\x5a\x5f\xb0\xa0\x50"
7825 "\x89\xa4\x8e\x66\x44\x85\xcc\xfd"
7826 "\x33\x14\x70\xe3\x96\xb2\xc3\xd3"
7827 "\xbb\x54\x5a\x1a\xf9\x74\xa2\xc5"
7828 "\x2d\x64\x75\xdd\xb4\x54\xe6\x74"
7829 "\x8c\xd3\x9d\x9e\x86\xab\x51\x53"
7830 "\xb7\x93\x3e\x6f\xd0\x4e\x2c\x40"
7831 "\xf6\xa8\x2e\x3e\x9d\xf4\x66\xa5"
7832 "\x76\x12\x73\x44\x1a\x56\xd7\x72"
7833 "\x88\xcd\x21\x8c\x4c\x0f\xfe\xda"
7834 "\x95\xe0\x3a\xa6\xa5\x84\x46\xcd"
7835 "\xd5\x3e\x9d\x3a\xe2\x67\xe6\x60"
7836 "\x1a\xe2\x70\x85\x58\xc2\x1b\x09"
7837 "\xe1\xd7\x2c\xca\xad\xa8\x8f\xf9"
7838 "\xac\xb3\x0e\xdb\xca\x2e\xe2\xb8"
7839 "\x51\x71\xd9\x3c\x6c\xf1\x56\xf8"
7840 "\xea\x9c\xf1\xfb\x0c\xe6\xb7\x10"
7841 "\x1c\xf8\xa9\x7c\xe8\x53\x35\xc1"
7842 "\x90\x3e\x76\x4a\x74\xa4\x21\x2c"
7843 "\xf6\x2c\x4e\x0f\x94\x3a\x88\x2e"
7844 "\x41\x09\x6a\x33\x7d\xf6\xdd\x3f"
7845 "\x8d\x23\x31\x74\x84\xeb\x88\x6e"
7846 "\xcc\xb9\xbc\x22\x83\x19\x07\x22"
7847 "\xa5\x2d\xdf\xa5\xf3\x80\x85\x78"
7848 "\x84\x39\x6a\x6d\x6a\x99\x4f\xa5"
7849 "\x15\xfe\x46\xb0\xe4\x6c\xa5\x41"
7850 "\x3c\xce\x8f\x42\x60\x71\xa7\x75"
7851 "\x08\x40\x65\x8a\x82\xbf\xf5\x43"
7852 "\x71\x96\xa9\x4d\x44\x8a\x20\xbe"
7853 "\xfa\x4d\xbb\xc0\x7d\x31\x96\x65"
7854 "\xe7\x75\xe5\x3e\xfd\x92\x3b\xc9"
7855 "\x55\xbb\x16\x7e\xf7\xc2\x8c\xa4"
7856 "\x40\x1d\xe5\xef\x0e\xdf\xe4\x9a"
7857 "\x62\x73\x65\xfd\x46\x63\x25\x3d"
7858 "\x2b\xaf\xe5\x64\xfe\xa5\x5c\xcf"
7859 "\x24\xf3\xb4\xac\x64\xba\xdf\x4b"
7860 "\xc6\x96\x7d\x81\x2d\x8d\x97\xf7"
7861 "\xc5\x68\x77\x84\x32\x2b\xcc\x85"
7862 "\x74\x96\xf0\x12\x77\x61\xb9\xeb"
7863 "\x71\xaa\x82\xcb\x1c\xdb\x89\xc8"
7864 "\xc6\xb5\xe3\x5c\x7d\x39\x07\x24"
7865 "\xda\x39\x87\x45\xc0\x2b\xbb\x01"
7866 "\xac\xbc\x2a\x5c\x7f\xfc\xe8\xce"
7867 "\x6d\x9c\x6f\xed\xd3\xc1\xa1\xd6"
7868 "\xc5\x55\xa9\x66\x2f\xe1\xc8\x32"
7869 "\xa6\x5d\xa4\x3a\x98\x73\xe8\x45"
7870 "\xa4\xc7\xa8\xb4\xf6\x13\x03\xf6"
7871 "\xe9\x2e\xc4\x29\x0f\x84\xdb\xc4"
7872 "\x21\xc4\xc2\x75\x67\x89\x37\x0a",
7873 .ilen = 512,
7874 .result = "\x55\x25\x09\x8B\xB5\xD5\xF8\xBF"
7875 "\x37\x4A\xFE\x3C\x47\xD8\xE6\xEB"
7876 "\xCA\xA4\x9B\xB0\xAB\x6D\x64\xCA"
7877 "\x58\xB6\x73\xF0\xD7\x52\x34\xEF"
7878 "\xFB\x3E\x96\x81\xB7\x71\x34\xA4"
7879 "\x55\x20\xBE\x39\x5A\x2B\xF9\xD1"
7880 "\x65\x0B\xDA\xD3\x7E\xB3\xA6\xF7"
7881 "\x2E\x0B\x5A\x52\xDB\x39\x8C\x9B"
7882 "\x61\x17\x5F\xAF\xB6\x5A\xC8\x08"
7883 "\xA7\xB7\x2A\x11\x7C\x97\x38\x9D"
7884 "\x59\x0E\x66\x59\x5E\xD8\x8B\xCE"
7885 "\x70\xE0\xC3\x42\xB0\x8C\x0F\xBA"
7886 "\xB2\x0D\x81\xB6\xBE\x61\x1C\x2D"
7887 "\x7E\xEA\x91\x25\xAC\xEC\xF8\x28"
7888 "\x80\x1D\xF0\x30\xBA\x62\x77\x7D"
7889 "\xDB\x15\x69\xDF\xFA\x2A\x81\x64"
7890 "\x95\x5B\xA4\x7F\x3E\x4F\xE3\x30"
7891 "\xB0\x5C\xC2\x05\xF8\xF0\x29\xE7"
7892 "\x0A\xA0\x66\xB2\x5D\x0F\x39\x2B"
7893 "\xB4\xB3\x00\xA9\xD0\xAB\x63\x61"
7894 "\x5E\xDB\xFC\x11\x74\x25\x96\x65"
7895 "\xE8\xE2\x34\x57\x77\x15\x5E\x70"
7896 "\xFF\x10\x90\xC3\x64\xF0\x11\x0A"
7897 "\x63\x3A\xD3\x55\x92\x15\x4B\x0C"
7898 "\xC7\x08\x89\x17\x3B\x99\xAD\x63"
7899 "\xE7\x06\xDF\x52\xBC\x15\x64\x45"
7900 "\x9D\x7A\xFB\x69\xBC\x2D\x6E\xA9"
7901 "\x35\xD9\xD8\xF5\x0C\xC4\xA2\x23"
7902 "\x9C\x18\x8B\xA8\x8C\xFE\xF8\x0E"
7903 "\xBD\xAB\x60\x1A\x51\x17\x54\x27"
7904 "\xB6\xE8\xBE\x0F\xA9\xA5\x82\x19"
7905 "\x2F\x6F\x20\xA7\x47\xED\x74\x6C"
7906 "\x4E\xC1\xF8\x8C\x14\xF3\xBB\x1F"
7907 "\xED\x4D\x8F\x7C\x37\xEF\x19\xA1"
7908 "\x07\x16\xDE\x76\xCC\x5E\x94\x02"
7909 "\xFB\xBF\xE4\x81\x50\xCE\xFC\x0F"
7910 "\x9E\xCF\x3D\xF6\x67\x00\xBF\xA7"
7911 "\x6E\x21\x58\x36\x06\xDE\xB3\xD4"
7912 "\xA2\xFA\xD8\x4E\xE0\xB9\x7F\x23"
7913 "\x51\x21\x2B\x32\x68\xAA\xF8\xA8"
7914 "\x93\x08\xB5\x6D\xE6\x43\x2C\xB7"
7915 "\x31\xB2\x0F\xD0\xA2\x51\xC0\x25"
7916 "\x30\xC7\x10\x3F\x97\x27\x01\x8E"
7917 "\xFA\xD8\x4F\x78\xD8\x2E\x1D\xEB"
7918 "\xA1\x37\x52\x0F\x7B\x5E\x87\xA8"
7919 "\x22\xE2\xE6\x92\xA7\x5F\x11\x32"
7920 "\xCC\x93\x34\xFC\xD1\x7E\xAE\x54"
7921 "\xBC\x6A\x1B\x91\xD1\x2E\x21\xEC"
7922 "\x5D\xF1\xC4\xF1\x55\x20\xBF\xE5"
7923 "\x96\x3D\x69\x91\x20\x4E\xF2\x61"
7924 "\xDA\x77\xFE\xEE\xC3\x74\x57\x2A"
7925 "\x78\x39\xB0\xE0\xCF\x12\x56\xD6"
7926 "\x05\xDC\xF9\x19\x66\x44\x1D\xF9"
7927 "\x82\x37\xD4\xC2\x60\xB6\x31\xDF"
7928 "\x0C\xAF\xBC\x8B\x55\x9A\xC8\x2D"
7929 "\xAB\xA7\x88\x7B\x41\xE8\x29\xC9"
7930 "\x9B\x8D\xA7\x00\x86\x25\xB6\x14"
7931 "\xF5\x13\x73\xD7\x4B\x6B\x83\xF3"
7932 "\xAF\x96\x00\xE4\xB7\x3C\x65\xA6"
7933 "\x15\xB7\x94\x7D\x4E\x70\x4C\x75"
7934 "\xF3\xB4\x02\xA9\x17\x1C\x7A\x0A"
7935 "\xC0\xD5\x33\x11\x56\xDE\xDC\xF5"
7936 "\x8D\xD9\xCD\x3B\x22\x67\x18\xC7"
7937 "\xC4\xF5\x99\x61\xBC\xBB\x5B\x46",
7938 .rlen = 512,
7939 },
7940};
7941
7942static struct cipher_testvec cast6_lrw_dec_tv_template[] = {
7943 { /* Generated from TF test vectors */
7944 .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c"
7945 "\x23\x84\xcb\x1c\x77\xd6\x19\x5d"
7946 "\xfe\xf1\xa9\xf3\x7b\xbc\x8d\x21"
7947 "\xa7\x9c\x21\xf8\xcb\x90\x02\x89"
7948 "\xa8\x45\x34\x8e\xc8\xc5\xb5\xf1"
7949 "\x26\xf5\x0e\x76\xfe\xfd\x1b\x1e",
7950 .klen = 48,
7951 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
7952 "\x00\x00\x00\x00\x00\x00\x00\x01",
7953 .input = "\x55\x25\x09\x8B\xB5\xD5\xF8\xBF"
7954 "\x37\x4A\xFE\x3C\x47\xD8\xE6\xEB"
7955 "\xCA\xA4\x9B\xB0\xAB\x6D\x64\xCA"
7956 "\x58\xB6\x73\xF0\xD7\x52\x34\xEF"
7957 "\xFB\x3E\x96\x81\xB7\x71\x34\xA4"
7958 "\x55\x20\xBE\x39\x5A\x2B\xF9\xD1"
7959 "\x65\x0B\xDA\xD3\x7E\xB3\xA6\xF7"
7960 "\x2E\x0B\x5A\x52\xDB\x39\x8C\x9B"
7961 "\x61\x17\x5F\xAF\xB6\x5A\xC8\x08"
7962 "\xA7\xB7\x2A\x11\x7C\x97\x38\x9D"
7963 "\x59\x0E\x66\x59\x5E\xD8\x8B\xCE"
7964 "\x70\xE0\xC3\x42\xB0\x8C\x0F\xBA"
7965 "\xB2\x0D\x81\xB6\xBE\x61\x1C\x2D"
7966 "\x7E\xEA\x91\x25\xAC\xEC\xF8\x28"
7967 "\x80\x1D\xF0\x30\xBA\x62\x77\x7D"
7968 "\xDB\x15\x69\xDF\xFA\x2A\x81\x64"
7969 "\x95\x5B\xA4\x7F\x3E\x4F\xE3\x30"
7970 "\xB0\x5C\xC2\x05\xF8\xF0\x29\xE7"
7971 "\x0A\xA0\x66\xB2\x5D\x0F\x39\x2B"
7972 "\xB4\xB3\x00\xA9\xD0\xAB\x63\x61"
7973 "\x5E\xDB\xFC\x11\x74\x25\x96\x65"
7974 "\xE8\xE2\x34\x57\x77\x15\x5E\x70"
7975 "\xFF\x10\x90\xC3\x64\xF0\x11\x0A"
7976 "\x63\x3A\xD3\x55\x92\x15\x4B\x0C"
7977 "\xC7\x08\x89\x17\x3B\x99\xAD\x63"
7978 "\xE7\x06\xDF\x52\xBC\x15\x64\x45"
7979 "\x9D\x7A\xFB\x69\xBC\x2D\x6E\xA9"
7980 "\x35\xD9\xD8\xF5\x0C\xC4\xA2\x23"
7981 "\x9C\x18\x8B\xA8\x8C\xFE\xF8\x0E"
7982 "\xBD\xAB\x60\x1A\x51\x17\x54\x27"
7983 "\xB6\xE8\xBE\x0F\xA9\xA5\x82\x19"
7984 "\x2F\x6F\x20\xA7\x47\xED\x74\x6C"
7985 "\x4E\xC1\xF8\x8C\x14\xF3\xBB\x1F"
7986 "\xED\x4D\x8F\x7C\x37\xEF\x19\xA1"
7987 "\x07\x16\xDE\x76\xCC\x5E\x94\x02"
7988 "\xFB\xBF\xE4\x81\x50\xCE\xFC\x0F"
7989 "\x9E\xCF\x3D\xF6\x67\x00\xBF\xA7"
7990 "\x6E\x21\x58\x36\x06\xDE\xB3\xD4"
7991 "\xA2\xFA\xD8\x4E\xE0\xB9\x7F\x23"
7992 "\x51\x21\x2B\x32\x68\xAA\xF8\xA8"
7993 "\x93\x08\xB5\x6D\xE6\x43\x2C\xB7"
7994 "\x31\xB2\x0F\xD0\xA2\x51\xC0\x25"
7995 "\x30\xC7\x10\x3F\x97\x27\x01\x8E"
7996 "\xFA\xD8\x4F\x78\xD8\x2E\x1D\xEB"
7997 "\xA1\x37\x52\x0F\x7B\x5E\x87\xA8"
7998 "\x22\xE2\xE6\x92\xA7\x5F\x11\x32"
7999 "\xCC\x93\x34\xFC\xD1\x7E\xAE\x54"
8000 "\xBC\x6A\x1B\x91\xD1\x2E\x21\xEC"
8001 "\x5D\xF1\xC4\xF1\x55\x20\xBF\xE5"
8002 "\x96\x3D\x69\x91\x20\x4E\xF2\x61"
8003 "\xDA\x77\xFE\xEE\xC3\x74\x57\x2A"
8004 "\x78\x39\xB0\xE0\xCF\x12\x56\xD6"
8005 "\x05\xDC\xF9\x19\x66\x44\x1D\xF9"
8006 "\x82\x37\xD4\xC2\x60\xB6\x31\xDF"
8007 "\x0C\xAF\xBC\x8B\x55\x9A\xC8\x2D"
8008 "\xAB\xA7\x88\x7B\x41\xE8\x29\xC9"
8009 "\x9B\x8D\xA7\x00\x86\x25\xB6\x14"
8010 "\xF5\x13\x73\xD7\x4B\x6B\x83\xF3"
8011 "\xAF\x96\x00\xE4\xB7\x3C\x65\xA6"
8012 "\x15\xB7\x94\x7D\x4E\x70\x4C\x75"
8013 "\xF3\xB4\x02\xA9\x17\x1C\x7A\x0A"
8014 "\xC0\xD5\x33\x11\x56\xDE\xDC\xF5"
8015 "\x8D\xD9\xCD\x3B\x22\x67\x18\xC7"
8016 "\xC4\xF5\x99\x61\xBC\xBB\x5B\x46",
8017 .ilen = 512,
8018 .result = "\x05\x11\xb7\x18\xab\xc6\x2d\xac"
8019 "\x70\x5d\xf6\x22\x94\xcd\xe5\x6c"
8020 "\x17\x6b\xf6\x1c\xf0\xf3\x6e\xf8"
8021 "\x50\x38\x1f\x71\x49\xb6\x57\xd6"
8022 "\x8f\xcb\x8d\x6b\xe3\xa6\x29\x90"
8023 "\xfe\x2a\x62\x82\xae\x6d\x8b\xf6"
8024 "\xad\x1e\x9e\x20\x5f\x38\xbe\x04"
8025 "\xda\x10\x8e\xed\xa2\xa4\x87\xab"
8026 "\xda\x6b\xb4\x0c\x75\xba\xd3\x7c"
8027 "\xc9\xac\x42\x31\x95\x7c\xc9\x04"
8028 "\xeb\xd5\x6e\x32\x69\x8a\xdb\xa6"
8029 "\x15\xd7\x3f\x4f\x2f\x66\x69\x03"
8030 "\x9c\x1f\x54\x0f\xde\x1f\xf3\x65"
8031 "\x4c\x96\x12\xed\x7c\x92\x03\x01"
8032 "\x6f\xbc\x35\x93\xac\xf1\x27\xf1"
8033 "\xb4\x96\x82\x5a\x5f\xb0\xa0\x50"
8034 "\x89\xa4\x8e\x66\x44\x85\xcc\xfd"
8035 "\x33\x14\x70\xe3\x96\xb2\xc3\xd3"
8036 "\xbb\x54\x5a\x1a\xf9\x74\xa2\xc5"
8037 "\x2d\x64\x75\xdd\xb4\x54\xe6\x74"
8038 "\x8c\xd3\x9d\x9e\x86\xab\x51\x53"
8039 "\xb7\x93\x3e\x6f\xd0\x4e\x2c\x40"
8040 "\xf6\xa8\x2e\x3e\x9d\xf4\x66\xa5"
8041 "\x76\x12\x73\x44\x1a\x56\xd7\x72"
8042 "\x88\xcd\x21\x8c\x4c\x0f\xfe\xda"
8043 "\x95\xe0\x3a\xa6\xa5\x84\x46\xcd"
8044 "\xd5\x3e\x9d\x3a\xe2\x67\xe6\x60"
8045 "\x1a\xe2\x70\x85\x58\xc2\x1b\x09"
8046 "\xe1\xd7\x2c\xca\xad\xa8\x8f\xf9"
8047 "\xac\xb3\x0e\xdb\xca\x2e\xe2\xb8"
8048 "\x51\x71\xd9\x3c\x6c\xf1\x56\xf8"
8049 "\xea\x9c\xf1\xfb\x0c\xe6\xb7\x10"
8050 "\x1c\xf8\xa9\x7c\xe8\x53\x35\xc1"
8051 "\x90\x3e\x76\x4a\x74\xa4\x21\x2c"
8052 "\xf6\x2c\x4e\x0f\x94\x3a\x88\x2e"
8053 "\x41\x09\x6a\x33\x7d\xf6\xdd\x3f"
8054 "\x8d\x23\x31\x74\x84\xeb\x88\x6e"
8055 "\xcc\xb9\xbc\x22\x83\x19\x07\x22"
8056 "\xa5\x2d\xdf\xa5\xf3\x80\x85\x78"
8057 "\x84\x39\x6a\x6d\x6a\x99\x4f\xa5"
8058 "\x15\xfe\x46\xb0\xe4\x6c\xa5\x41"
8059 "\x3c\xce\x8f\x42\x60\x71\xa7\x75"
8060 "\x08\x40\x65\x8a\x82\xbf\xf5\x43"
8061 "\x71\x96\xa9\x4d\x44\x8a\x20\xbe"
8062 "\xfa\x4d\xbb\xc0\x7d\x31\x96\x65"
8063 "\xe7\x75\xe5\x3e\xfd\x92\x3b\xc9"
8064 "\x55\xbb\x16\x7e\xf7\xc2\x8c\xa4"
8065 "\x40\x1d\xe5\xef\x0e\xdf\xe4\x9a"
8066 "\x62\x73\x65\xfd\x46\x63\x25\x3d"
8067 "\x2b\xaf\xe5\x64\xfe\xa5\x5c\xcf"
8068 "\x24\xf3\xb4\xac\x64\xba\xdf\x4b"
8069 "\xc6\x96\x7d\x81\x2d\x8d\x97\xf7"
8070 "\xc5\x68\x77\x84\x32\x2b\xcc\x85"
8071 "\x74\x96\xf0\x12\x77\x61\xb9\xeb"
8072 "\x71\xaa\x82\xcb\x1c\xdb\x89\xc8"
8073 "\xc6\xb5\xe3\x5c\x7d\x39\x07\x24"
8074 "\xda\x39\x87\x45\xc0\x2b\xbb\x01"
8075 "\xac\xbc\x2a\x5c\x7f\xfc\xe8\xce"
8076 "\x6d\x9c\x6f\xed\xd3\xc1\xa1\xd6"
8077 "\xc5\x55\xa9\x66\x2f\xe1\xc8\x32"
8078 "\xa6\x5d\xa4\x3a\x98\x73\xe8\x45"
8079 "\xa4\xc7\xa8\xb4\xf6\x13\x03\xf6"
8080 "\xe9\x2e\xc4\x29\x0f\x84\xdb\xc4"
8081 "\x21\xc4\xc2\x75\x67\x89\x37\x0a",
8082 .rlen = 512,
8083 },
8084};
8085
8086static struct cipher_testvec cast6_xts_enc_tv_template[] = {
8087 { /* Generated from TF test vectors */
8088 .key = "\x27\x18\x28\x18\x28\x45\x90\x45"
8089 "\x23\x53\x60\x28\x74\x71\x35\x26"
8090 "\x62\x49\x77\x57\x24\x70\x93\x69"
8091 "\x99\x59\x57\x49\x66\x96\x76\x27"
8092 "\x31\x41\x59\x26\x53\x58\x97\x93"
8093 "\x23\x84\x62\x64\x33\x83\x27\x95"
8094 "\x02\x88\x41\x97\x16\x93\x99\x37"
8095 "\x51\x05\x82\x09\x74\x94\x45\x92",
8096 .klen = 64,
8097 .iv = "\xff\x00\x00\x00\x00\x00\x00\x00"
8098 "\x00\x00\x00\x00\x00\x00\x00\x00",
8099 .input = "\x00\x01\x02\x03\x04\x05\x06\x07"
8100 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
8101 "\x10\x11\x12\x13\x14\x15\x16\x17"
8102 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
8103 "\x20\x21\x22\x23\x24\x25\x26\x27"
8104 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
8105 "\x30\x31\x32\x33\x34\x35\x36\x37"
8106 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
8107 "\x40\x41\x42\x43\x44\x45\x46\x47"
8108 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
8109 "\x50\x51\x52\x53\x54\x55\x56\x57"
8110 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
8111 "\x60\x61\x62\x63\x64\x65\x66\x67"
8112 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
8113 "\x70\x71\x72\x73\x74\x75\x76\x77"
8114 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
8115 "\x80\x81\x82\x83\x84\x85\x86\x87"
8116 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
8117 "\x90\x91\x92\x93\x94\x95\x96\x97"
8118 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
8119 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
8120 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
8121 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
8122 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
8123 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
8124 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
8125 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
8126 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
8127 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
8128 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
8129 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
8130 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff"
8131 "\x00\x01\x02\x03\x04\x05\x06\x07"
8132 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
8133 "\x10\x11\x12\x13\x14\x15\x16\x17"
8134 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
8135 "\x20\x21\x22\x23\x24\x25\x26\x27"
8136 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
8137 "\x30\x31\x32\x33\x34\x35\x36\x37"
8138 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
8139 "\x40\x41\x42\x43\x44\x45\x46\x47"
8140 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
8141 "\x50\x51\x52\x53\x54\x55\x56\x57"
8142 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
8143 "\x60\x61\x62\x63\x64\x65\x66\x67"
8144 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
8145 "\x70\x71\x72\x73\x74\x75\x76\x77"
8146 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
8147 "\x80\x81\x82\x83\x84\x85\x86\x87"
8148 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
8149 "\x90\x91\x92\x93\x94\x95\x96\x97"
8150 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
8151 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
8152 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
8153 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
8154 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
8155 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
8156 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
8157 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
8158 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
8159 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
8160 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
8161 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
8162 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff",
8163 .ilen = 512,
8164 .result = "\xDE\x6F\x22\xA5\xE8\x39\xE8\x78"
8165 "\x88\x5A\x4F\x8D\x82\x76\x52\x6D"
8166 "\xB2\x41\x16\xF4\x2B\xA6\xEB\xF6"
8167 "\xE2\xC5\x62\x8D\x61\xA1\x01\xED"
8168 "\xD9\x38\x01\xC1\x43\x63\x4E\x88"
8169 "\xC9\x4B\x5A\x88\x80\xB7\x5C\x71"
8170 "\x47\xEE\x11\xD8\xB7\x2D\x5D\x13"
8171 "\x1A\xB1\x68\x5B\x61\xA7\xA9\x81"
8172 "\x8B\x83\xA1\x6A\xAA\x36\xD6\xB6"
8173 "\x60\x54\x09\x32\xFE\x6A\x76\x2E"
8174 "\x28\xFF\xD5\xD6\xDD\x1D\x45\x7D"
8175 "\xF0\x8B\xF3\x32\x4E\x6C\x12\xCB"
8176 "\xB8\x25\x70\xF8\x40\xBC\x90\x1B"
8177 "\x11\xC3\x59\xAF\xF0\x2F\x92\xDD"
8178 "\xD3\x3B\xCF\x60\xA1\x78\x94\x57"
8179 "\xAF\x76\xC1\x67\xA6\x3C\xCD\x98"
8180 "\xB1\xF7\x27\xB9\xA3\xBD\x10\xEA"
8181 "\xCD\x8B\xC2\xF2\x14\xF2\xB2\x67"
8182 "\x05\xDD\x1D\x58\x6E\x2F\x95\x08"
8183 "\x3A\xF8\x78\x76\x82\x56\xA7\xEC"
8184 "\x51\x4B\x85\x77\xC2\x4C\x4A\x34"
8185 "\x71\x38\x17\x91\x44\xE8\xFC\x65"
8186 "\x99\x0D\x52\x91\xEE\xF8\xEF\x27"
8187 "\x2A\x9E\x6E\x78\xC4\x26\x87\xF4"
8188 "\x8A\xF0\x2D\x04\xE8\x14\x92\x5D"
8189 "\x59\x22\x9B\x29\x5C\x18\xF0\xC3"
8190 "\x47\xF3\x76\xD8\xE4\xF3\x1B\xD1"
8191 "\x70\xA3\x0D\xB5\x70\x02\x1D\xA3"
8192 "\x91\x3B\x49\x73\x18\xAB\xD4\xC9"
8193 "\xC3\x1E\xEF\x1F\xFE\xD5\x59\x8A"
8194 "\xD7\xF6\xC9\x71\x67\x79\xD7\x0E"
8195 "\xBE\x1F\x8E\xEC\x55\x7E\x4F\x24"
8196 "\xE6\x87\xEA\xFE\x96\x25\x67\x8E"
8197 "\x93\x03\xFA\xFF\xCE\xAF\xB2\x3C"
8198 "\x6F\xEB\x57\xFB\xD3\x28\x87\xA9"
8199 "\xCE\xC2\xF5\x9C\xC6\x67\xB5\x97"
8200 "\x49\xF7\x04\xCB\xEF\x84\x98\x33"
8201 "\xAF\x38\xD3\x04\x1C\x24\x71\x38"
8202 "\xC7\x71\xDD\x43\x0D\x12\x4A\x18"
8203 "\xBA\xC4\xAF\xBA\xB2\x5B\xEB\x95"
8204 "\x02\x43\x5D\xCE\x19\xCC\xCD\x66"
8205 "\x91\x0B\x8C\x7F\x51\xC4\xBF\x3C"
8206 "\x8B\xF1\xCC\xAA\x29\xD7\x87\xCB"
8207 "\x3E\xC5\xF3\xC9\x75\xE8\xA3\x5B"
8208 "\x30\x45\xA9\xB7\xAF\x80\x64\x6F"
8209 "\x75\x4A\xA7\xC0\x6D\x19\x6B\xDE"
8210 "\x17\xDE\x6D\xEA\x87\x9F\x95\xAE"
8211 "\xF5\x3C\xEE\x54\xB8\x27\x84\xF8"
8212 "\x97\xA3\xE1\x6F\x38\x24\x34\x88"
8213 "\xCE\xBD\x32\x52\xE0\x00\x6C\x94"
8214 "\xC9\xD7\x5D\x37\x81\x33\x2E\x7F"
8215 "\x4F\x7E\x2E\x0D\x94\xBD\xEA\x59"
8216 "\x34\x39\xA8\x35\x12\xB7\xBC\xAC"
8217 "\xEA\x52\x9C\x78\x02\x6D\x92\x36"
8218 "\xFB\x59\x2B\xA4\xEA\x7B\x1B\x83"
8219 "\xE1\x4D\x5E\x2A\x7E\x92\xB1\x64"
8220 "\xDE\xE0\x27\x4B\x0A\x6F\x4C\xE3"
8221 "\xB0\xEB\x31\xE4\x69\x95\xAB\x35"
8222 "\x8B\x2C\xF5\x6B\x7F\xF1\xA2\x82"
8223 "\xF8\xD9\x47\x82\xA9\x82\x03\x91"
8224 "\x69\x1F\xBE\x4C\xE7\xC7\x34\x2F"
8225 "\x45\x72\x80\x17\x81\xBD\x9D\x62"
8226 "\xA1\xAC\xE8\xCF\xC6\x74\xCF\xDC"
8227 "\x22\x60\x4E\xE8\xA4\x5D\x85\xB9",
8228 .rlen = 512,
8229 },
8230};
8231
8232static struct cipher_testvec cast6_xts_dec_tv_template[] = {
8233 { /* Generated from TF test vectors */
8234 .key = "\x27\x18\x28\x18\x28\x45\x90\x45"
8235 "\x23\x53\x60\x28\x74\x71\x35\x26"
8236 "\x62\x49\x77\x57\x24\x70\x93\x69"
8237 "\x99\x59\x57\x49\x66\x96\x76\x27"
8238 "\x31\x41\x59\x26\x53\x58\x97\x93"
8239 "\x23\x84\x62\x64\x33\x83\x27\x95"
8240 "\x02\x88\x41\x97\x16\x93\x99\x37"
8241 "\x51\x05\x82\x09\x74\x94\x45\x92",
8242 .klen = 64,
8243 .iv = "\xff\x00\x00\x00\x00\x00\x00\x00"
8244 "\x00\x00\x00\x00\x00\x00\x00\x00",
8245 .input = "\xDE\x6F\x22\xA5\xE8\x39\xE8\x78"
8246 "\x88\x5A\x4F\x8D\x82\x76\x52\x6D"
8247 "\xB2\x41\x16\xF4\x2B\xA6\xEB\xF6"
8248 "\xE2\xC5\x62\x8D\x61\xA1\x01\xED"
8249 "\xD9\x38\x01\xC1\x43\x63\x4E\x88"
8250 "\xC9\x4B\x5A\x88\x80\xB7\x5C\x71"
8251 "\x47\xEE\x11\xD8\xB7\x2D\x5D\x13"
8252 "\x1A\xB1\x68\x5B\x61\xA7\xA9\x81"
8253 "\x8B\x83\xA1\x6A\xAA\x36\xD6\xB6"
8254 "\x60\x54\x09\x32\xFE\x6A\x76\x2E"
8255 "\x28\xFF\xD5\xD6\xDD\x1D\x45\x7D"
8256 "\xF0\x8B\xF3\x32\x4E\x6C\x12\xCB"
8257 "\xB8\x25\x70\xF8\x40\xBC\x90\x1B"
8258 "\x11\xC3\x59\xAF\xF0\x2F\x92\xDD"
8259 "\xD3\x3B\xCF\x60\xA1\x78\x94\x57"
8260 "\xAF\x76\xC1\x67\xA6\x3C\xCD\x98"
8261 "\xB1\xF7\x27\xB9\xA3\xBD\x10\xEA"
8262 "\xCD\x8B\xC2\xF2\x14\xF2\xB2\x67"
8263 "\x05\xDD\x1D\x58\x6E\x2F\x95\x08"
8264 "\x3A\xF8\x78\x76\x82\x56\xA7\xEC"
8265 "\x51\x4B\x85\x77\xC2\x4C\x4A\x34"
8266 "\x71\x38\x17\x91\x44\xE8\xFC\x65"
8267 "\x99\x0D\x52\x91\xEE\xF8\xEF\x27"
8268 "\x2A\x9E\x6E\x78\xC4\x26\x87\xF4"
8269 "\x8A\xF0\x2D\x04\xE8\x14\x92\x5D"
8270 "\x59\x22\x9B\x29\x5C\x18\xF0\xC3"
8271 "\x47\xF3\x76\xD8\xE4\xF3\x1B\xD1"
8272 "\x70\xA3\x0D\xB5\x70\x02\x1D\xA3"
8273 "\x91\x3B\x49\x73\x18\xAB\xD4\xC9"
8274 "\xC3\x1E\xEF\x1F\xFE\xD5\x59\x8A"
8275 "\xD7\xF6\xC9\x71\x67\x79\xD7\x0E"
8276 "\xBE\x1F\x8E\xEC\x55\x7E\x4F\x24"
8277 "\xE6\x87\xEA\xFE\x96\x25\x67\x8E"
8278 "\x93\x03\xFA\xFF\xCE\xAF\xB2\x3C"
8279 "\x6F\xEB\x57\xFB\xD3\x28\x87\xA9"
8280 "\xCE\xC2\xF5\x9C\xC6\x67\xB5\x97"
8281 "\x49\xF7\x04\xCB\xEF\x84\x98\x33"
8282 "\xAF\x38\xD3\x04\x1C\x24\x71\x38"
8283 "\xC7\x71\xDD\x43\x0D\x12\x4A\x18"
8284 "\xBA\xC4\xAF\xBA\xB2\x5B\xEB\x95"
8285 "\x02\x43\x5D\xCE\x19\xCC\xCD\x66"
8286 "\x91\x0B\x8C\x7F\x51\xC4\xBF\x3C"
8287 "\x8B\xF1\xCC\xAA\x29\xD7\x87\xCB"
8288 "\x3E\xC5\xF3\xC9\x75\xE8\xA3\x5B"
8289 "\x30\x45\xA9\xB7\xAF\x80\x64\x6F"
8290 "\x75\x4A\xA7\xC0\x6D\x19\x6B\xDE"
8291 "\x17\xDE\x6D\xEA\x87\x9F\x95\xAE"
8292 "\xF5\x3C\xEE\x54\xB8\x27\x84\xF8"
8293 "\x97\xA3\xE1\x6F\x38\x24\x34\x88"
8294 "\xCE\xBD\x32\x52\xE0\x00\x6C\x94"
8295 "\xC9\xD7\x5D\x37\x81\x33\x2E\x7F"
8296 "\x4F\x7E\x2E\x0D\x94\xBD\xEA\x59"
8297 "\x34\x39\xA8\x35\x12\xB7\xBC\xAC"
8298 "\xEA\x52\x9C\x78\x02\x6D\x92\x36"
8299 "\xFB\x59\x2B\xA4\xEA\x7B\x1B\x83"
8300 "\xE1\x4D\x5E\x2A\x7E\x92\xB1\x64"
8301 "\xDE\xE0\x27\x4B\x0A\x6F\x4C\xE3"
8302 "\xB0\xEB\x31\xE4\x69\x95\xAB\x35"
8303 "\x8B\x2C\xF5\x6B\x7F\xF1\xA2\x82"
8304 "\xF8\xD9\x47\x82\xA9\x82\x03\x91"
8305 "\x69\x1F\xBE\x4C\xE7\xC7\x34\x2F"
8306 "\x45\x72\x80\x17\x81\xBD\x9D\x62"
8307 "\xA1\xAC\xE8\xCF\xC6\x74\xCF\xDC"
8308 "\x22\x60\x4E\xE8\xA4\x5D\x85\xB9",
8309 .ilen = 512,
8310 .result = "\x00\x01\x02\x03\x04\x05\x06\x07"
8311 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
8312 "\x10\x11\x12\x13\x14\x15\x16\x17"
8313 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
8314 "\x20\x21\x22\x23\x24\x25\x26\x27"
8315 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
8316 "\x30\x31\x32\x33\x34\x35\x36\x37"
8317 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
8318 "\x40\x41\x42\x43\x44\x45\x46\x47"
8319 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
8320 "\x50\x51\x52\x53\x54\x55\x56\x57"
8321 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
8322 "\x60\x61\x62\x63\x64\x65\x66\x67"
8323 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
8324 "\x70\x71\x72\x73\x74\x75\x76\x77"
8325 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
8326 "\x80\x81\x82\x83\x84\x85\x86\x87"
8327 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
8328 "\x90\x91\x92\x93\x94\x95\x96\x97"
8329 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
8330 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
8331 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
8332 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
8333 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
8334 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
8335 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
8336 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
8337 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
8338 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
8339 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
8340 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
8341 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff"
8342 "\x00\x01\x02\x03\x04\x05\x06\x07"
8343 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
8344 "\x10\x11\x12\x13\x14\x15\x16\x17"
8345 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
8346 "\x20\x21\x22\x23\x24\x25\x26\x27"
8347 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
8348 "\x30\x31\x32\x33\x34\x35\x36\x37"
8349 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
8350 "\x40\x41\x42\x43\x44\x45\x46\x47"
8351 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
8352 "\x50\x51\x52\x53\x54\x55\x56\x57"
8353 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
8354 "\x60\x61\x62\x63\x64\x65\x66\x67"
8355 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
8356 "\x70\x71\x72\x73\x74\x75\x76\x77"
8357 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
8358 "\x80\x81\x82\x83\x84\x85\x86\x87"
8359 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
8360 "\x90\x91\x92\x93\x94\x95\x96\x97"
8361 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
8362 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
8363 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
8364 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
8365 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
8366 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
8367 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
8368 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
8369 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
8370 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
8371 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
8372 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
8373 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff",
8374 .rlen = 512,
6967 }, 8375 },
6968}; 8376};
6969 8377