From: Tejasree Kondoj <ktejas...@marvell.com>

Add AES-GCM-128 test vector generated with kTLS.

Signed-off-by: Tejasree Kondoj <ktejas...@marvell.com>
Signed-off-by: Vidya Sagar Velumuri <vvelum...@marvell.com>
---
 app/test/test_cryptodev.c                     |  8 +--
 app/test/test_cryptodev_security_tls_record.h |  2 +-
 ...yptodev_security_tls_record_test_vectors.h | 67 ++++++++++++++++++-
 3 files changed, 71 insertions(+), 6 deletions(-)

diff --git a/app/test/test_cryptodev.c b/app/test/test_cryptodev.c
index cd83370790..e7e4b93c20 100644
--- a/app/test/test_cryptodev.c
+++ b/app/test/test_cryptodev.c
@@ -16814,13 +16814,13 @@ static struct unit_test_suite 
tls12_record_proto_testsuite  = {
        .setup = tls_record_proto_testsuite_setup,
        .unit_test_cases = {
                TEST_CASE_NAMED_WITH_DATA(
-                       "Known vector TBD",
+                       "Write record known vector AES-GCM-128 (vector 1)",
                        ut_setup_security, ut_teardown,
-                       test_tls_record_proto_known_vec, &tls_test_data1),
+                       test_tls_record_proto_known_vec, 
&tls_test_data_aes_128_gcm_v1),
                TEST_CASE_NAMED_WITH_DATA(
-                       "Known vector TBD",
+                       "Read record known vector AES-GCM-128 (vector 1)",
                        ut_setup_security, ut_teardown,
-                       test_tls_record_proto_known_vec_read, &tls_test_data1),
+                       test_tls_record_proto_known_vec_read, 
&tls_test_data_aes_128_gcm_v1),
                TEST_CASES_END() /**< NULL terminate unit test array */
        }
 };
diff --git a/app/test/test_cryptodev_security_tls_record.h 
b/app/test/test_cryptodev_security_tls_record.h
index 9a0cf70218..b9cadd5cd4 100644
--- a/app/test/test_cryptodev_security_tls_record.h
+++ b/app/test/test_cryptodev_security_tls_record.h
@@ -55,7 +55,7 @@ struct tls_record_test_flags {
        bool display_alg;
 };
 
-extern struct tls_record_test_data tls_test_data1;
+extern struct tls_record_test_data tls_test_data_aes_128_gcm_v1;
 
 int test_tls_record_status_check(struct rte_crypto_op *op);
 
diff --git a/app/test/test_cryptodev_security_tls_record_test_vectors.h 
b/app/test/test_cryptodev_security_tls_record_test_vectors.h
index 5aa0d27fda..52e97e8557 100644
--- a/app/test/test_cryptodev_security_tls_record_test_vectors.h
+++ b/app/test/test_cryptodev_security_tls_record_test_vectors.h
@@ -11,6 +11,71 @@
 #include "test_cryptodev.h"
 #include "test_cryptodev_security_tls_record.h"
 
-struct tls_record_test_data tls_test_data1;
+/* TLS 1.2 AES-GCM 128 vector generated with kTLS. */
+struct tls_record_test_data tls_test_data_aes_128_gcm_v1 = {
+       .key = {
+               .data = {
+                       0x77, 0xc4, 0x9b, 0x0c, 0x2b, 0xe2, 0xd2, 0x4e,
+                       0xf5, 0x36, 0xb4, 0xea, 0x16, 0xb0, 0xed, 0x1f
+               },
+       },
+       .input_text = {
+               .data = {
+                       0x61, 0x62, 0x63, 0x64, 0x31, 0x32, 0x33, 0x34,
+                       0x61, 0x62, 0x63, 0x64, 0x31, 0x32, 0x33, 0x34,
+                       0xa
+               },
+               .len = 17,
+       },
+       .output_text = {
+               .data = {
+                       0x17, 0x03, 0x03, 0x00, 0x29,
+                       0x3a, 0xcd, 0x41, 0x5d, 0x42, 0xac, 0xce, 0x36,
+                       0xad, 0xd1, 0x83, 0xa0, 0x16, 0x84, 0xce, 0x84,
+                       0xfc, 0xc2, 0xa7, 0x6b, 0xa1, 0x89, 0x5d, 0xf2,
+                       0xeb,
+                       0x9b, 0x90, 0x01, 0x56, 0xf8, 0x9d, 0xac, 0x0c,
+                       0xa8, 0x95, 0xba, 0xcc, 0x1f, 0xf3, 0x36, 0x2b
+               },
+               .len = 46,
+       },
+       .imp_nonce = {
+               .data = {
+                       0xda, 0xf8, 0x8f, 0x12
+               },
+               .len = 4,
+       },
+
+       .iv = {
+               .data = {
+                       0x3a, 0xcd, 0x41, 0x5d, 0x42, 0xac, 0xce, 0x36
+               },
+       },
+
+       .xform = {
+               .aead = {
+                       .next = NULL,
+                       .type = RTE_CRYPTO_SYM_XFORM_AEAD,
+                       .aead = {
+                               .op = RTE_CRYPTO_AEAD_OP_ENCRYPT,
+                               .algo = RTE_CRYPTO_AEAD_AES_GCM,
+                               .key.length = 16,
+                               .iv.length = 12,
+                               .iv.offset = IV_OFFSET,
+                               .digest_length = 16,
+                               .aad_length = 13,
+                       },
+               },
+       },
+
+       .tls_record_xform = {
+               .ver = RTE_SECURITY_VERSION_TLS_1_2,
+               .type = RTE_SECURITY_TLS_SESS_TYPE_WRITE,
+               .tls_1_2.seq_no = 0x1,
+       },
+
+       .aead = true,
+       .app_type = 0x17,
+};
 
 #endif
-- 
2.25.1

Reply via email to