1474f1202SAnoob Joseph /* SPDX-License-Identifier: BSD-3-Clause 2474f1202SAnoob Joseph * Copyright(c) 2021 Marvell 3474f1202SAnoob Joseph */ 4474f1202SAnoob Joseph 5474f1202SAnoob Joseph #ifndef TEST_CRYPTODEV_SECURITY_IPSEC_TEST_VECTORS_H_ 6474f1202SAnoob Joseph #define TEST_CRYPTODEV_SECURITY_IPSEC_TEST_VECTORS_H_ 7474f1202SAnoob Joseph 8474f1202SAnoob Joseph #include <rte_crypto.h> 9474f1202SAnoob Joseph #include <rte_security.h> 10474f1202SAnoob Joseph 11474f1202SAnoob Joseph #include "test_cryptodev_security_ipsec.h" 12474f1202SAnoob Joseph 13474f1202SAnoob Joseph /* 14474f1202SAnoob Joseph * Known vectors 15474f1202SAnoob Joseph * 16474f1202SAnoob Joseph * AES-GCM vectors are based on : 17474f1202SAnoob Joseph * https://datatracker.ietf.org/doc/html/draft-mcgrew-gcm-test-01 18474f1202SAnoob Joseph * 19474f1202SAnoob Joseph * Vectors are updated to have corrected L4 checksum and sequence number 1. 20474f1202SAnoob Joseph */ 21474f1202SAnoob Joseph 22474f1202SAnoob Joseph struct ipsec_test_data pkt_aes_128_gcm = { 23474f1202SAnoob Joseph .key = { 24474f1202SAnoob Joseph .data = { 25474f1202SAnoob Joseph 0xfe, 0xff, 0xe9, 0x92, 0x86, 0x65, 0x73, 0x1c, 26474f1202SAnoob Joseph 0x6d, 0x6a, 0x8f, 0x94, 0x67, 0x30, 0x83, 0x08 27474f1202SAnoob Joseph }, 28474f1202SAnoob Joseph }, 29474f1202SAnoob Joseph .input_text = { 30474f1202SAnoob Joseph .data = { 31474f1202SAnoob Joseph /* IP */ 32474f1202SAnoob Joseph 0x45, 0x00, 0x00, 0x3e, 0x69, 0x8f, 0x00, 0x00, 33474f1202SAnoob Joseph 0x80, 0x11, 0x4d, 0xcc, 0xc0, 0xa8, 0x01, 0x02, 34474f1202SAnoob Joseph 0xc0, 0xa8, 0x01, 0x01, 35474f1202SAnoob Joseph 36474f1202SAnoob Joseph /* UDP */ 37474f1202SAnoob Joseph 0x0a, 0x98, 0x00, 0x35, 0x00, 0x2a, 0x23, 0x43, 38474f1202SAnoob Joseph 0xb2, 0xd0, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 39474f1202SAnoob Joseph 0x00, 0x00, 0x00, 0x00, 0x03, 0x73, 0x69, 0x70, 40474f1202SAnoob Joseph 0x09, 0x63, 0x79, 0x62, 0x65, 0x72, 0x63, 0x69, 41474f1202SAnoob Joseph 0x74, 0x79, 0x02, 0x64, 0x6b, 0x00, 0x00, 0x01, 42474f1202SAnoob Joseph 0x00, 0x01, 43474f1202SAnoob Joseph }, 44474f1202SAnoob Joseph .len = 62, 45474f1202SAnoob Joseph }, 46474f1202SAnoob Joseph .output_text = { 47474f1202SAnoob Joseph .data = { 48474f1202SAnoob Joseph /* IP - outer header */ 49474f1202SAnoob Joseph 0x45, 0x00, 0x00, 0x74, 0x69, 0x8f, 0x00, 0x00, 50474f1202SAnoob Joseph 0x80, 0x32, 0x4d, 0x75, 0xc0, 0xa8, 0x01, 0x02, 51474f1202SAnoob Joseph 0xc0, 0xa8, 0x01, 0x01, 52474f1202SAnoob Joseph 53474f1202SAnoob Joseph /* ESP */ 54474f1202SAnoob Joseph 0x00, 0x00, 0xa5, 0xf8, 0x00, 0x00, 0x00, 0x01, 55474f1202SAnoob Joseph 56474f1202SAnoob Joseph /* IV */ 57474f1202SAnoob Joseph 0xfa, 0xce, 0xdb, 0xad, 0xde, 0xca, 0xf8, 0x88, 58474f1202SAnoob Joseph 59474f1202SAnoob Joseph /* Data */ 60474f1202SAnoob Joseph 0xde, 0xb2, 0x2c, 0xd9, 0xb0, 0x7c, 0x72, 0xc1, 61474f1202SAnoob Joseph 0x6e, 0x3a, 0x65, 0xbe, 0xeb, 0x8d, 0xf3, 0x04, 62474f1202SAnoob Joseph 0xa5, 0xa5, 0x89, 0x7d, 0x33, 0xae, 0x53, 0x0f, 63474f1202SAnoob Joseph 0x1b, 0xa7, 0x6d, 0x5d, 0x11, 0x4d, 0x2a, 0x5c, 64474f1202SAnoob Joseph 0x3d, 0xe8, 0x18, 0x27, 0xc1, 0x0e, 0x9a, 0x4f, 65474f1202SAnoob Joseph 0x51, 0x33, 0x0d, 0x0e, 0xec, 0x41, 0x66, 0x42, 66474f1202SAnoob Joseph 0xcf, 0xbb, 0x85, 0xa5, 0xb4, 0x7e, 0x48, 0xa4, 67474f1202SAnoob Joseph 0xec, 0x3b, 0x9b, 0xa9, 0x5d, 0x91, 0x8b, 0xd4, 68474f1202SAnoob Joseph 0x29, 0xc7, 0x37, 0x57, 0x9f, 0xf1, 0x9e, 0x58, 69474f1202SAnoob Joseph 0xcf, 0xfc, 0x60, 0x7a, 0x3b, 0xce, 0x89, 0x94, 70474f1202SAnoob Joseph 71474f1202SAnoob Joseph }, 72474f1202SAnoob Joseph .len = 116, 73474f1202SAnoob Joseph }, 74474f1202SAnoob Joseph .salt = { 75474f1202SAnoob Joseph .data = { 76474f1202SAnoob Joseph 0xca, 0xfe, 0xba, 0xbe 77474f1202SAnoob Joseph }, 78474f1202SAnoob Joseph .len = 4, 79474f1202SAnoob Joseph }, 80474f1202SAnoob Joseph 81474f1202SAnoob Joseph .iv = { 82474f1202SAnoob Joseph .data = { 83474f1202SAnoob Joseph 0xfa, 0xce, 0xdb, 0xad, 0xde, 0xca, 0xf8, 0x88 84474f1202SAnoob Joseph }, 85474f1202SAnoob Joseph }, 86474f1202SAnoob Joseph 87474f1202SAnoob Joseph .ipsec_xform = { 88474f1202SAnoob Joseph .spi = 0xa5f8, 89474f1202SAnoob Joseph .options.esn = 0, 90474f1202SAnoob Joseph .options.udp_encap = 0, 91474f1202SAnoob Joseph .options.copy_dscp = 0, 92474f1202SAnoob Joseph .options.copy_flabel = 0, 93474f1202SAnoob Joseph .options.copy_df = 0, 94474f1202SAnoob Joseph .options.dec_ttl = 0, 95474f1202SAnoob Joseph .options.ecn = 0, 96474f1202SAnoob Joseph .options.stats = 0, 97270470eeSTejasree Kondoj .options.tunnel_hdr_verify = 0, 9883243502SArchana Muniganti .options.ip_csum_enable = 0, 9983243502SArchana Muniganti .options.l4_csum_enable = 0, 100474f1202SAnoob Joseph .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 101474f1202SAnoob Joseph .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 102474f1202SAnoob Joseph .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 103474f1202SAnoob Joseph .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 104474f1202SAnoob Joseph .replay_win_sz = 0, 105d02c6bfcSTejasree Kondoj .esn.low = 1, 106474f1202SAnoob Joseph }, 107474f1202SAnoob Joseph 108474f1202SAnoob Joseph .aead = true, 109474f1202SAnoob Joseph 110474f1202SAnoob Joseph .xform = { 111474f1202SAnoob Joseph .aead = { 112474f1202SAnoob Joseph .next = NULL, 113474f1202SAnoob Joseph .type = RTE_CRYPTO_SYM_XFORM_AEAD, 114474f1202SAnoob Joseph .aead = { 115474f1202SAnoob Joseph .op = RTE_CRYPTO_AEAD_OP_ENCRYPT, 116474f1202SAnoob Joseph .algo = RTE_CRYPTO_AEAD_AES_GCM, 117474f1202SAnoob Joseph .key.length = 16, 118474f1202SAnoob Joseph .iv.length = 12, 119474f1202SAnoob Joseph .iv.offset = IV_OFFSET, 120474f1202SAnoob Joseph .digest_length = 16, 121474f1202SAnoob Joseph .aad_length = 12, 122474f1202SAnoob Joseph }, 123474f1202SAnoob Joseph }, 124474f1202SAnoob Joseph }, 125474f1202SAnoob Joseph }; 126474f1202SAnoob Joseph 127474f1202SAnoob Joseph struct ipsec_test_data pkt_aes_192_gcm = { 128474f1202SAnoob Joseph .key = { 129474f1202SAnoob Joseph .data = { 130474f1202SAnoob Joseph 0xfe, 0xff, 0xe9, 0x92, 0x86, 0x65, 0x73, 0x1c, 131474f1202SAnoob Joseph 0x6d, 0x6a, 0x8f, 0x94, 0x67, 0x30, 0x83, 0x08, 132474f1202SAnoob Joseph 0xfe, 0xff, 0xe9, 0x92, 0x86, 0x65, 0x73, 0x1c 133474f1202SAnoob Joseph }, 134474f1202SAnoob Joseph }, 135474f1202SAnoob Joseph .input_text = { 136474f1202SAnoob Joseph .data = { 137474f1202SAnoob Joseph /* IP */ 138474f1202SAnoob Joseph 0x45, 0x00, 0x00, 0x28, 0xa4, 0xad, 0x40, 0x00, 139474f1202SAnoob Joseph 0x40, 0x06, 0x78, 0x80, 0x0a, 0x01, 0x03, 0x8f, 140474f1202SAnoob Joseph 0x0a, 0x01, 0x06, 0x12, 141474f1202SAnoob Joseph 142474f1202SAnoob Joseph /* TCP */ 143474f1202SAnoob Joseph 0x80, 0x23, 0x06, 0xb8, 0xcb, 0x71, 0x26, 0x02, 144474f1202SAnoob Joseph 0xdd, 0x6b, 0xb0, 0x3e, 0x50, 0x10, 0x16, 0xd0, 145474f1202SAnoob Joseph 0x75, 0x67, 0x00, 0x01 146474f1202SAnoob Joseph }, 147474f1202SAnoob Joseph .len = 40, 148474f1202SAnoob Joseph }, 149474f1202SAnoob Joseph .output_text = { 150474f1202SAnoob Joseph .data = { 151474f1202SAnoob Joseph /* IP - outer header */ 152474f1202SAnoob Joseph 0x45, 0x00, 0x00, 0x60, 0x69, 0x8f, 0x00, 0x00, 153474f1202SAnoob Joseph 0x80, 0x32, 0x4d, 0x89, 0xc0, 0xa8, 0x01, 0x02, 154474f1202SAnoob Joseph 0xc0, 0xa8, 0x01, 0x01, 155474f1202SAnoob Joseph 156474f1202SAnoob Joseph /* ESP */ 157474f1202SAnoob Joseph 0x00, 0x00, 0xa5, 0xf8, 0x00, 0x00, 0x00, 0x01, 158474f1202SAnoob Joseph 159474f1202SAnoob Joseph /* IV */ 160474f1202SAnoob Joseph 0xfa, 0xce, 0xdb, 0xad, 0xde, 0xca, 0xf8, 0x88, 161474f1202SAnoob Joseph 162474f1202SAnoob Joseph /* Data */ 163474f1202SAnoob Joseph 0xa5, 0xb1, 0xf8, 0x06, 0x60, 0x29, 0xae, 0xa4, 164474f1202SAnoob Joseph 0x0e, 0x59, 0x8b, 0x81, 0x22, 0xde, 0x02, 0x42, 165474f1202SAnoob Joseph 0x09, 0x38, 0xb3, 0xab, 0x33, 0xf8, 0x28, 0xe6, 166474f1202SAnoob Joseph 0x87, 0xb8, 0x85, 0x8b, 0x5b, 0xfb, 0xdb, 0xd0, 167474f1202SAnoob Joseph 0x31, 0x5b, 0x27, 0x45, 0x21, 0x4b, 0xcc, 0x77, 168474f1202SAnoob Joseph 0x82, 0xac, 0x91, 0x38, 0xf2, 0xbb, 0xbe, 0xe4, 169474f1202SAnoob Joseph 0xcf, 0x03, 0x36, 0x89, 0xdd, 0x40, 0xd3, 0x6e, 170474f1202SAnoob Joseph 0x54, 0x05, 0x22, 0x22, 171474f1202SAnoob Joseph }, 172474f1202SAnoob Joseph .len = 96, 173474f1202SAnoob Joseph }, 174474f1202SAnoob Joseph .salt = { 175474f1202SAnoob Joseph .data = { 176474f1202SAnoob Joseph 0xca, 0xfe, 0xba, 0xbe 177474f1202SAnoob Joseph }, 178474f1202SAnoob Joseph .len = 4, 179474f1202SAnoob Joseph }, 180474f1202SAnoob Joseph 181474f1202SAnoob Joseph .iv = { 182474f1202SAnoob Joseph .data = { 183474f1202SAnoob Joseph 0xfa, 0xce, 0xdb, 0xad, 0xde, 0xca, 0xf8, 0x88 184474f1202SAnoob Joseph }, 185474f1202SAnoob Joseph }, 186474f1202SAnoob Joseph 187474f1202SAnoob Joseph .ipsec_xform = { 188474f1202SAnoob Joseph .spi = 0xa5f8, 189474f1202SAnoob Joseph .options.esn = 0, 190474f1202SAnoob Joseph .options.udp_encap = 0, 191474f1202SAnoob Joseph .options.copy_dscp = 0, 192474f1202SAnoob Joseph .options.copy_flabel = 0, 193474f1202SAnoob Joseph .options.copy_df = 0, 194474f1202SAnoob Joseph .options.dec_ttl = 0, 195474f1202SAnoob Joseph .options.ecn = 0, 196474f1202SAnoob Joseph .options.stats = 0, 197270470eeSTejasree Kondoj .options.tunnel_hdr_verify = 0, 19883243502SArchana Muniganti .options.ip_csum_enable = 0, 19983243502SArchana Muniganti .options.l4_csum_enable = 0, 200474f1202SAnoob Joseph .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 201474f1202SAnoob Joseph .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 202474f1202SAnoob Joseph .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 203474f1202SAnoob Joseph .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 204474f1202SAnoob Joseph .replay_win_sz = 0, 205474f1202SAnoob Joseph }, 206474f1202SAnoob Joseph 207474f1202SAnoob Joseph .aead = true, 208474f1202SAnoob Joseph 209474f1202SAnoob Joseph .xform = { 210474f1202SAnoob Joseph .aead = { 211474f1202SAnoob Joseph .next = NULL, 212474f1202SAnoob Joseph .type = RTE_CRYPTO_SYM_XFORM_AEAD, 213474f1202SAnoob Joseph .aead = { 214474f1202SAnoob Joseph .op = RTE_CRYPTO_AEAD_OP_ENCRYPT, 215474f1202SAnoob Joseph .algo = RTE_CRYPTO_AEAD_AES_GCM, 216474f1202SAnoob Joseph .key.length = 24, 217474f1202SAnoob Joseph .iv.length = 12, 218474f1202SAnoob Joseph .iv.offset = IV_OFFSET, 219474f1202SAnoob Joseph .digest_length = 16, 220474f1202SAnoob Joseph .aad_length = 12, 221474f1202SAnoob Joseph }, 222474f1202SAnoob Joseph }, 223474f1202SAnoob Joseph }, 224474f1202SAnoob Joseph }; 225474f1202SAnoob Joseph 226474f1202SAnoob Joseph struct ipsec_test_data pkt_aes_256_gcm = { 227474f1202SAnoob Joseph .key = { 228474f1202SAnoob Joseph .data = { 229474f1202SAnoob Joseph 0xab, 0xbc, 0xcd, 0xde, 0xf0, 0x01, 0x12, 0x23, 230474f1202SAnoob Joseph 0x34, 0x45, 0x56, 0x67, 0x78, 0x89, 0x9a, 0xab, 231474f1202SAnoob Joseph 0xab, 0xbc, 0xcd, 0xde, 0xf0, 0x01, 0x12, 0x23, 232474f1202SAnoob Joseph 0x34, 0x45, 0x56, 0x67, 0x78, 0x89, 0x9a, 0xab, 233474f1202SAnoob Joseph }, 234474f1202SAnoob Joseph }, 235474f1202SAnoob Joseph .input_text = { 236474f1202SAnoob Joseph .data = { 237474f1202SAnoob Joseph /* IP */ 238474f1202SAnoob Joseph 0x45, 0x00, 0x00, 0x30, 0x69, 0xa6, 0x40, 0x00, 239474f1202SAnoob Joseph 0x80, 0x06, 0x26, 0x90, 0xc0, 0xa8, 0x01, 0x02, 240474f1202SAnoob Joseph 0x93, 0x89, 0x15, 0x5e, 241474f1202SAnoob Joseph 242474f1202SAnoob Joseph /* TCP */ 243474f1202SAnoob Joseph 0x0a, 0x9e, 0x00, 0x8b, 0x2d, 0xc5, 0x7e, 0xe0, 244474f1202SAnoob Joseph 0x00, 0x00, 0x00, 0x00, 0x70, 0x02, 0x40, 0x00, 245474f1202SAnoob Joseph 0x20, 0xbf, 0x00, 0x00, 0x02, 0x04, 0x05, 0xb4, 246474f1202SAnoob Joseph 0x01, 0x01, 0x04, 0x02, 247474f1202SAnoob Joseph }, 248474f1202SAnoob Joseph .len = 48, 249474f1202SAnoob Joseph }, 250474f1202SAnoob Joseph .output_text = { 251474f1202SAnoob Joseph .data = { 252474f1202SAnoob Joseph /* IP - outer header */ 253474f1202SAnoob Joseph 0x45, 0x00, 0x00, 0x68, 0x69, 0x8f, 0x00, 0x00, 254474f1202SAnoob Joseph 0x80, 0x32, 0x4d, 0x81, 0xc0, 0xa8, 0x01, 0x02, 255474f1202SAnoob Joseph 0xc0, 0xa8, 0x01, 0x01, 256474f1202SAnoob Joseph 257474f1202SAnoob Joseph /* ESP */ 258474f1202SAnoob Joseph 0x4a, 0x2c, 0xbf, 0xe3, 0x00, 0x00, 0x00, 0x01, 259474f1202SAnoob Joseph 260474f1202SAnoob Joseph /* IV */ 261474f1202SAnoob Joseph 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 262474f1202SAnoob Joseph 263474f1202SAnoob Joseph /* Data */ 264474f1202SAnoob Joseph 0xff, 0x42, 0x5c, 0x9b, 0x72, 0x45, 0x99, 0xdf, 265474f1202SAnoob Joseph 0x7a, 0x3b, 0xcd, 0x51, 0x01, 0x94, 0xe0, 0x0d, 266474f1202SAnoob Joseph 0x6a, 0x78, 0x10, 0x7f, 0x1b, 0x0b, 0x1c, 0xbf, 267474f1202SAnoob Joseph 0x06, 0xef, 0xae, 0x9d, 0x65, 0xa5, 0xd7, 0x63, 268474f1202SAnoob Joseph 0x74, 0x8a, 0x63, 0x79, 0x85, 0x77, 0x1d, 0x34, 269474f1202SAnoob Joseph 0x7f, 0x05, 0x45, 0x65, 0x9f, 0x14, 0xe9, 0x9d, 270474f1202SAnoob Joseph 0xef, 0x84, 0x2d, 0x8b, 0x00, 0x14, 0x4a, 0x1f, 271474f1202SAnoob Joseph 0xec, 0x6a, 0xdf, 0x0c, 0x9a, 0x92, 0x7f, 0xee, 272474f1202SAnoob Joseph 0xa6, 0xc5, 0x11, 0x60, 273474f1202SAnoob Joseph }, 274474f1202SAnoob Joseph .len = 104, 275474f1202SAnoob Joseph }, 276474f1202SAnoob Joseph .salt = { 277474f1202SAnoob Joseph .data = { 278474f1202SAnoob Joseph 0x11, 0x22, 0x33, 0x44 279474f1202SAnoob Joseph }, 280474f1202SAnoob Joseph .len = 4, 281474f1202SAnoob Joseph }, 282474f1202SAnoob Joseph 283474f1202SAnoob Joseph .iv = { 284474f1202SAnoob Joseph .data = { 285474f1202SAnoob Joseph 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08 286474f1202SAnoob Joseph }, 287474f1202SAnoob Joseph }, 288474f1202SAnoob Joseph 289474f1202SAnoob Joseph .ipsec_xform = { 290474f1202SAnoob Joseph .spi = 0x4a2cbfe3, 291474f1202SAnoob Joseph .options.esn = 0, 292474f1202SAnoob Joseph .options.udp_encap = 0, 293474f1202SAnoob Joseph .options.copy_dscp = 0, 294474f1202SAnoob Joseph .options.copy_flabel = 0, 295474f1202SAnoob Joseph .options.copy_df = 0, 296474f1202SAnoob Joseph .options.dec_ttl = 0, 297474f1202SAnoob Joseph .options.ecn = 0, 298474f1202SAnoob Joseph .options.stats = 0, 299270470eeSTejasree Kondoj .options.tunnel_hdr_verify = 0, 30083243502SArchana Muniganti .options.ip_csum_enable = 0, 30183243502SArchana Muniganti .options.l4_csum_enable = 0, 302474f1202SAnoob Joseph .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 303474f1202SAnoob Joseph .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 304474f1202SAnoob Joseph .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 305474f1202SAnoob Joseph .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 306474f1202SAnoob Joseph .replay_win_sz = 0, 307474f1202SAnoob Joseph }, 308474f1202SAnoob Joseph 309474f1202SAnoob Joseph .aead = true, 310474f1202SAnoob Joseph 311474f1202SAnoob Joseph .xform = { 312474f1202SAnoob Joseph .aead = { 313474f1202SAnoob Joseph .next = NULL, 314474f1202SAnoob Joseph .type = RTE_CRYPTO_SYM_XFORM_AEAD, 315474f1202SAnoob Joseph .aead = { 316474f1202SAnoob Joseph .op = RTE_CRYPTO_AEAD_OP_ENCRYPT, 317474f1202SAnoob Joseph .algo = RTE_CRYPTO_AEAD_AES_GCM, 318474f1202SAnoob Joseph .key.length = 32, 319474f1202SAnoob Joseph .iv.length = 12, 320474f1202SAnoob Joseph .iv.offset = IV_OFFSET, 321474f1202SAnoob Joseph .digest_length = 16, 322474f1202SAnoob Joseph .aad_length = 12, 323474f1202SAnoob Joseph }, 324474f1202SAnoob Joseph }, 325474f1202SAnoob Joseph }, 326474f1202SAnoob Joseph }; 327474f1202SAnoob Joseph 328d3142999SArchana Muniganti struct ipsec_test_data pkt_aes_256_ccm = { 329d3142999SArchana Muniganti .key = { 330d3142999SArchana Muniganti .data = { 331d3142999SArchana Muniganti 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 332d3142999SArchana Muniganti 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 333d3142999SArchana Muniganti 0x61, 0x62, 0x63, 0x64, 0x61, 0x62, 0x63, 0x64, 334d3142999SArchana Muniganti 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 335d3142999SArchana Muniganti }, 336d3142999SArchana Muniganti }, 337d3142999SArchana Muniganti .input_text = { 338d3142999SArchana Muniganti .data = { 339d3142999SArchana Muniganti /* IP */ 340d3142999SArchana Muniganti 0x45, 0x00, 0x00, 0x2E, 0x00, 0x01, 0x00, 0x00, 341d3142999SArchana Muniganti 0x40, 0x11, 0x5F, 0xBC, 0x0D, 0x00, 0x00, 0x02, 342d3142999SArchana Muniganti 0x0E, 0x00, 0x00, 0x01, 343d3142999SArchana Muniganti 344d3142999SArchana Muniganti /* UDP */ 345d3142999SArchana Muniganti 0x04, 0x01, 0x04, 0x01, 0x00, 0x1A, 0xA0, 0x79, 346d3142999SArchana Muniganti 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 347d3142999SArchana Muniganti 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 348d3142999SArchana Muniganti 0x78, 0x78, 349d3142999SArchana Muniganti }, 350d3142999SArchana Muniganti .len = 46, 351d3142999SArchana Muniganti }, 352d3142999SArchana Muniganti .output_text = { 353d3142999SArchana Muniganti .data = { 354d3142999SArchana Muniganti /* IP - outer header */ 355d3142999SArchana Muniganti 0x45, 0x00, 0x00, 0x64, 0x00, 0x01, 0x00, 0x00, 356d3142999SArchana Muniganti 0x40, 0x32, 0x76, 0x65, 0x02, 0x00, 0x00, 0x01, 357d3142999SArchana Muniganti 0x02, 0x00, 0x00, 0x02, 358d3142999SArchana Muniganti 359d3142999SArchana Muniganti /* ESP */ 360d3142999SArchana Muniganti 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 361d3142999SArchana Muniganti 362d3142999SArchana Muniganti /* IV */ 363d3142999SArchana Muniganti 0x00, 0x00, 0x00, 0x00, 0x02, 0x58, 0xBB, 0x81, 364d3142999SArchana Muniganti 365d3142999SArchana Muniganti /* Data */ 366d3142999SArchana Muniganti 0xB4, 0x12, 0x67, 0x79, 0x79, 0x9A, 0xCB, 0xC5, 367d3142999SArchana Muniganti 0x94, 0xF9, 0xA3, 0x95, 0xAC, 0x06, 0x8B, 0xEE, 368d3142999SArchana Muniganti 0x20, 0x69, 0xE8, 0xD9, 0x4A, 0xC2, 0xAA, 0xA0, 369d3142999SArchana Muniganti 0xD4, 0xEE, 0xF6, 0xAE, 0x08, 0xF8, 0x3F, 0xE6, 370d3142999SArchana Muniganti 0x88, 0x1F, 0x5C, 0xD7, 0x8D, 0x9D, 0x30, 0x02, 371d3142999SArchana Muniganti 0x36, 0xEA, 0x10, 0x5B, 0xB0, 0x30, 0x97, 0xBF, 372d3142999SArchana Muniganti 0xFA, 0x89, 0x36, 0x53, 0x96, 0xD7, 0x43, 0x8C, 373d3142999SArchana Muniganti 0x4D, 0x87, 0xFD, 0x8E, 0x45, 0x49, 0x34, 0x80, 374d3142999SArchana Muniganti }, 375d3142999SArchana Muniganti .len = 100, 376d3142999SArchana Muniganti }, 377d3142999SArchana Muniganti .salt = { 378d3142999SArchana Muniganti .data = { 379d3142999SArchana Muniganti 0x6d, 0x6e, 0x6f 380d3142999SArchana Muniganti }, 381d3142999SArchana Muniganti .len = 3, 382d3142999SArchana Muniganti }, 383d3142999SArchana Muniganti 384d3142999SArchana Muniganti .iv = { 385d3142999SArchana Muniganti .data = { 386d3142999SArchana Muniganti 0x00, 0x00, 0x00, 0x00, 0x02, 0x58, 0xBB, 0x81, 387d3142999SArchana Muniganti }, 388d3142999SArchana Muniganti }, 389d3142999SArchana Muniganti 390d3142999SArchana Muniganti .ipsec_xform = { 391d3142999SArchana Muniganti .spi = 0x00000100, 392d3142999SArchana Muniganti .options.esn = 0, 393d3142999SArchana Muniganti .options.udp_encap = 0, 394d3142999SArchana Muniganti .options.copy_dscp = 0, 395d3142999SArchana Muniganti .options.copy_flabel = 0, 396d3142999SArchana Muniganti .options.copy_df = 0, 397d3142999SArchana Muniganti .options.dec_ttl = 0, 398d3142999SArchana Muniganti .options.ecn = 0, 399d3142999SArchana Muniganti .options.stats = 0, 400d3142999SArchana Muniganti .options.tunnel_hdr_verify = 0, 401d3142999SArchana Muniganti .options.ip_csum_enable = 0, 402d3142999SArchana Muniganti .options.l4_csum_enable = 0, 403d3142999SArchana Muniganti .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 404d3142999SArchana Muniganti .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 405d3142999SArchana Muniganti .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 406d3142999SArchana Muniganti .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 407d3142999SArchana Muniganti .replay_win_sz = 0, 408d3142999SArchana Muniganti }, 409d3142999SArchana Muniganti 410d3142999SArchana Muniganti .aead = true, 411d3142999SArchana Muniganti 412d3142999SArchana Muniganti .xform = { 413d3142999SArchana Muniganti .aead = { 414d3142999SArchana Muniganti .next = NULL, 415d3142999SArchana Muniganti .type = RTE_CRYPTO_SYM_XFORM_AEAD, 416d3142999SArchana Muniganti .aead = { 417d3142999SArchana Muniganti .op = RTE_CRYPTO_AEAD_OP_ENCRYPT, 418d3142999SArchana Muniganti .algo = RTE_CRYPTO_AEAD_AES_CCM, 419d3142999SArchana Muniganti .key.length = 32, 420*7de104c5STejasree Kondoj /* IV includes 3B salt and 8B per packet IV */ 421*7de104c5STejasree Kondoj .iv.length = 11, 422d3142999SArchana Muniganti .iv.offset = IV_OFFSET, 423d3142999SArchana Muniganti .digest_length = 16, 424d3142999SArchana Muniganti .aad_length = 12, 425d3142999SArchana Muniganti }, 426d3142999SArchana Muniganti }, 427d3142999SArchana Muniganti }, 428d3142999SArchana Muniganti }; 429d3142999SArchana Muniganti 43067d2a188SAnoob Joseph /* Known vectors for AES-CBC 43167d2a188SAnoob Joseph * https://datatracker.ietf.org/doc/html/rfc3602#section-4 43267d2a188SAnoob Joseph */ 43367d2a188SAnoob Joseph 43467d2a188SAnoob Joseph struct ipsec_test_data pkt_aes_128_cbc_null = { 43567d2a188SAnoob Joseph .key = { 43667d2a188SAnoob Joseph .data = { 43767d2a188SAnoob Joseph 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef, 43867d2a188SAnoob Joseph 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef, 43967d2a188SAnoob Joseph }, 44067d2a188SAnoob Joseph }, 44167d2a188SAnoob Joseph .input_text = { 44267d2a188SAnoob Joseph .data = { 44367d2a188SAnoob Joseph /* IP - outer header */ 44467d2a188SAnoob Joseph 0x45, 0x00, 0x00, 0x8c, 0x00, 0x02, 0x00, 0x00, 44567d2a188SAnoob Joseph 0x40, 0x32, 0x27, 0xbc, 0x00, 0x01, 0xa8, 0xc0, 44667d2a188SAnoob Joseph 0x01, 0x01, 0xa8, 0xc0, 44767d2a188SAnoob Joseph 44867d2a188SAnoob Joseph /* ESP */ 44967d2a188SAnoob Joseph 0x00, 0x00, 0x87, 0x65, 0x00, 0x00, 0x00, 0x02, 45067d2a188SAnoob Joseph 45167d2a188SAnoob Joseph /* IV */ 45267d2a188SAnoob Joseph 0xf4, 0xe7, 0x65, 0x24, 0x4f, 0x64, 0x07, 0xad, 45367d2a188SAnoob Joseph 0xf1, 0x3d, 0xc1, 0x38, 0x0f, 0x67, 0x3f, 0x37, 45467d2a188SAnoob Joseph 45567d2a188SAnoob Joseph /* Data */ 45667d2a188SAnoob Joseph 0x77, 0x3b, 0x52, 0x41, 0xa4, 0xc4, 0x49, 0x22, 45767d2a188SAnoob Joseph 0x5e, 0x4f, 0x3c, 0xe5, 0xed, 0x61, 0x1b, 0x0c, 45867d2a188SAnoob Joseph 0x23, 0x7c, 0xa9, 0x6c, 0xf7, 0x4a, 0x93, 0x01, 45967d2a188SAnoob Joseph 0x3c, 0x1b, 0x0e, 0xa1, 0xa0, 0xcf, 0x70, 0xf8, 46067d2a188SAnoob Joseph 0xe4, 0xec, 0xae, 0xc7, 0x8a, 0xc5, 0x3a, 0xad, 46167d2a188SAnoob Joseph 0x7a, 0x0f, 0x02, 0x2b, 0x85, 0x92, 0x43, 0xc6, 46267d2a188SAnoob Joseph 0x47, 0x75, 0x2e, 0x94, 0xa8, 0x59, 0x35, 0x2b, 46367d2a188SAnoob Joseph 0x8a, 0x4d, 0x4d, 0x2d, 0xec, 0xd1, 0x36, 0xe5, 46467d2a188SAnoob Joseph 0xc1, 0x77, 0xf1, 0x32, 0xad, 0x3f, 0xbf, 0xb2, 46567d2a188SAnoob Joseph 0x20, 0x1a, 0xc9, 0x90, 0x4c, 0x74, 0xee, 0x0a, 46667d2a188SAnoob Joseph 0x10, 0x9e, 0x0c, 0xa1, 0xe4, 0xdf, 0xe9, 0xd5, 46767d2a188SAnoob Joseph 0xa1, 0x00, 0xb8, 0x42, 0xf1, 0xc2, 0x2f, 0x0d, 46867d2a188SAnoob Joseph }, 46967d2a188SAnoob Joseph .len = 140, 47067d2a188SAnoob Joseph }, 47167d2a188SAnoob Joseph .output_text = { 47267d2a188SAnoob Joseph .data = { 47367d2a188SAnoob Joseph /* IP */ 47467d2a188SAnoob Joseph 0x45, 0x00, 0x00, 0x54, 0x09, 0x04, 0x00, 0x00, 47567d2a188SAnoob Joseph 0x40, 0x01, 0xf9, 0x88, 0xc0, 0xa8, 0x7b, 0x03, 47667d2a188SAnoob Joseph 0xc0, 0xa8, 0x7b, 0xc8, 47767d2a188SAnoob Joseph 47867d2a188SAnoob Joseph /* ICMP */ 47967d2a188SAnoob Joseph 0x08, 0x00, 0x9f, 0x76, 0xa9, 0x0a, 0x01, 0x00, 48067d2a188SAnoob Joseph 0xb4, 0x9c, 0x08, 0x3d, 0x02, 0xa2, 0x04, 0x00, 48167d2a188SAnoob Joseph 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 48267d2a188SAnoob Joseph 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 48367d2a188SAnoob Joseph 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 48467d2a188SAnoob Joseph 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 48567d2a188SAnoob Joseph 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 48667d2a188SAnoob Joseph 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 48767d2a188SAnoob Joseph 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 48867d2a188SAnoob Joseph 0x09, 0x0a, 0x0a, 0x04, 48967d2a188SAnoob Joseph }, 49067d2a188SAnoob Joseph .len = 84, 49167d2a188SAnoob Joseph }, 49267d2a188SAnoob Joseph .iv = { 49367d2a188SAnoob Joseph .data = { 49467d2a188SAnoob Joseph 0xf4, 0xe7, 0x65, 0x24, 0x4f, 0x64, 0x07, 0xad, 49567d2a188SAnoob Joseph 0xf1, 0x3d, 0xc1, 0x38, 0x0f, 0x67, 0x3f, 0x37, 49667d2a188SAnoob Joseph }, 49767d2a188SAnoob Joseph }, 49867d2a188SAnoob Joseph 49967d2a188SAnoob Joseph .ipsec_xform = { 50067d2a188SAnoob Joseph .spi = 0x8765, 50167d2a188SAnoob Joseph .options.esn = 0, 50267d2a188SAnoob Joseph .options.udp_encap = 0, 50367d2a188SAnoob Joseph .options.copy_dscp = 0, 50467d2a188SAnoob Joseph .options.copy_flabel = 0, 50567d2a188SAnoob Joseph .options.copy_df = 0, 50667d2a188SAnoob Joseph .options.dec_ttl = 0, 50767d2a188SAnoob Joseph .options.ecn = 0, 50867d2a188SAnoob Joseph .options.stats = 0, 50967d2a188SAnoob Joseph .options.tunnel_hdr_verify = 0, 51067d2a188SAnoob Joseph .direction = RTE_SECURITY_IPSEC_SA_DIR_INGRESS, 51167d2a188SAnoob Joseph .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 51267d2a188SAnoob Joseph .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 51367d2a188SAnoob Joseph .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 51467d2a188SAnoob Joseph .replay_win_sz = 0, 51567d2a188SAnoob Joseph }, 51667d2a188SAnoob Joseph 51767d2a188SAnoob Joseph .aead = false, 51867d2a188SAnoob Joseph 51967d2a188SAnoob Joseph .xform = { 52067d2a188SAnoob Joseph .chain.cipher = { 52167d2a188SAnoob Joseph .next = NULL, 52267d2a188SAnoob Joseph .type = RTE_CRYPTO_SYM_XFORM_CIPHER, 52367d2a188SAnoob Joseph .cipher = { 52467d2a188SAnoob Joseph .op = RTE_CRYPTO_CIPHER_OP_DECRYPT, 52567d2a188SAnoob Joseph .algo = RTE_CRYPTO_CIPHER_AES_CBC, 52667d2a188SAnoob Joseph .key.length = 16, 52767d2a188SAnoob Joseph .iv.length = 16, 52867d2a188SAnoob Joseph }, 52967d2a188SAnoob Joseph }, 53067d2a188SAnoob Joseph .chain.auth = { 53167d2a188SAnoob Joseph .next = NULL, 53267d2a188SAnoob Joseph .type = RTE_CRYPTO_SYM_XFORM_AUTH, 53367d2a188SAnoob Joseph .auth = { 53467d2a188SAnoob Joseph .algo = RTE_CRYPTO_AUTH_NULL, 53567d2a188SAnoob Joseph }, 53667d2a188SAnoob Joseph }, 53767d2a188SAnoob Joseph }, 53867d2a188SAnoob Joseph }; 53967d2a188SAnoob Joseph 5409fb87fbfSTejasree Kondoj struct ipsec_test_data pkt_aes_256_gcm_v6 = { 5419fb87fbfSTejasree Kondoj .key = { 5429fb87fbfSTejasree Kondoj .data = { 5439fb87fbfSTejasree Kondoj 0xde, 0x12, 0xbe, 0x56, 0xde, 0xad, 0xbe, 0xef, 5449fb87fbfSTejasree Kondoj 0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe, 0xef, 5459fb87fbfSTejasree Kondoj 0x12, 0x78, 0xbe, 0x34, 0x01, 0x02, 0x03, 0x07, 5469fb87fbfSTejasree Kondoj 0xaa, 0xbb, 0xcc, 0xf1, 0x08, 0x07, 0x06, 0x05, 5479fb87fbfSTejasree Kondoj }, 5489fb87fbfSTejasree Kondoj }, 5499fb87fbfSTejasree Kondoj .input_text = { 5509fb87fbfSTejasree Kondoj .data = { 5519fb87fbfSTejasree Kondoj 0x60, 0x00, 0x00, 0x00, 0x00, 0x20, 0x06, 0x38, 5529fb87fbfSTejasree Kondoj 0x26, 0x07, 0xf8, 0xb0, 0x40, 0x0c, 0x0c, 0x03, 5539fb87fbfSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1a, 5549fb87fbfSTejasree Kondoj 0x20, 0x01, 0x04, 0x70, 0xe5, 0xbf, 0xde, 0xad, 5559fb87fbfSTejasree Kondoj 0x49, 0x57, 0x21, 0x74, 0xe8, 0x2c, 0x48, 0x87, 5569fb87fbfSTejasree Kondoj 0x00, 0x19, 0xf9, 0xc7, 0x95, 0x63, 0x97, 0x9c, 5579fb87fbfSTejasree Kondoj 0x03, 0xa0, 0x88, 0x31, 0x80, 0x12, 0xa7, 0xd6, 5589fb87fbfSTejasree Kondoj 0x25, 0x83, 0x00, 0x00, 0x02, 0x04, 0x05, 0x6a, 5599fb87fbfSTejasree Kondoj 0x01, 0x01, 0x04, 0x02, 0x01, 0x03, 0x03, 0x07, 5609fb87fbfSTejasree Kondoj }, 5619fb87fbfSTejasree Kondoj .len = 72, 5629fb87fbfSTejasree Kondoj }, 5639fb87fbfSTejasree Kondoj .output_text = { 5649fb87fbfSTejasree Kondoj .data = { 5659fb87fbfSTejasree Kondoj 0x60, 0x00, 0x00, 0x00, 0x00, 0x6c, 0x32, 0x40, 5669fb87fbfSTejasree Kondoj 0x12, 0x34, 0x12, 0x21, 0x17, 0x45, 0x11, 0x34, 5679fb87fbfSTejasree Kondoj 0x11, 0xfc, 0x89, 0x71, 0xdf, 0x22, 0x56, 0x78, 5689fb87fbfSTejasree Kondoj 0x12, 0x34, 0x12, 0x21, 0x17, 0x45, 0x11, 0x34, 5699fb87fbfSTejasree Kondoj 0x11, 0xfc, 0x89, 0x71, 0xdf, 0x22, 0x34, 0x56, 5709fb87fbfSTejasree Kondoj 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x01, 5719fb87fbfSTejasree Kondoj 0x45, 0xad, 0xfe, 0x23, 0x78, 0x56, 0x12, 0x00, 5729fb87fbfSTejasree Kondoj 0xe7, 0xdf, 0xc4, 0x7e, 0x21, 0xbd, 0xec, 0x1b, 5739fb87fbfSTejasree Kondoj 0x74, 0x5a, 0xe4, 0x7e, 0x2e, 0x94, 0x21, 0x0a, 5749fb87fbfSTejasree Kondoj 0x9b, 0x0e, 0x59, 0xbe, 0x06, 0x2a, 0xda, 0xb8, 5759fb87fbfSTejasree Kondoj 0x6b, 0x48, 0x7f, 0x0b, 0x88, 0x3a, 0xa9, 0xfd, 5769fb87fbfSTejasree Kondoj 0x3c, 0xfe, 0x9f, 0xb1, 0x8c, 0x67, 0xd2, 0xf8, 5779fb87fbfSTejasree Kondoj 0xaf, 0xb5, 0xad, 0x16, 0xdb, 0xff, 0x8d, 0x50, 5789fb87fbfSTejasree Kondoj 0xd3, 0x48, 0xf5, 0x6c, 0x3c, 0x0c, 0x27, 0x34, 5799fb87fbfSTejasree Kondoj 0x2b, 0x65, 0xc8, 0xff, 0xeb, 0x5f, 0xb8, 0xff, 5809fb87fbfSTejasree Kondoj 0x12, 0x00, 0x1c, 0x9f, 0xb7, 0x85, 0xdd, 0x7d, 5819fb87fbfSTejasree Kondoj 0x40, 0x19, 0xcb, 0x18, 0xeb, 0x15, 0xc4, 0x88, 5829fb87fbfSTejasree Kondoj 0xe1, 0xc2, 0x91, 0xc7, 0xb1, 0x65, 0xc3, 0x27, 5839fb87fbfSTejasree Kondoj 0x16, 0x06, 0x8f, 0xf2, 5849fb87fbfSTejasree Kondoj }, 5859fb87fbfSTejasree Kondoj .len = 148, 5869fb87fbfSTejasree Kondoj }, 5879fb87fbfSTejasree Kondoj .salt = { 5889fb87fbfSTejasree Kondoj .data = { 5899fb87fbfSTejasree Kondoj 0x11, 0x22, 0x33, 0x44 5909fb87fbfSTejasree Kondoj }, 5919fb87fbfSTejasree Kondoj .len = 4, 5929fb87fbfSTejasree Kondoj }, 5939fb87fbfSTejasree Kondoj 5949fb87fbfSTejasree Kondoj .iv = { 5959fb87fbfSTejasree Kondoj .data = { 5969fb87fbfSTejasree Kondoj 0x45, 0xad, 0xfe, 0x23, 0x78, 0x56, 0x12, 0x00, 5979fb87fbfSTejasree Kondoj }, 5989fb87fbfSTejasree Kondoj }, 5999fb87fbfSTejasree Kondoj 6009fb87fbfSTejasree Kondoj .ipsec_xform = { 6019fb87fbfSTejasree Kondoj .spi = 52, 6029fb87fbfSTejasree Kondoj .options.esn = 0, 6039fb87fbfSTejasree Kondoj .options.udp_encap = 0, 6049fb87fbfSTejasree Kondoj .options.copy_dscp = 0, 6059fb87fbfSTejasree Kondoj .options.copy_flabel = 0, 6069fb87fbfSTejasree Kondoj .options.copy_df = 0, 6079fb87fbfSTejasree Kondoj .options.dec_ttl = 0, 6089fb87fbfSTejasree Kondoj .options.ecn = 0, 6099fb87fbfSTejasree Kondoj .options.stats = 0, 6109fb87fbfSTejasree Kondoj .options.tunnel_hdr_verify = 0, 6119fb87fbfSTejasree Kondoj .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 6129fb87fbfSTejasree Kondoj .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 6139fb87fbfSTejasree Kondoj .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 6149fb87fbfSTejasree Kondoj .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV6, 6159fb87fbfSTejasree Kondoj .replay_win_sz = 0, 6169fb87fbfSTejasree Kondoj }, 6179fb87fbfSTejasree Kondoj 6189fb87fbfSTejasree Kondoj .aead = true, 6199fb87fbfSTejasree Kondoj 6209fb87fbfSTejasree Kondoj .xform = { 6219fb87fbfSTejasree Kondoj .aead = { 6229fb87fbfSTejasree Kondoj .next = NULL, 6239fb87fbfSTejasree Kondoj .type = RTE_CRYPTO_SYM_XFORM_AEAD, 6249fb87fbfSTejasree Kondoj .aead = { 6259fb87fbfSTejasree Kondoj .op = RTE_CRYPTO_AEAD_OP_ENCRYPT, 6269fb87fbfSTejasree Kondoj .algo = RTE_CRYPTO_AEAD_AES_GCM, 6279fb87fbfSTejasree Kondoj .key.length = 32, 6289fb87fbfSTejasree Kondoj .iv.length = 12, 6299fb87fbfSTejasree Kondoj .iv.offset = IV_OFFSET, 6309fb87fbfSTejasree Kondoj .digest_length = 16, 6319fb87fbfSTejasree Kondoj .aad_length = 12, 6329fb87fbfSTejasree Kondoj }, 6339fb87fbfSTejasree Kondoj }, 6349fb87fbfSTejasree Kondoj }, 6359fb87fbfSTejasree Kondoj }; 6369fb87fbfSTejasree Kondoj 6375a23f6eaSVidya Sagar Velumuri struct ipsec_test_data pkt_aes_128_cbc_md5 = { 6385a23f6eaSVidya Sagar Velumuri .key = { 6395a23f6eaSVidya Sagar Velumuri .data = { 6405a23f6eaSVidya Sagar Velumuri 0x00, 0x04, 0x05, 0x01, 0x23, 0x00, 0x00, 0x00, 6415a23f6eaSVidya Sagar Velumuri 0x00, 0x00, 0x0a, 0x0b, 0x0c, 0x0f, 0x00, 0x00, 6425a23f6eaSVidya Sagar Velumuri }, 6435a23f6eaSVidya Sagar Velumuri }, 6445a23f6eaSVidya Sagar Velumuri .auth_key = { 6455a23f6eaSVidya Sagar Velumuri .data = { 6465a23f6eaSVidya Sagar Velumuri 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 6475a23f6eaSVidya Sagar Velumuri 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x04, 6485a23f6eaSVidya Sagar Velumuri }, 6495a23f6eaSVidya Sagar Velumuri }, 6505a23f6eaSVidya Sagar Velumuri .input_text = { 6515a23f6eaSVidya Sagar Velumuri .data = { 6525a23f6eaSVidya Sagar Velumuri /* IP */ 6535a23f6eaSVidya Sagar Velumuri 0x45, 0x00, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 6545a23f6eaSVidya Sagar Velumuri 0x1f, 0x11, 0x17, 0x8b, 0xc0, 0xa8, 0x01, 0x6f, 6555a23f6eaSVidya Sagar Velumuri 0xc0, 0xa8, 0x01, 0x70, 6565a23f6eaSVidya Sagar Velumuri 6575a23f6eaSVidya Sagar Velumuri /* UDP */ 6585a23f6eaSVidya Sagar Velumuri 0x00, 0x09, 0x00, 0x09, 0x00, 0x1e, 0x00, 0x00, 6595a23f6eaSVidya Sagar Velumuri 0xbe, 0x9b, 0xe9, 0x55, 0x00, 0x00, 0x00, 0x21, 6605a23f6eaSVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 6615a23f6eaSVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 6625a23f6eaSVidya Sagar Velumuri }, 6635a23f6eaSVidya Sagar Velumuri .len = 50, 6645a23f6eaSVidya Sagar Velumuri }, 6655a23f6eaSVidya Sagar Velumuri .output_text = { 6665a23f6eaSVidya Sagar Velumuri .data = { 6675a23f6eaSVidya Sagar Velumuri /* IP - outer header */ 6685a23f6eaSVidya Sagar Velumuri 0x45, 0x00, 0x00, 0x78, 0x00, 0x01, 0x00, 0x00, 6695a23f6eaSVidya Sagar Velumuri 0x40, 0x32, 0x52, 0x51, 0x14, 0x00, 0x00, 0x01, 6705a23f6eaSVidya Sagar Velumuri 0x14, 0x00, 0x00, 0x02, 6715a23f6eaSVidya Sagar Velumuri 6725a23f6eaSVidya Sagar Velumuri /* ESP */ 6735a23f6eaSVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00, 0x01, 6745a23f6eaSVidya Sagar Velumuri 6755a23f6eaSVidya Sagar Velumuri /* IV */ 6765a23f6eaSVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 6775a23f6eaSVidya Sagar Velumuri 0x20, 0xbf, 0xe8, 0x39, 0x00, 0x00, 0x00, 0x00, 6785a23f6eaSVidya Sagar Velumuri 6795a23f6eaSVidya Sagar Velumuri /* Data */ 6805a23f6eaSVidya Sagar Velumuri 0x67, 0xb5, 0x46, 0x6e, 0x78, 0x17, 0xd3, 0x5a, 6815a23f6eaSVidya Sagar Velumuri 0xac, 0x62, 0x62, 0x62, 0xb0, 0x57, 0x9b, 0x09, 6825a23f6eaSVidya Sagar Velumuri 0x19, 0x4f, 0x06, 0x59, 0xc8, 0xb0, 0x30, 0x65, 6835a23f6eaSVidya Sagar Velumuri 0x1f, 0x45, 0x57, 0x41, 0x72, 0x17, 0x28, 0xe9, 6845a23f6eaSVidya Sagar Velumuri 0xad, 0x50, 0xbe, 0x44, 0x1d, 0x2d, 0x9a, 0xd0, 6855a23f6eaSVidya Sagar Velumuri 0x48, 0x75, 0x0d, 0x1c, 0x8d, 0x24, 0xa8, 0x6f, 6865a23f6eaSVidya Sagar Velumuri 0x6b, 0x24, 0xb6, 0x5d, 0x43, 0x1e, 0x55, 0xf0, 6875a23f6eaSVidya Sagar Velumuri 0xf7, 0x14, 0x1f, 0xf2, 0x61, 0xd4, 0xe0, 0x30, 6885a23f6eaSVidya Sagar Velumuri 0xff, 0xd7, 0x3f, 0xb4, 0x7c, 0x30, 0xdb, 0xeb, 6895a23f6eaSVidya Sagar Velumuri 0xf3, 0x95, 0xbf, 0xcd, 6905a23f6eaSVidya Sagar Velumuri }, 6915a23f6eaSVidya Sagar Velumuri .len = 120, 6925a23f6eaSVidya Sagar Velumuri }, 6935a23f6eaSVidya Sagar Velumuri .iv = { 6945a23f6eaSVidya Sagar Velumuri .data = { 6955a23f6eaSVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 6965a23f6eaSVidya Sagar Velumuri 0x20, 0xbf, 0xe8, 0x39, 0x00, 0x00, 0x00, 0x00, 6975a23f6eaSVidya Sagar Velumuri }, 6985a23f6eaSVidya Sagar Velumuri }, 6995a23f6eaSVidya Sagar Velumuri 7005a23f6eaSVidya Sagar Velumuri .ipsec_xform = { 7015a23f6eaSVidya Sagar Velumuri .spi = 60, 7025a23f6eaSVidya Sagar Velumuri .options.esn = 0, 7035a23f6eaSVidya Sagar Velumuri .options.udp_encap = 0, 7045a23f6eaSVidya Sagar Velumuri .options.copy_dscp = 0, 7055a23f6eaSVidya Sagar Velumuri .options.copy_flabel = 0, 7065a23f6eaSVidya Sagar Velumuri .options.copy_df = 0, 7075a23f6eaSVidya Sagar Velumuri .options.dec_ttl = 0, 7085a23f6eaSVidya Sagar Velumuri .options.ecn = 0, 7095a23f6eaSVidya Sagar Velumuri .options.stats = 0, 7105a23f6eaSVidya Sagar Velumuri .options.tunnel_hdr_verify = 0, 7115a23f6eaSVidya Sagar Velumuri .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 7125a23f6eaSVidya Sagar Velumuri .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 7135a23f6eaSVidya Sagar Velumuri .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 7145a23f6eaSVidya Sagar Velumuri .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 7155a23f6eaSVidya Sagar Velumuri .replay_win_sz = 0, 7165a23f6eaSVidya Sagar Velumuri }, 7175a23f6eaSVidya Sagar Velumuri 7185a23f6eaSVidya Sagar Velumuri .aead = false, 7195a23f6eaSVidya Sagar Velumuri 7205a23f6eaSVidya Sagar Velumuri .xform = { 7215a23f6eaSVidya Sagar Velumuri .chain.cipher = { 7225a23f6eaSVidya Sagar Velumuri .next = NULL, 7235a23f6eaSVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_CIPHER, 7245a23f6eaSVidya Sagar Velumuri .cipher = { 7255a23f6eaSVidya Sagar Velumuri .op = RTE_CRYPTO_CIPHER_OP_ENCRYPT, 7265a23f6eaSVidya Sagar Velumuri .algo = RTE_CRYPTO_CIPHER_AES_CBC, 7275a23f6eaSVidya Sagar Velumuri .key.length = 16, 7285a23f6eaSVidya Sagar Velumuri .iv.length = 16, 7295a23f6eaSVidya Sagar Velumuri }, 7305a23f6eaSVidya Sagar Velumuri }, 7315a23f6eaSVidya Sagar Velumuri .chain.auth = { 7325a23f6eaSVidya Sagar Velumuri .next = NULL, 7335a23f6eaSVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_AUTH, 7345a23f6eaSVidya Sagar Velumuri .auth = { 7355a23f6eaSVidya Sagar Velumuri .op = RTE_CRYPTO_AUTH_OP_GENERATE, 7365a23f6eaSVidya Sagar Velumuri .algo = RTE_CRYPTO_AUTH_MD5_HMAC, 7375a23f6eaSVidya Sagar Velumuri .key.length = 16, 7385a23f6eaSVidya Sagar Velumuri .digest_length = 12, 7395a23f6eaSVidya Sagar Velumuri }, 7405a23f6eaSVidya Sagar Velumuri }, 7415a23f6eaSVidya Sagar Velumuri }, 7425a23f6eaSVidya Sagar Velumuri }; 7435a23f6eaSVidya Sagar Velumuri 744178a12fbSTejasree Kondoj struct ipsec_test_data pkt_aes_128_cbc_hmac_sha256 = { 745178a12fbSTejasree Kondoj .key = { 746178a12fbSTejasree Kondoj .data = { 747178a12fbSTejasree Kondoj 0x00, 0x04, 0x05, 0x01, 0x23, 0x00, 0x00, 0x00, 748178a12fbSTejasree Kondoj 0x00, 0x00, 0x0a, 0x0b, 0x0c, 0x0f, 0x00, 0x00, 749178a12fbSTejasree Kondoj }, 750178a12fbSTejasree Kondoj }, 751178a12fbSTejasree Kondoj .auth_key = { 752178a12fbSTejasree Kondoj .data = { 753178a12fbSTejasree Kondoj 0xde, 0x34, 0x56, 0x00, 0x00, 0x00, 0x78, 0x00, 754178a12fbSTejasree Kondoj 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 755178a12fbSTejasree Kondoj 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x04, 756178a12fbSTejasree Kondoj 0x0a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 757178a12fbSTejasree Kondoj }, 758178a12fbSTejasree Kondoj }, 759178a12fbSTejasree Kondoj .input_text = { 760178a12fbSTejasree Kondoj .data = { 761178a12fbSTejasree Kondoj /* IP */ 762178a12fbSTejasree Kondoj 0x45, 0x00, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 763178a12fbSTejasree Kondoj 0x1f, 0x11, 0x17, 0x8b, 0xc0, 0xa8, 0x01, 0x6f, 764178a12fbSTejasree Kondoj 0xc0, 0xa8, 0x01, 0x70, 765178a12fbSTejasree Kondoj 766178a12fbSTejasree Kondoj /* UDP */ 767178a12fbSTejasree Kondoj 0x00, 0x09, 0x00, 0x09, 0x00, 0x1e, 0x00, 0x00, 768178a12fbSTejasree Kondoj 0xbe, 0x9b, 0xe9, 0x55, 0x00, 0x00, 0x00, 0x21, 769178a12fbSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 770178a12fbSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 771178a12fbSTejasree Kondoj }, 772178a12fbSTejasree Kondoj .len = 50, 773178a12fbSTejasree Kondoj }, 774178a12fbSTejasree Kondoj .output_text = { 775178a12fbSTejasree Kondoj .data = { 776178a12fbSTejasree Kondoj /* IP - outer header */ 777178a12fbSTejasree Kondoj 0x45, 0x00, 0x00, 0x7c, 0x00, 0x01, 0x00, 0x00, 778178a12fbSTejasree Kondoj 0x40, 0x32, 0x52, 0x4d, 0x14, 0x00, 0x00, 0x01, 779178a12fbSTejasree Kondoj 0x14, 0x00, 0x00, 0x02, 780178a12fbSTejasree Kondoj 781178a12fbSTejasree Kondoj /* ESP */ 782178a12fbSTejasree Kondoj 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x01, 783178a12fbSTejasree Kondoj 784178a12fbSTejasree Kondoj /* IV */ 785178a12fbSTejasree Kondoj 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 786178a12fbSTejasree Kondoj 0x20, 0xbf, 0xe8, 0x39, 0x00, 0x00, 0x00, 0x00, 787178a12fbSTejasree Kondoj 788178a12fbSTejasree Kondoj /* Data */ 789178a12fbSTejasree Kondoj 0x67, 0xb5, 0x46, 0x6e, 0x78, 0x17, 0xd3, 0x5a, 790178a12fbSTejasree Kondoj 0xac, 0x62, 0x62, 0x62, 0xb0, 0x57, 0x9b, 0x09, 791178a12fbSTejasree Kondoj 0x19, 0x4f, 0x06, 0x59, 0xc8, 0xb0, 0x30, 0x65, 792178a12fbSTejasree Kondoj 0x1f, 0x45, 0x57, 0x41, 0x72, 0x17, 0x28, 0xe9, 793178a12fbSTejasree Kondoj 0xad, 0x50, 0xbe, 0x44, 0x1d, 0x2d, 0x9a, 0xd0, 794178a12fbSTejasree Kondoj 0x48, 0x75, 0x0d, 0x1c, 0x8d, 0x24, 0xa8, 0x6f, 795178a12fbSTejasree Kondoj 0x6b, 0x24, 0xb6, 0x5d, 0x43, 0x1e, 0x55, 0xf0, 796178a12fbSTejasree Kondoj 0xf7, 0x14, 0x1f, 0xf2, 0x61, 0xd4, 0xe0, 0x30, 797178a12fbSTejasree Kondoj 0x16, 0xbe, 0x1b, 0x5c, 0xcc, 0xb7, 0x66, 0x1c, 798178a12fbSTejasree Kondoj 0x47, 0xad, 0x07, 0x6c, 0xd5, 0xcb, 0xce, 0x6c, 799178a12fbSTejasree Kondoj }, 800178a12fbSTejasree Kondoj .len = 124, 801178a12fbSTejasree Kondoj }, 802178a12fbSTejasree Kondoj .iv = { 803178a12fbSTejasree Kondoj .data = { 804178a12fbSTejasree Kondoj 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 805178a12fbSTejasree Kondoj 0x20, 0xbf, 0xe8, 0x39, 0x00, 0x00, 0x00, 0x00, 806178a12fbSTejasree Kondoj }, 807178a12fbSTejasree Kondoj }, 808178a12fbSTejasree Kondoj 809178a12fbSTejasree Kondoj .ipsec_xform = { 810178a12fbSTejasree Kondoj .spi = 52, 811178a12fbSTejasree Kondoj .options.esn = 0, 812178a12fbSTejasree Kondoj .options.udp_encap = 0, 813178a12fbSTejasree Kondoj .options.copy_dscp = 0, 814178a12fbSTejasree Kondoj .options.copy_flabel = 0, 815178a12fbSTejasree Kondoj .options.copy_df = 0, 816178a12fbSTejasree Kondoj .options.dec_ttl = 0, 817178a12fbSTejasree Kondoj .options.ecn = 0, 818178a12fbSTejasree Kondoj .options.stats = 0, 819178a12fbSTejasree Kondoj .options.tunnel_hdr_verify = 0, 820178a12fbSTejasree Kondoj .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 821178a12fbSTejasree Kondoj .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 822178a12fbSTejasree Kondoj .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 823178a12fbSTejasree Kondoj .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 824178a12fbSTejasree Kondoj .replay_win_sz = 0, 825178a12fbSTejasree Kondoj }, 826178a12fbSTejasree Kondoj 827178a12fbSTejasree Kondoj .aead = false, 828178a12fbSTejasree Kondoj 829178a12fbSTejasree Kondoj .xform = { 830178a12fbSTejasree Kondoj .chain.cipher = { 831178a12fbSTejasree Kondoj .next = NULL, 832178a12fbSTejasree Kondoj .type = RTE_CRYPTO_SYM_XFORM_CIPHER, 833178a12fbSTejasree Kondoj .cipher = { 834178a12fbSTejasree Kondoj .op = RTE_CRYPTO_CIPHER_OP_ENCRYPT, 835178a12fbSTejasree Kondoj .algo = RTE_CRYPTO_CIPHER_AES_CBC, 836178a12fbSTejasree Kondoj .key.length = 16, 837178a12fbSTejasree Kondoj .iv.length = 16, 838178a12fbSTejasree Kondoj }, 839178a12fbSTejasree Kondoj }, 840178a12fbSTejasree Kondoj .chain.auth = { 841178a12fbSTejasree Kondoj .next = NULL, 842178a12fbSTejasree Kondoj .type = RTE_CRYPTO_SYM_XFORM_AUTH, 843178a12fbSTejasree Kondoj .auth = { 844178a12fbSTejasree Kondoj .op = RTE_CRYPTO_AUTH_OP_GENERATE, 845178a12fbSTejasree Kondoj .algo = RTE_CRYPTO_AUTH_SHA256_HMAC, 846178a12fbSTejasree Kondoj .key.length = 32, 847178a12fbSTejasree Kondoj .digest_length = 16, 848178a12fbSTejasree Kondoj }, 849178a12fbSTejasree Kondoj }, 850178a12fbSTejasree Kondoj }, 851178a12fbSTejasree Kondoj }; 852178a12fbSTejasree Kondoj 85350069f3cSTejasree Kondoj struct ipsec_test_data pkt_aes_128_cbc_hmac_sha384 = { 85450069f3cSTejasree Kondoj .key = { 85550069f3cSTejasree Kondoj .data = { 85650069f3cSTejasree Kondoj 0x00, 0x04, 0x05, 0x01, 0x23, 0x00, 0x00, 0x00, 85750069f3cSTejasree Kondoj 0x00, 0x00, 0x0a, 0x0b, 0x0c, 0x0f, 0x00, 0x00, 85850069f3cSTejasree Kondoj }, 85950069f3cSTejasree Kondoj }, 86050069f3cSTejasree Kondoj .auth_key = { 86150069f3cSTejasree Kondoj .data = { 86250069f3cSTejasree Kondoj 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x04, 86350069f3cSTejasree Kondoj 0x0a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 86450069f3cSTejasree Kondoj 0xde, 0x34, 0x56, 0x00, 0x00, 0x00, 0x78, 0x00, 86550069f3cSTejasree Kondoj 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x02, 86650069f3cSTejasree Kondoj 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x34, 86750069f3cSTejasree Kondoj 0x1a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 86850069f3cSTejasree Kondoj }, 86950069f3cSTejasree Kondoj }, 87050069f3cSTejasree Kondoj .input_text = { 87150069f3cSTejasree Kondoj .data = { 87250069f3cSTejasree Kondoj /* IP */ 87350069f3cSTejasree Kondoj 0x45, 0x00, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 87450069f3cSTejasree Kondoj 0x1f, 0x11, 0x17, 0x8b, 0xc0, 0xa8, 0x01, 0x6f, 87550069f3cSTejasree Kondoj 0xc0, 0xa8, 0x01, 0x70, 87650069f3cSTejasree Kondoj 87750069f3cSTejasree Kondoj /* UDP */ 87850069f3cSTejasree Kondoj 0x00, 0x09, 0x00, 0x09, 0x00, 0x1e, 0x00, 0x00, 87950069f3cSTejasree Kondoj 0xbe, 0x9b, 0xe9, 0x55, 0x00, 0x00, 0x00, 0x21, 88050069f3cSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 88150069f3cSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 88250069f3cSTejasree Kondoj }, 88350069f3cSTejasree Kondoj .len = 50, 88450069f3cSTejasree Kondoj }, 88550069f3cSTejasree Kondoj .output_text = { 88650069f3cSTejasree Kondoj .data = { 88750069f3cSTejasree Kondoj 0x45, 0x00, 0x00, 0x84, 0x00, 0x01, 0x00, 0x00, 88850069f3cSTejasree Kondoj 0x40, 0x32, 0x52, 0x45, 0x14, 0x00, 0x00, 0x01, 88950069f3cSTejasree Kondoj 0x14, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x34, 89050069f3cSTejasree Kondoj 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 89150069f3cSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 89250069f3cSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x44, 0x24, 0xb9, 0xd8, 89350069f3cSTejasree Kondoj 0x0f, 0xbe, 0xa3, 0x3f, 0xc9, 0xc0, 0xa2, 0xcb, 89450069f3cSTejasree Kondoj 0xaa, 0xda, 0x3f, 0xc6, 0x0e, 0x88, 0x75, 0x96, 89550069f3cSTejasree Kondoj 0x25, 0x50, 0x07, 0x4d, 0x52, 0xf4, 0x75, 0xec, 89650069f3cSTejasree Kondoj 0xd8, 0xcd, 0xe4, 0xcf, 0x85, 0x9a, 0xbc, 0x9e, 89750069f3cSTejasree Kondoj 0x84, 0x0f, 0xbb, 0x83, 0x72, 0x0c, 0x7f, 0x58, 89850069f3cSTejasree Kondoj 0x02, 0x46, 0xeb, 0x86, 0x6e, 0xd1, 0xcf, 0x05, 89950069f3cSTejasree Kondoj 0x6a, 0xd1, 0xd2, 0xc6, 0xb5, 0x94, 0x09, 0x0a, 90050069f3cSTejasree Kondoj 0x3e, 0xdf, 0x09, 0xfb, 0x0a, 0xb7, 0xb4, 0x97, 90150069f3cSTejasree Kondoj 0x17, 0xf2, 0x20, 0xaf, 0xfa, 0x90, 0x92, 0x4d, 90250069f3cSTejasree Kondoj 0xe4, 0x0e, 0xef, 0x5a, 0xe8, 0x43, 0x46, 0xa8, 90350069f3cSTejasree Kondoj 0x5e, 0x3f, 0x52, 0x46, 90450069f3cSTejasree Kondoj }, 90550069f3cSTejasree Kondoj .len = 132, 90650069f3cSTejasree Kondoj }, 90750069f3cSTejasree Kondoj .iv = { 90850069f3cSTejasree Kondoj .data = { 90950069f3cSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 91050069f3cSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 91150069f3cSTejasree Kondoj }, 91250069f3cSTejasree Kondoj }, 91350069f3cSTejasree Kondoj 91450069f3cSTejasree Kondoj .ipsec_xform = { 91550069f3cSTejasree Kondoj .spi = 52, 91650069f3cSTejasree Kondoj .options.esn = 0, 91750069f3cSTejasree Kondoj .options.udp_encap = 0, 91850069f3cSTejasree Kondoj .options.copy_dscp = 0, 91950069f3cSTejasree Kondoj .options.copy_flabel = 0, 92050069f3cSTejasree Kondoj .options.copy_df = 0, 92150069f3cSTejasree Kondoj .options.dec_ttl = 0, 92250069f3cSTejasree Kondoj .options.ecn = 0, 92350069f3cSTejasree Kondoj .options.stats = 0, 92450069f3cSTejasree Kondoj .options.tunnel_hdr_verify = 0, 92550069f3cSTejasree Kondoj .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 92650069f3cSTejasree Kondoj .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 92750069f3cSTejasree Kondoj .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 92850069f3cSTejasree Kondoj .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 92950069f3cSTejasree Kondoj .replay_win_sz = 0, 93050069f3cSTejasree Kondoj }, 93150069f3cSTejasree Kondoj 93250069f3cSTejasree Kondoj .aead = false, 93350069f3cSTejasree Kondoj 93450069f3cSTejasree Kondoj .xform = { 93550069f3cSTejasree Kondoj .chain.cipher = { 93650069f3cSTejasree Kondoj .next = NULL, 93750069f3cSTejasree Kondoj .type = RTE_CRYPTO_SYM_XFORM_CIPHER, 93850069f3cSTejasree Kondoj .cipher = { 93950069f3cSTejasree Kondoj .op = RTE_CRYPTO_CIPHER_OP_ENCRYPT, 94050069f3cSTejasree Kondoj .algo = RTE_CRYPTO_CIPHER_AES_CBC, 94150069f3cSTejasree Kondoj .key.length = 16, 94250069f3cSTejasree Kondoj .iv.length = 16, 94350069f3cSTejasree Kondoj }, 94450069f3cSTejasree Kondoj }, 94550069f3cSTejasree Kondoj .chain.auth = { 94650069f3cSTejasree Kondoj .next = NULL, 94750069f3cSTejasree Kondoj .type = RTE_CRYPTO_SYM_XFORM_AUTH, 94850069f3cSTejasree Kondoj .auth = { 94950069f3cSTejasree Kondoj .op = RTE_CRYPTO_AUTH_OP_GENERATE, 95050069f3cSTejasree Kondoj .algo = RTE_CRYPTO_AUTH_SHA384_HMAC, 95150069f3cSTejasree Kondoj .key.length = 48, 95250069f3cSTejasree Kondoj .digest_length = 24, 95350069f3cSTejasree Kondoj }, 95450069f3cSTejasree Kondoj }, 95550069f3cSTejasree Kondoj }, 95650069f3cSTejasree Kondoj }; 95750069f3cSTejasree Kondoj 95850069f3cSTejasree Kondoj struct ipsec_test_data pkt_aes_128_cbc_hmac_sha512 = { 95950069f3cSTejasree Kondoj .key = { 96050069f3cSTejasree Kondoj .data = { 96150069f3cSTejasree Kondoj 0x00, 0x04, 0x05, 0x01, 0x23, 0x00, 0x00, 0x00, 96250069f3cSTejasree Kondoj 0x00, 0x00, 0x0a, 0x0b, 0x0c, 0x0f, 0x00, 0x00, 96350069f3cSTejasree Kondoj }, 96450069f3cSTejasree Kondoj }, 96550069f3cSTejasree Kondoj .auth_key = { 96650069f3cSTejasree Kondoj .data = { 96750069f3cSTejasree Kondoj 0xde, 0x34, 0x56, 0x00, 0x00, 0x00, 0x78, 0x00, 96850069f3cSTejasree Kondoj 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 96950069f3cSTejasree Kondoj 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x04, 97050069f3cSTejasree Kondoj 0x0a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 97150069f3cSTejasree Kondoj 0xde, 0x34, 0x56, 0x00, 0x00, 0x00, 0x78, 0x00, 97250069f3cSTejasree Kondoj 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x02, 97350069f3cSTejasree Kondoj 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x34, 97450069f3cSTejasree Kondoj 0x1a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 97550069f3cSTejasree Kondoj }, 97650069f3cSTejasree Kondoj }, 97750069f3cSTejasree Kondoj .input_text = { 97850069f3cSTejasree Kondoj .data = { 97950069f3cSTejasree Kondoj /* IP */ 98050069f3cSTejasree Kondoj 0x45, 0x00, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 98150069f3cSTejasree Kondoj 0x1f, 0x11, 0x17, 0x8b, 0xc0, 0xa8, 0x01, 0x6f, 98250069f3cSTejasree Kondoj 0xc0, 0xa8, 0x01, 0x70, 98350069f3cSTejasree Kondoj 98450069f3cSTejasree Kondoj /* UDP */ 98550069f3cSTejasree Kondoj 0x00, 0x09, 0x00, 0x09, 0x00, 0x1e, 0x00, 0x00, 98650069f3cSTejasree Kondoj 0xbe, 0x9b, 0xe9, 0x55, 0x00, 0x00, 0x00, 0x21, 98750069f3cSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 98850069f3cSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 98950069f3cSTejasree Kondoj }, 99050069f3cSTejasree Kondoj .len = 50, 99150069f3cSTejasree Kondoj }, 99250069f3cSTejasree Kondoj .output_text = { 99350069f3cSTejasree Kondoj .data = { 99450069f3cSTejasree Kondoj 0x45, 0x00, 0x00, 0x8c, 0x00, 0x01, 0x00, 0x00, 99550069f3cSTejasree Kondoj 0x40, 0x32, 0x52, 0x3d, 0x14, 0x00, 0x00, 0x01, 99650069f3cSTejasree Kondoj 0x14, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x34, 99750069f3cSTejasree Kondoj 0x00, 0x00, 0x00, 0x01, 0x42, 0x32, 0x76, 0x65, 99850069f3cSTejasree Kondoj 0x45, 0x35, 0x24, 0x41, 0xf0, 0xc1, 0xb4, 0x40, 99950069f3cSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0xd0, 0x32, 0x23, 0xf7, 100050069f3cSTejasree Kondoj 0xcd, 0x3d, 0xdb, 0xd5, 0x70, 0x19, 0x1b, 0xf5, 100150069f3cSTejasree Kondoj 0x8f, 0xeb, 0x98, 0x3d, 0x41, 0x5c, 0x28, 0xdd, 100250069f3cSTejasree Kondoj 0xfd, 0xcc, 0xdd, 0xa2, 0xeb, 0x43, 0x4c, 0x13, 100350069f3cSTejasree Kondoj 0x2d, 0xa1, 0x98, 0x87, 0x92, 0x3a, 0x1f, 0x67, 100450069f3cSTejasree Kondoj 0x20, 0x8d, 0x9e, 0x8e, 0x51, 0x21, 0x4c, 0xa9, 100550069f3cSTejasree Kondoj 0xff, 0xad, 0xfb, 0x5d, 0x57, 0xa3, 0x16, 0x91, 100650069f3cSTejasree Kondoj 0xaa, 0x75, 0xc7, 0x28, 0x42, 0x4e, 0x8f, 0x8e, 100750069f3cSTejasree Kondoj 0x84, 0x37, 0x94, 0x09, 0x74, 0xfa, 0x70, 0x0d, 100850069f3cSTejasree Kondoj 0xd1, 0x37, 0xe2, 0x7c, 0x54, 0xdd, 0x2e, 0xb4, 100950069f3cSTejasree Kondoj 0xf4, 0x54, 0x4b, 0x12, 0xe0, 0xaf, 0x4a, 0x0a, 101050069f3cSTejasree Kondoj 0x0b, 0x52, 0x57, 0x9d, 0x36, 0xdc, 0xac, 0x02, 101150069f3cSTejasree Kondoj 0xfb, 0x55, 0x34, 0x05, 101250069f3cSTejasree Kondoj }, 101350069f3cSTejasree Kondoj .len = 140, 101450069f3cSTejasree Kondoj }, 101550069f3cSTejasree Kondoj .iv = { 101650069f3cSTejasree Kondoj .data = { 101750069f3cSTejasree Kondoj 0x42, 0x32, 0x76, 0x65, 0x45, 0x35, 0x24, 0x41, 101850069f3cSTejasree Kondoj 0xf0, 0xc1, 0xb4, 0x40, 0x00, 0x00, 0x00, 0x00, 101950069f3cSTejasree Kondoj }, 102050069f3cSTejasree Kondoj }, 102150069f3cSTejasree Kondoj 102250069f3cSTejasree Kondoj .ipsec_xform = { 102350069f3cSTejasree Kondoj .spi = 52, 102450069f3cSTejasree Kondoj .options.esn = 0, 102550069f3cSTejasree Kondoj .options.udp_encap = 0, 102650069f3cSTejasree Kondoj .options.copy_dscp = 0, 102750069f3cSTejasree Kondoj .options.copy_flabel = 0, 102850069f3cSTejasree Kondoj .options.copy_df = 0, 102950069f3cSTejasree Kondoj .options.dec_ttl = 0, 103050069f3cSTejasree Kondoj .options.ecn = 0, 103150069f3cSTejasree Kondoj .options.stats = 0, 103250069f3cSTejasree Kondoj .options.tunnel_hdr_verify = 0, 103350069f3cSTejasree Kondoj .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 103450069f3cSTejasree Kondoj .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 103550069f3cSTejasree Kondoj .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 103650069f3cSTejasree Kondoj .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 103750069f3cSTejasree Kondoj .replay_win_sz = 0, 103850069f3cSTejasree Kondoj }, 103950069f3cSTejasree Kondoj 104050069f3cSTejasree Kondoj .aead = false, 104150069f3cSTejasree Kondoj 104250069f3cSTejasree Kondoj .xform = { 104350069f3cSTejasree Kondoj .chain.cipher = { 104450069f3cSTejasree Kondoj .next = NULL, 104550069f3cSTejasree Kondoj .type = RTE_CRYPTO_SYM_XFORM_CIPHER, 104650069f3cSTejasree Kondoj .cipher = { 104750069f3cSTejasree Kondoj .op = RTE_CRYPTO_CIPHER_OP_ENCRYPT, 104850069f3cSTejasree Kondoj .algo = RTE_CRYPTO_CIPHER_AES_CBC, 104950069f3cSTejasree Kondoj .key.length = 16, 105050069f3cSTejasree Kondoj .iv.length = 16, 105150069f3cSTejasree Kondoj }, 105250069f3cSTejasree Kondoj }, 105350069f3cSTejasree Kondoj .chain.auth = { 105450069f3cSTejasree Kondoj .next = NULL, 105550069f3cSTejasree Kondoj .type = RTE_CRYPTO_SYM_XFORM_AUTH, 105650069f3cSTejasree Kondoj .auth = { 105750069f3cSTejasree Kondoj .op = RTE_CRYPTO_AUTH_OP_GENERATE, 105850069f3cSTejasree Kondoj .algo = RTE_CRYPTO_AUTH_SHA512_HMAC, 105950069f3cSTejasree Kondoj .key.length = 64, 106050069f3cSTejasree Kondoj .digest_length = 32, 106150069f3cSTejasree Kondoj }, 106250069f3cSTejasree Kondoj }, 106350069f3cSTejasree Kondoj }, 106450069f3cSTejasree Kondoj }; 106550069f3cSTejasree Kondoj 1066d7001863SVidya Sagar Velumuri struct ipsec_test_data pkt_3des_cbc_hmac_sha256 = { 1067d7001863SVidya Sagar Velumuri .key = { 1068d7001863SVidya Sagar Velumuri .data = { 1069d7001863SVidya Sagar Velumuri 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2, 1070d7001863SVidya Sagar Velumuri 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A, 1071d7001863SVidya Sagar Velumuri 0x00, 0x04, 0x05, 0x01, 0x23, 0x00, 0x00, 0x00, 1072d7001863SVidya Sagar Velumuri }, 1073d7001863SVidya Sagar Velumuri }, 1074d7001863SVidya Sagar Velumuri .auth_key = { 1075d7001863SVidya Sagar Velumuri .data = { 1076d7001863SVidya Sagar Velumuri 0xde, 0x34, 0x56, 0x00, 0x00, 0x00, 0x78, 0x00, 1077d7001863SVidya Sagar Velumuri 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 1078d7001863SVidya Sagar Velumuri 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x04, 1079d7001863SVidya Sagar Velumuri 0x0a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 1080d7001863SVidya Sagar Velumuri }, 1081d7001863SVidya Sagar Velumuri }, 1082d7001863SVidya Sagar Velumuri .input_text = { 1083d7001863SVidya Sagar Velumuri .data = { 1084d7001863SVidya Sagar Velumuri /* IP */ 1085d7001863SVidya Sagar Velumuri 0x45, 0x00, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 1086d7001863SVidya Sagar Velumuri 0x1f, 0x11, 0x17, 0x8b, 0xc0, 0xa8, 0x01, 0x6f, 1087d7001863SVidya Sagar Velumuri 0xc0, 0xa8, 0x01, 0x70, 1088d7001863SVidya Sagar Velumuri 1089d7001863SVidya Sagar Velumuri /* UDP */ 1090d7001863SVidya Sagar Velumuri 0x00, 0x09, 0x00, 0x09, 0x00, 0x1e, 0x00, 0x00, 1091d7001863SVidya Sagar Velumuri 0xbe, 0x9b, 0xe9, 0x55, 0x00, 0x00, 0x00, 0x21, 1092d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 1093d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 1094d7001863SVidya Sagar Velumuri }, 1095d7001863SVidya Sagar Velumuri .len = 50, 1096d7001863SVidya Sagar Velumuri }, 1097d7001863SVidya Sagar Velumuri .output_text = { 1098d7001863SVidya Sagar Velumuri .data = { 1099d7001863SVidya Sagar Velumuri /* IP - outer header */ 1100d7001863SVidya Sagar Velumuri 0x45, 0x00, 0x00, 0x6c, 0x00, 0x01, 0x00, 0x00, 1101d7001863SVidya Sagar Velumuri 0x40, 0x32, 0xf7, 0x0b, 0xc0, 0xa8, 0x01, 0x02, 1102d7001863SVidya Sagar Velumuri 0xc0, 0xa8, 0x01, 0x01, 1103d7001863SVidya Sagar Velumuri 1104d7001863SVidya Sagar Velumuri /* ESP */ 1105d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x01, 1106d7001863SVidya Sagar Velumuri 1107d7001863SVidya Sagar Velumuri /* IV */ 1108d7001863SVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 1109d7001863SVidya Sagar Velumuri 1110d7001863SVidya Sagar Velumuri /* Data */ 1111d7001863SVidya Sagar Velumuri 0x45, 0x2a, 0x7d, 0xe8, 0x96, 0x8b, 0x6e, 0x9f, 1112d7001863SVidya Sagar Velumuri 0x8e, 0xa8, 0x87, 0xf6, 0x12, 0x41, 0x61, 0x6e, 1113d7001863SVidya Sagar Velumuri 0x42, 0xae, 0xd4, 0x71, 0x2a, 0x7d, 0xde, 0x46, 1114d7001863SVidya Sagar Velumuri 0x24, 0xa7, 0xc8, 0xd1, 0x8a, 0x78, 0x5f, 0xb8, 1115d7001863SVidya Sagar Velumuri 0xb1, 0x43, 0xec, 0x3b, 0x95, 0x9c, 0x54, 0x7b, 1116d7001863SVidya Sagar Velumuri 0x0c, 0x47, 0x80, 0xfb, 0xff, 0x18, 0x54, 0x87, 1117d7001863SVidya Sagar Velumuri 0x16, 0x22, 0x88, 0x06, 0xcf, 0xfd, 0xf6, 0x01, 1118d7001863SVidya Sagar Velumuri 0x02, 0x58, 0x94, 0x34, 0xc9, 0xbc, 0xea, 0xb8, 1119d7001863SVidya Sagar Velumuri 0xc9, 0x75, 0xf6, 0xc4, 0x8b, 0x46, 0x69, 0x3c, 1120d7001863SVidya Sagar Velumuri }, 1121d7001863SVidya Sagar Velumuri .len = 108, 1122d7001863SVidya Sagar Velumuri }, 1123d7001863SVidya Sagar Velumuri .iv = { 1124d7001863SVidya Sagar Velumuri .data = { 1125d7001863SVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 1126d7001863SVidya Sagar Velumuri }, 1127d7001863SVidya Sagar Velumuri }, 1128d7001863SVidya Sagar Velumuri 1129d7001863SVidya Sagar Velumuri .ipsec_xform = { 1130d7001863SVidya Sagar Velumuri .spi = 52, 1131d7001863SVidya Sagar Velumuri .options.esn = 0, 1132d7001863SVidya Sagar Velumuri .options.udp_encap = 0, 1133d7001863SVidya Sagar Velumuri .options.copy_dscp = 0, 1134d7001863SVidya Sagar Velumuri .options.copy_flabel = 0, 1135d7001863SVidya Sagar Velumuri .options.copy_df = 0, 1136d7001863SVidya Sagar Velumuri .options.dec_ttl = 0, 1137d7001863SVidya Sagar Velumuri .options.ecn = 0, 1138d7001863SVidya Sagar Velumuri .options.stats = 0, 1139d7001863SVidya Sagar Velumuri .options.tunnel_hdr_verify = 0, 1140d7001863SVidya Sagar Velumuri .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 1141d7001863SVidya Sagar Velumuri .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 1142d7001863SVidya Sagar Velumuri .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 1143d7001863SVidya Sagar Velumuri .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 1144d7001863SVidya Sagar Velumuri .replay_win_sz = 0, 1145d7001863SVidya Sagar Velumuri }, 1146d7001863SVidya Sagar Velumuri 1147d7001863SVidya Sagar Velumuri .aead = false, 1148d7001863SVidya Sagar Velumuri 1149d7001863SVidya Sagar Velumuri .xform = { 1150d7001863SVidya Sagar Velumuri .chain.cipher = { 1151d7001863SVidya Sagar Velumuri .next = NULL, 1152d7001863SVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_CIPHER, 1153d7001863SVidya Sagar Velumuri .cipher = { 1154d7001863SVidya Sagar Velumuri .op = RTE_CRYPTO_CIPHER_OP_ENCRYPT, 1155d7001863SVidya Sagar Velumuri .algo = RTE_CRYPTO_CIPHER_3DES_CBC, 1156d7001863SVidya Sagar Velumuri .key.length = 24, 1157d7001863SVidya Sagar Velumuri .iv.length = 8, 1158d7001863SVidya Sagar Velumuri }, 1159d7001863SVidya Sagar Velumuri }, 1160d7001863SVidya Sagar Velumuri .chain.auth = { 1161d7001863SVidya Sagar Velumuri .next = NULL, 1162d7001863SVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_AUTH, 1163d7001863SVidya Sagar Velumuri .auth = { 1164d7001863SVidya Sagar Velumuri .op = RTE_CRYPTO_AUTH_OP_GENERATE, 1165d7001863SVidya Sagar Velumuri .algo = RTE_CRYPTO_AUTH_SHA256_HMAC, 1166d7001863SVidya Sagar Velumuri .key.length = 32, 1167d7001863SVidya Sagar Velumuri .digest_length = 16, 1168d7001863SVidya Sagar Velumuri }, 1169d7001863SVidya Sagar Velumuri }, 1170d7001863SVidya Sagar Velumuri }, 1171d7001863SVidya Sagar Velumuri }; 1172d7001863SVidya Sagar Velumuri 1173d7001863SVidya Sagar Velumuri struct ipsec_test_data pkt_3des_cbc_hmac_sha384 = { 1174d7001863SVidya Sagar Velumuri .key = { 1175d7001863SVidya Sagar Velumuri .data = { 1176d7001863SVidya Sagar Velumuri 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2, 1177d7001863SVidya Sagar Velumuri 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A, 1178d7001863SVidya Sagar Velumuri 0x00, 0x04, 0x05, 0x01, 0x23, 0x00, 0x00, 0x00, 1179d7001863SVidya Sagar Velumuri }, 1180d7001863SVidya Sagar Velumuri }, 1181d7001863SVidya Sagar Velumuri .auth_key = { 1182d7001863SVidya Sagar Velumuri .data = { 1183d7001863SVidya Sagar Velumuri 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x04, 1184d7001863SVidya Sagar Velumuri 0x0a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 1185d7001863SVidya Sagar Velumuri 0xde, 0x34, 0x56, 0x00, 0x00, 0x00, 0x78, 0x00, 1186d7001863SVidya Sagar Velumuri 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x02, 1187d7001863SVidya Sagar Velumuri 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x34, 1188d7001863SVidya Sagar Velumuri 0x1a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 1189d7001863SVidya Sagar Velumuri }, 1190d7001863SVidya Sagar Velumuri }, 1191d7001863SVidya Sagar Velumuri .input_text = { 1192d7001863SVidya Sagar Velumuri .data = { 1193d7001863SVidya Sagar Velumuri /* IP */ 1194d7001863SVidya Sagar Velumuri 0x45, 0x00, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 1195d7001863SVidya Sagar Velumuri 0x1f, 0x11, 0x17, 0x8b, 0xc0, 0xa8, 0x01, 0x6f, 1196d7001863SVidya Sagar Velumuri 0xc0, 0xa8, 0x01, 0x70, 1197d7001863SVidya Sagar Velumuri 1198d7001863SVidya Sagar Velumuri /* UDP */ 1199d7001863SVidya Sagar Velumuri 0x00, 0x09, 0x00, 0x09, 0x00, 0x1e, 0x00, 0x00, 1200d7001863SVidya Sagar Velumuri 0xbe, 0x9b, 0xe9, 0x55, 0x00, 0x00, 0x00, 0x21, 1201d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 1202d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 1203d7001863SVidya Sagar Velumuri }, 1204d7001863SVidya Sagar Velumuri .len = 50, 1205d7001863SVidya Sagar Velumuri }, 1206d7001863SVidya Sagar Velumuri .output_text = { 1207d7001863SVidya Sagar Velumuri .data = { 1208d7001863SVidya Sagar Velumuri /* IP - outer header */ 1209d7001863SVidya Sagar Velumuri 0x45, 0x00, 0x00, 0x74, 0x00, 0x01, 0x00, 0x00, 1210d7001863SVidya Sagar Velumuri 0x40, 0x32, 0xf7, 0x03, 0xc0, 0xa8, 0x01, 0x02, 1211d7001863SVidya Sagar Velumuri 0xc0, 0xa8, 0x01, 0x01, 1212d7001863SVidya Sagar Velumuri 1213d7001863SVidya Sagar Velumuri /* ESP */ 1214d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x01, 1215d7001863SVidya Sagar Velumuri 1216d7001863SVidya Sagar Velumuri /* IV */ 1217d7001863SVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 1218d7001863SVidya Sagar Velumuri 1219d7001863SVidya Sagar Velumuri /* Data */ 1220d7001863SVidya Sagar Velumuri 0x45, 0x2a, 0x7d, 0xe8, 0x96, 0x8b, 0x6e, 0x9f, 1221d7001863SVidya Sagar Velumuri 0x8e, 0xa8, 0x87, 0xf6, 0x12, 0x41, 0x61, 0x6e, 1222d7001863SVidya Sagar Velumuri 0x42, 0xae, 0xd4, 0x71, 0x2a, 0x7d, 0xde, 0x46, 1223d7001863SVidya Sagar Velumuri 0x24, 0xa7, 0xc8, 0xd1, 0x8a, 0x78, 0x5f, 0xb8, 1224d7001863SVidya Sagar Velumuri 0xb1, 0x43, 0xec, 0x3b, 0x95, 0x9c, 0x54, 0x7b, 1225d7001863SVidya Sagar Velumuri 0x0c, 0x47, 0x80, 0xfb, 0xff, 0x18, 0x54, 0x87, 1226d7001863SVidya Sagar Velumuri 0x16, 0x22, 0x88, 0x06, 0xcf, 0xfd, 0xf6, 0x01, 1227d7001863SVidya Sagar Velumuri 0x27, 0x34, 0x80, 0xa0, 0xc0, 0xd8, 0x97, 0xa4, 1228d7001863SVidya Sagar Velumuri 0x67, 0xf5, 0x6b, 0xd4, 0x2c, 0x74, 0xc4, 0x51, 1229d7001863SVidya Sagar Velumuri 0xed, 0x0d, 0xae, 0x23, 0xbb, 0xfa, 0xfb, 0x91, 1230d7001863SVidya Sagar Velumuri }, 1231d7001863SVidya Sagar Velumuri .len = 116, 1232d7001863SVidya Sagar Velumuri }, 1233d7001863SVidya Sagar Velumuri .iv = { 1234d7001863SVidya Sagar Velumuri .data = { 1235d7001863SVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 1236d7001863SVidya Sagar Velumuri }, 1237d7001863SVidya Sagar Velumuri }, 1238d7001863SVidya Sagar Velumuri 1239d7001863SVidya Sagar Velumuri .ipsec_xform = { 1240d7001863SVidya Sagar Velumuri .spi = 52, 1241d7001863SVidya Sagar Velumuri .options.esn = 0, 1242d7001863SVidya Sagar Velumuri .options.udp_encap = 0, 1243d7001863SVidya Sagar Velumuri .options.copy_dscp = 0, 1244d7001863SVidya Sagar Velumuri .options.copy_flabel = 0, 1245d7001863SVidya Sagar Velumuri .options.copy_df = 0, 1246d7001863SVidya Sagar Velumuri .options.dec_ttl = 0, 1247d7001863SVidya Sagar Velumuri .options.ecn = 0, 1248d7001863SVidya Sagar Velumuri .options.stats = 0, 1249d7001863SVidya Sagar Velumuri .options.tunnel_hdr_verify = 0, 1250d7001863SVidya Sagar Velumuri .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 1251d7001863SVidya Sagar Velumuri .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 1252d7001863SVidya Sagar Velumuri .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 1253d7001863SVidya Sagar Velumuri .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 1254d7001863SVidya Sagar Velumuri .replay_win_sz = 0, 1255d7001863SVidya Sagar Velumuri }, 1256d7001863SVidya Sagar Velumuri 1257d7001863SVidya Sagar Velumuri .aead = false, 1258d7001863SVidya Sagar Velumuri 1259d7001863SVidya Sagar Velumuri .xform = { 1260d7001863SVidya Sagar Velumuri .chain.cipher = { 1261d7001863SVidya Sagar Velumuri .next = NULL, 1262d7001863SVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_CIPHER, 1263d7001863SVidya Sagar Velumuri .cipher = { 1264d7001863SVidya Sagar Velumuri .op = RTE_CRYPTO_CIPHER_OP_ENCRYPT, 1265d7001863SVidya Sagar Velumuri .algo = RTE_CRYPTO_CIPHER_3DES_CBC, 1266d7001863SVidya Sagar Velumuri .key.length = 24, 1267d7001863SVidya Sagar Velumuri .iv.length = 8, 1268d7001863SVidya Sagar Velumuri }, 1269d7001863SVidya Sagar Velumuri }, 1270d7001863SVidya Sagar Velumuri .chain.auth = { 1271d7001863SVidya Sagar Velumuri .next = NULL, 1272d7001863SVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_AUTH, 1273d7001863SVidya Sagar Velumuri .auth = { 1274d7001863SVidya Sagar Velumuri .op = RTE_CRYPTO_AUTH_OP_GENERATE, 1275d7001863SVidya Sagar Velumuri .algo = RTE_CRYPTO_AUTH_SHA384_HMAC, 1276d7001863SVidya Sagar Velumuri .key.length = 48, 1277d7001863SVidya Sagar Velumuri .digest_length = 24, 1278d7001863SVidya Sagar Velumuri }, 1279d7001863SVidya Sagar Velumuri }, 1280d7001863SVidya Sagar Velumuri }, 1281d7001863SVidya Sagar Velumuri }; 1282d7001863SVidya Sagar Velumuri 1283d7001863SVidya Sagar Velumuri struct ipsec_test_data pkt_3des_cbc_hmac_sha512 = { 1284d7001863SVidya Sagar Velumuri .key = { 1285d7001863SVidya Sagar Velumuri .data = { 1286d7001863SVidya Sagar Velumuri 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2, 1287d7001863SVidya Sagar Velumuri 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A, 1288d7001863SVidya Sagar Velumuri 0x00, 0x04, 0x05, 0x01, 0x23, 0x00, 0x00, 0x00, 1289d7001863SVidya Sagar Velumuri }, 1290d7001863SVidya Sagar Velumuri }, 1291d7001863SVidya Sagar Velumuri .auth_key = { 1292d7001863SVidya Sagar Velumuri .data = { 1293d7001863SVidya Sagar Velumuri 0xde, 0x34, 0x56, 0x00, 0x00, 0x00, 0x78, 0x00, 1294d7001863SVidya Sagar Velumuri 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 1295d7001863SVidya Sagar Velumuri 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x04, 1296d7001863SVidya Sagar Velumuri 0x0a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 1297d7001863SVidya Sagar Velumuri 0xde, 0x34, 0x56, 0x00, 0x00, 0x00, 0x78, 0x00, 1298d7001863SVidya Sagar Velumuri 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x02, 1299d7001863SVidya Sagar Velumuri 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x34, 1300d7001863SVidya Sagar Velumuri 0x1a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 1301d7001863SVidya Sagar Velumuri }, 1302d7001863SVidya Sagar Velumuri }, 1303d7001863SVidya Sagar Velumuri .input_text = { 1304d7001863SVidya Sagar Velumuri .data = { 1305d7001863SVidya Sagar Velumuri /* IP */ 1306d7001863SVidya Sagar Velumuri 0x45, 0x00, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 1307d7001863SVidya Sagar Velumuri 0x1f, 0x11, 0x17, 0x8b, 0xc0, 0xa8, 0x01, 0x6f, 1308d7001863SVidya Sagar Velumuri 0xc0, 0xa8, 0x01, 0x70, 1309d7001863SVidya Sagar Velumuri 1310d7001863SVidya Sagar Velumuri /* UDP */ 1311d7001863SVidya Sagar Velumuri 0x00, 0x09, 0x00, 0x09, 0x00, 0x1e, 0x00, 0x00, 1312d7001863SVidya Sagar Velumuri 0xbe, 0x9b, 0xe9, 0x55, 0x00, 0x00, 0x00, 0x21, 1313d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 1314d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 1315d7001863SVidya Sagar Velumuri }, 1316d7001863SVidya Sagar Velumuri .len = 50, 1317d7001863SVidya Sagar Velumuri }, 1318d7001863SVidya Sagar Velumuri .output_text = { 1319d7001863SVidya Sagar Velumuri .data = { 1320d7001863SVidya Sagar Velumuri /* IP - outer header */ 1321d7001863SVidya Sagar Velumuri 0x45, 0x00, 0x00, 0x7c, 0x00, 0x01, 0x00, 0x00, 1322d7001863SVidya Sagar Velumuri 0x40, 0x32, 0xf6, 0xfb, 0xc0, 0xa8, 0x01, 0x02, 1323d7001863SVidya Sagar Velumuri 0xc0, 0xa8, 0x01, 0x01, 1324d7001863SVidya Sagar Velumuri 1325d7001863SVidya Sagar Velumuri /* ESP */ 1326d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x01, 1327d7001863SVidya Sagar Velumuri 1328d7001863SVidya Sagar Velumuri /* IV */ 1329d7001863SVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 1330d7001863SVidya Sagar Velumuri 1331d7001863SVidya Sagar Velumuri /* Data */ 1332d7001863SVidya Sagar Velumuri 0x45, 0x2a, 0x7d, 0xe8, 0x96, 0x8b, 0x6e, 0x9f, 1333d7001863SVidya Sagar Velumuri 0x8e, 0xa8, 0x87, 0xf6, 0x12, 0x41, 0x61, 0x6e, 1334d7001863SVidya Sagar Velumuri 0x42, 0xae, 0xd4, 0x71, 0x2a, 0x7d, 0xde, 0x46, 1335d7001863SVidya Sagar Velumuri 0x24, 0xa7, 0xc8, 0xd1, 0x8a, 0x78, 0x5f, 0xb8, 1336d7001863SVidya Sagar Velumuri 0xb1, 0x43, 0xec, 0x3b, 0x95, 0x9c, 0x54, 0x7b, 1337d7001863SVidya Sagar Velumuri 0x0c, 0x47, 0x80, 0xfb, 0xff, 0x18, 0x54, 0x87, 1338d7001863SVidya Sagar Velumuri 0x16, 0x22, 0x88, 0x06, 0xcf, 0xfd, 0xf6, 0x01, 1339d7001863SVidya Sagar Velumuri 0xe7, 0x32, 0x8b, 0x4c, 0x9f, 0xe4, 0x54, 0x0d, 1340d7001863SVidya Sagar Velumuri 0x37, 0xec, 0xaa, 0x4b, 0x2a, 0x32, 0xfc, 0x4c, 1341d7001863SVidya Sagar Velumuri 0x04, 0xeb, 0x26, 0x53, 0x24, 0x4c, 0xcc, 0xf7, 1342d7001863SVidya Sagar Velumuri 0xeb, 0x24, 0x76, 0x42, 0xb4, 0x0c, 0xbc, 0xd4, 1343d7001863SVidya Sagar Velumuri }, 1344d7001863SVidya Sagar Velumuri .len = 124, 1345d7001863SVidya Sagar Velumuri }, 1346d7001863SVidya Sagar Velumuri .iv = { 1347d7001863SVidya Sagar Velumuri .data = { 1348d7001863SVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 1349d7001863SVidya Sagar Velumuri }, 1350d7001863SVidya Sagar Velumuri }, 1351d7001863SVidya Sagar Velumuri 1352d7001863SVidya Sagar Velumuri .ipsec_xform = { 1353d7001863SVidya Sagar Velumuri .spi = 52, 1354d7001863SVidya Sagar Velumuri .options.esn = 0, 1355d7001863SVidya Sagar Velumuri .options.udp_encap = 0, 1356d7001863SVidya Sagar Velumuri .options.copy_dscp = 0, 1357d7001863SVidya Sagar Velumuri .options.copy_flabel = 0, 1358d7001863SVidya Sagar Velumuri .options.copy_df = 0, 1359d7001863SVidya Sagar Velumuri .options.dec_ttl = 0, 1360d7001863SVidya Sagar Velumuri .options.ecn = 0, 1361d7001863SVidya Sagar Velumuri .options.stats = 0, 1362d7001863SVidya Sagar Velumuri .options.tunnel_hdr_verify = 0, 1363d7001863SVidya Sagar Velumuri .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 1364d7001863SVidya Sagar Velumuri .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 1365d7001863SVidya Sagar Velumuri .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 1366d7001863SVidya Sagar Velumuri .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 1367d7001863SVidya Sagar Velumuri .replay_win_sz = 0, 1368d7001863SVidya Sagar Velumuri }, 1369d7001863SVidya Sagar Velumuri 1370d7001863SVidya Sagar Velumuri .aead = false, 1371d7001863SVidya Sagar Velumuri 1372d7001863SVidya Sagar Velumuri .xform = { 1373d7001863SVidya Sagar Velumuri .chain.cipher = { 1374d7001863SVidya Sagar Velumuri .next = NULL, 1375d7001863SVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_CIPHER, 1376d7001863SVidya Sagar Velumuri .cipher = { 1377d7001863SVidya Sagar Velumuri .op = RTE_CRYPTO_CIPHER_OP_ENCRYPT, 1378d7001863SVidya Sagar Velumuri .algo = RTE_CRYPTO_CIPHER_3DES_CBC, 1379d7001863SVidya Sagar Velumuri .key.length = 24, 1380d7001863SVidya Sagar Velumuri .iv.length = 8, 1381d7001863SVidya Sagar Velumuri }, 1382d7001863SVidya Sagar Velumuri }, 1383d7001863SVidya Sagar Velumuri .chain.auth = { 1384d7001863SVidya Sagar Velumuri .next = NULL, 1385d7001863SVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_AUTH, 1386d7001863SVidya Sagar Velumuri .auth = { 1387d7001863SVidya Sagar Velumuri .op = RTE_CRYPTO_AUTH_OP_GENERATE, 1388d7001863SVidya Sagar Velumuri .algo = RTE_CRYPTO_AUTH_SHA512_HMAC, 1389d7001863SVidya Sagar Velumuri .key.length = 64, 1390d7001863SVidya Sagar Velumuri .digest_length = 32, 1391d7001863SVidya Sagar Velumuri }, 1392d7001863SVidya Sagar Velumuri }, 1393d7001863SVidya Sagar Velumuri }, 1394d7001863SVidya Sagar Velumuri }; 1395d7001863SVidya Sagar Velumuri 1396d7001863SVidya Sagar Velumuri struct ipsec_test_data pkt_des_cbc_hmac_sha256 = { 1397d7001863SVidya Sagar Velumuri .key = { 1398d7001863SVidya Sagar Velumuri .data = { 1399d7001863SVidya Sagar Velumuri 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A, 1400d7001863SVidya Sagar Velumuri }, 1401d7001863SVidya Sagar Velumuri }, 1402d7001863SVidya Sagar Velumuri .auth_key = { 1403d7001863SVidya Sagar Velumuri .data = { 1404d7001863SVidya Sagar Velumuri 0xde, 0x34, 0x56, 0x00, 0x00, 0x00, 0x78, 0x00, 1405d7001863SVidya Sagar Velumuri 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 1406d7001863SVidya Sagar Velumuri 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x04, 1407d7001863SVidya Sagar Velumuri 0x0a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 1408d7001863SVidya Sagar Velumuri }, 1409d7001863SVidya Sagar Velumuri }, 1410d7001863SVidya Sagar Velumuri .input_text = { 1411d7001863SVidya Sagar Velumuri .data = { 1412d7001863SVidya Sagar Velumuri /* IP */ 1413d7001863SVidya Sagar Velumuri 0x45, 0x00, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 1414d7001863SVidya Sagar Velumuri 0x1f, 0x11, 0x17, 0x8b, 0xc0, 0xa8, 0x01, 0x6f, 1415d7001863SVidya Sagar Velumuri 0xc0, 0xa8, 0x01, 0x70, 1416d7001863SVidya Sagar Velumuri 1417d7001863SVidya Sagar Velumuri /* UDP */ 1418d7001863SVidya Sagar Velumuri 0x00, 0x09, 0x00, 0x09, 0x00, 0x1e, 0x00, 0x00, 1419d7001863SVidya Sagar Velumuri 0xbe, 0x9b, 0xe9, 0x55, 0x00, 0x00, 0x00, 0x21, 1420d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 1421d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 1422d7001863SVidya Sagar Velumuri }, 1423d7001863SVidya Sagar Velumuri .len = 50, 1424d7001863SVidya Sagar Velumuri }, 1425d7001863SVidya Sagar Velumuri .output_text = { 1426d7001863SVidya Sagar Velumuri .data = { 1427d7001863SVidya Sagar Velumuri /* IP - outer header */ 1428d7001863SVidya Sagar Velumuri 0x45, 0x00, 0x00, 0x6c, 0x00, 0x01, 0x00, 0x00, 1429d7001863SVidya Sagar Velumuri 0x40, 0x32, 0xf7, 0x0b, 0xc0, 0xa8, 0x01, 0x02, 1430d7001863SVidya Sagar Velumuri 0xc0, 0xa8, 0x01, 0x01, 1431d7001863SVidya Sagar Velumuri 1432d7001863SVidya Sagar Velumuri /* ESP */ 1433d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x3a, 0x00, 0x00, 0x00, 0x01, 1434d7001863SVidya Sagar Velumuri 1435d7001863SVidya Sagar Velumuri /* IV */ 1436d7001863SVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 1437d7001863SVidya Sagar Velumuri 1438d7001863SVidya Sagar Velumuri /* Data */ 1439d7001863SVidya Sagar Velumuri 0xdd, 0x13, 0x10, 0x3c, 0xe4, 0xb9, 0xce, 0x12, 1440d7001863SVidya Sagar Velumuri 0x73, 0x4c, 0x97, 0x00, 0x28, 0xf7, 0xa4, 0x5e, 1441d7001863SVidya Sagar Velumuri 0x02, 0x17, 0xe1, 0xc6, 0x09, 0x20, 0x90, 0xe3, 1442d7001863SVidya Sagar Velumuri 0xb6, 0x9c, 0x25, 0x6d, 0x62, 0x06, 0x60, 0x90, 1443d7001863SVidya Sagar Velumuri 0x91, 0x76, 0x94, 0xd8, 0x57, 0x56, 0xcb, 0xdd, 1444d7001863SVidya Sagar Velumuri 0x62, 0x99, 0x99, 0x98, 0xd0, 0x3a, 0x99, 0x71, 1445d7001863SVidya Sagar Velumuri 0x64, 0xcb, 0x79, 0x0c, 0x89, 0xa2, 0xf6, 0x12, 1446d7001863SVidya Sagar Velumuri 0x1f, 0x09, 0xf8, 0x36, 0x8f, 0x5e, 0x31, 0x93, 1447d7001863SVidya Sagar Velumuri 0x0a, 0xa0, 0x48, 0xee, 0x61, 0x21, 0xb5, 0x3d, 1448d7001863SVidya Sagar Velumuri }, 1449d7001863SVidya Sagar Velumuri .len = 108, 1450d7001863SVidya Sagar Velumuri }, 1451d7001863SVidya Sagar Velumuri .iv = { 1452d7001863SVidya Sagar Velumuri .data = { 1453d7001863SVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 1454d7001863SVidya Sagar Velumuri }, 1455d7001863SVidya Sagar Velumuri }, 1456d7001863SVidya Sagar Velumuri 1457d7001863SVidya Sagar Velumuri .ipsec_xform = { 1458d7001863SVidya Sagar Velumuri .spi = 58, 1459d7001863SVidya Sagar Velumuri .options.esn = 0, 1460d7001863SVidya Sagar Velumuri .options.udp_encap = 0, 1461d7001863SVidya Sagar Velumuri .options.copy_dscp = 0, 1462d7001863SVidya Sagar Velumuri .options.copy_flabel = 0, 1463d7001863SVidya Sagar Velumuri .options.copy_df = 0, 1464d7001863SVidya Sagar Velumuri .options.dec_ttl = 0, 1465d7001863SVidya Sagar Velumuri .options.ecn = 0, 1466d7001863SVidya Sagar Velumuri .options.stats = 0, 1467d7001863SVidya Sagar Velumuri .options.tunnel_hdr_verify = 0, 1468d7001863SVidya Sagar Velumuri .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 1469d7001863SVidya Sagar Velumuri .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 1470d7001863SVidya Sagar Velumuri .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 1471d7001863SVidya Sagar Velumuri .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 1472d7001863SVidya Sagar Velumuri .replay_win_sz = 0, 1473d7001863SVidya Sagar Velumuri }, 1474d7001863SVidya Sagar Velumuri 1475d7001863SVidya Sagar Velumuri .aead = false, 1476d7001863SVidya Sagar Velumuri 1477d7001863SVidya Sagar Velumuri .xform = { 1478d7001863SVidya Sagar Velumuri .chain.cipher = { 1479d7001863SVidya Sagar Velumuri .next = NULL, 1480d7001863SVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_CIPHER, 1481d7001863SVidya Sagar Velumuri .cipher = { 1482d7001863SVidya Sagar Velumuri .op = RTE_CRYPTO_CIPHER_OP_ENCRYPT, 1483d7001863SVidya Sagar Velumuri .algo = RTE_CRYPTO_CIPHER_DES_CBC, 1484d7001863SVidya Sagar Velumuri .key.length = 8, 1485d7001863SVidya Sagar Velumuri .iv.length = 8, 1486d7001863SVidya Sagar Velumuri }, 1487d7001863SVidya Sagar Velumuri }, 1488d7001863SVidya Sagar Velumuri .chain.auth = { 1489d7001863SVidya Sagar Velumuri .next = NULL, 1490d7001863SVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_AUTH, 1491d7001863SVidya Sagar Velumuri .auth = { 1492d7001863SVidya Sagar Velumuri .op = RTE_CRYPTO_AUTH_OP_GENERATE, 1493d7001863SVidya Sagar Velumuri .algo = RTE_CRYPTO_AUTH_SHA256_HMAC, 1494d7001863SVidya Sagar Velumuri .key.length = 32, 1495d7001863SVidya Sagar Velumuri .digest_length = 16, 1496d7001863SVidya Sagar Velumuri }, 1497d7001863SVidya Sagar Velumuri }, 1498d7001863SVidya Sagar Velumuri }, 1499d7001863SVidya Sagar Velumuri }; 1500d7001863SVidya Sagar Velumuri 1501d7001863SVidya Sagar Velumuri struct ipsec_test_data pkt_des_cbc_hmac_sha384 = { 1502d7001863SVidya Sagar Velumuri .key = { 1503d7001863SVidya Sagar Velumuri .data = { 1504d7001863SVidya Sagar Velumuri 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2, 1505d7001863SVidya Sagar Velumuri }, 1506d7001863SVidya Sagar Velumuri }, 1507d7001863SVidya Sagar Velumuri .auth_key = { 1508d7001863SVidya Sagar Velumuri .data = { 1509d7001863SVidya Sagar Velumuri 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x04, 1510d7001863SVidya Sagar Velumuri 0x0a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 1511d7001863SVidya Sagar Velumuri 0xde, 0x34, 0x56, 0x00, 0x00, 0x00, 0x78, 0x00, 1512d7001863SVidya Sagar Velumuri 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x02, 1513d7001863SVidya Sagar Velumuri 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x34, 1514d7001863SVidya Sagar Velumuri 0x1a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 1515d7001863SVidya Sagar Velumuri }, 1516d7001863SVidya Sagar Velumuri }, 1517d7001863SVidya Sagar Velumuri .input_text = { 1518d7001863SVidya Sagar Velumuri .data = { 1519d7001863SVidya Sagar Velumuri /* IP */ 1520d7001863SVidya Sagar Velumuri 0x45, 0x00, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 1521d7001863SVidya Sagar Velumuri 0x1f, 0x11, 0x17, 0x8b, 0xc0, 0xa8, 0x01, 0x6f, 1522d7001863SVidya Sagar Velumuri 0xc0, 0xa8, 0x01, 0x70, 1523d7001863SVidya Sagar Velumuri 1524d7001863SVidya Sagar Velumuri /* UDP */ 1525d7001863SVidya Sagar Velumuri 0x00, 0x09, 0x00, 0x09, 0x00, 0x1e, 0x00, 0x00, 1526d7001863SVidya Sagar Velumuri 0xbe, 0x9b, 0xe9, 0x55, 0x00, 0x00, 0x00, 0x21, 1527d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 1528d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 1529d7001863SVidya Sagar Velumuri }, 1530d7001863SVidya Sagar Velumuri .len = 50, 1531d7001863SVidya Sagar Velumuri }, 1532d7001863SVidya Sagar Velumuri .output_text = { 1533d7001863SVidya Sagar Velumuri .data = { 1534d7001863SVidya Sagar Velumuri /* IP - outer header */ 1535d7001863SVidya Sagar Velumuri 0x45, 0x00, 0x00, 0x74, 0x00, 0x01, 0x00, 0x00, 1536d7001863SVidya Sagar Velumuri 0x40, 0x32, 0xf7, 0x03, 0xc0, 0xa8, 0x01, 0x02, 1537d7001863SVidya Sagar Velumuri 0xc0, 0xa8, 0x01, 0x01, 1538d7001863SVidya Sagar Velumuri 1539d7001863SVidya Sagar Velumuri /* ESP */ 1540d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x3a, 0x00, 0x00, 0x00, 0x01, 1541d7001863SVidya Sagar Velumuri 1542d7001863SVidya Sagar Velumuri /* IV */ 1543d7001863SVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 1544d7001863SVidya Sagar Velumuri 1545d7001863SVidya Sagar Velumuri /* Data */ 1546d7001863SVidya Sagar Velumuri 0x80, 0x6a, 0xcd, 0x35, 0x95, 0x6c, 0x04, 0x66, 1547d7001863SVidya Sagar Velumuri 0x4c, 0x04, 0xeb, 0xdb, 0x85, 0xc8, 0xf9, 0x56, 1548d7001863SVidya Sagar Velumuri 0xe7, 0x01, 0x17, 0x97, 0xc4, 0xa5, 0xa4, 0xfe, 1549d7001863SVidya Sagar Velumuri 0xa0, 0x81, 0x62, 0xda, 0xb2, 0xc0, 0xcf, 0x21, 1550d7001863SVidya Sagar Velumuri 0x54, 0x0c, 0x38, 0xcf, 0xca, 0x41, 0x20, 0x5f, 1551d7001863SVidya Sagar Velumuri 0xed, 0xc3, 0xe3, 0x59, 0xc4, 0x2f, 0x5e, 0xf7, 1552d7001863SVidya Sagar Velumuri 0xdd, 0x16, 0x15, 0xd2, 0x00, 0xe8, 0x60, 0xc6, 1553d7001863SVidya Sagar Velumuri 0xd8, 0x73, 0xf0, 0xb1, 0x89, 0xc4, 0xb2, 0x65, 1554d7001863SVidya Sagar Velumuri 0xe2, 0xbf, 0xeb, 0xd8, 0x1d, 0x0a, 0xae, 0x2c, 1555d7001863SVidya Sagar Velumuri 0x4d, 0xd3, 0x59, 0x30, 0x5e, 0x47, 0xb9, 0xcc, 1556d7001863SVidya Sagar Velumuri }, 1557d7001863SVidya Sagar Velumuri .len = 116, 1558d7001863SVidya Sagar Velumuri }, 1559d7001863SVidya Sagar Velumuri .iv = { 1560d7001863SVidya Sagar Velumuri .data = { 1561d7001863SVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 1562d7001863SVidya Sagar Velumuri }, 1563d7001863SVidya Sagar Velumuri }, 1564d7001863SVidya Sagar Velumuri 1565d7001863SVidya Sagar Velumuri .ipsec_xform = { 1566d7001863SVidya Sagar Velumuri .spi = 58, 1567d7001863SVidya Sagar Velumuri .options.esn = 0, 1568d7001863SVidya Sagar Velumuri .options.udp_encap = 0, 1569d7001863SVidya Sagar Velumuri .options.copy_dscp = 0, 1570d7001863SVidya Sagar Velumuri .options.copy_flabel = 0, 1571d7001863SVidya Sagar Velumuri .options.copy_df = 0, 1572d7001863SVidya Sagar Velumuri .options.dec_ttl = 0, 1573d7001863SVidya Sagar Velumuri .options.ecn = 0, 1574d7001863SVidya Sagar Velumuri .options.stats = 0, 1575d7001863SVidya Sagar Velumuri .options.tunnel_hdr_verify = 0, 1576d7001863SVidya Sagar Velumuri .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 1577d7001863SVidya Sagar Velumuri .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 1578d7001863SVidya Sagar Velumuri .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 1579d7001863SVidya Sagar Velumuri .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 1580d7001863SVidya Sagar Velumuri .replay_win_sz = 0, 1581d7001863SVidya Sagar Velumuri }, 1582d7001863SVidya Sagar Velumuri 1583d7001863SVidya Sagar Velumuri .aead = false, 1584d7001863SVidya Sagar Velumuri 1585d7001863SVidya Sagar Velumuri .xform = { 1586d7001863SVidya Sagar Velumuri .chain.cipher = { 1587d7001863SVidya Sagar Velumuri .next = NULL, 1588d7001863SVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_CIPHER, 1589d7001863SVidya Sagar Velumuri .cipher = { 1590d7001863SVidya Sagar Velumuri .op = RTE_CRYPTO_CIPHER_OP_ENCRYPT, 1591d7001863SVidya Sagar Velumuri .algo = RTE_CRYPTO_CIPHER_DES_CBC, 1592d7001863SVidya Sagar Velumuri .key.length = 8, 1593d7001863SVidya Sagar Velumuri .iv.length = 8, 1594d7001863SVidya Sagar Velumuri }, 1595d7001863SVidya Sagar Velumuri }, 1596d7001863SVidya Sagar Velumuri .chain.auth = { 1597d7001863SVidya Sagar Velumuri .next = NULL, 1598d7001863SVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_AUTH, 1599d7001863SVidya Sagar Velumuri .auth = { 1600d7001863SVidya Sagar Velumuri .op = RTE_CRYPTO_AUTH_OP_GENERATE, 1601d7001863SVidya Sagar Velumuri .algo = RTE_CRYPTO_AUTH_SHA384_HMAC, 1602d7001863SVidya Sagar Velumuri .key.length = 48, 1603d7001863SVidya Sagar Velumuri .digest_length = 24, 1604d7001863SVidya Sagar Velumuri }, 1605d7001863SVidya Sagar Velumuri }, 1606d7001863SVidya Sagar Velumuri }, 1607d7001863SVidya Sagar Velumuri }; 1608d7001863SVidya Sagar Velumuri 1609d7001863SVidya Sagar Velumuri struct ipsec_test_data pkt_des_cbc_hmac_sha512 = { 1610d7001863SVidya Sagar Velumuri .key = { 1611d7001863SVidya Sagar Velumuri .data = { 1612d7001863SVidya Sagar Velumuri 0x00, 0x04, 0x05, 0x01, 0x23, 0x00, 0x00, 0x00, 1613d7001863SVidya Sagar Velumuri }, 1614d7001863SVidya Sagar Velumuri }, 1615d7001863SVidya Sagar Velumuri .auth_key = { 1616d7001863SVidya Sagar Velumuri .data = { 1617d7001863SVidya Sagar Velumuri 0xde, 0x34, 0x56, 0x00, 0x00, 0x00, 0x78, 0x00, 1618d7001863SVidya Sagar Velumuri 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 1619d7001863SVidya Sagar Velumuri 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x04, 1620d7001863SVidya Sagar Velumuri 0x0a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 1621d7001863SVidya Sagar Velumuri 0xde, 0x34, 0x56, 0x00, 0x00, 0x00, 0x78, 0x00, 1622d7001863SVidya Sagar Velumuri 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x02, 1623d7001863SVidya Sagar Velumuri 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x34, 1624d7001863SVidya Sagar Velumuri 0x1a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 1625d7001863SVidya Sagar Velumuri }, 1626d7001863SVidya Sagar Velumuri }, 1627d7001863SVidya Sagar Velumuri .input_text = { 1628d7001863SVidya Sagar Velumuri .data = { 1629d7001863SVidya Sagar Velumuri /* IP */ 1630d7001863SVidya Sagar Velumuri 0x45, 0x00, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 1631d7001863SVidya Sagar Velumuri 0x1f, 0x11, 0x17, 0x8b, 0xc0, 0xa8, 0x01, 0x6f, 1632d7001863SVidya Sagar Velumuri 0xc0, 0xa8, 0x01, 0x70, 1633d7001863SVidya Sagar Velumuri 1634d7001863SVidya Sagar Velumuri /* UDP */ 1635d7001863SVidya Sagar Velumuri 0x00, 0x09, 0x00, 0x09, 0x00, 0x1e, 0x00, 0x00, 1636d7001863SVidya Sagar Velumuri 0xbe, 0x9b, 0xe9, 0x55, 0x00, 0x00, 0x00, 0x21, 1637d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 1638d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 1639d7001863SVidya Sagar Velumuri }, 1640d7001863SVidya Sagar Velumuri .len = 50, 1641d7001863SVidya Sagar Velumuri }, 1642d7001863SVidya Sagar Velumuri .output_text = { 1643d7001863SVidya Sagar Velumuri .data = { 1644d7001863SVidya Sagar Velumuri /* IP - outer header */ 1645d7001863SVidya Sagar Velumuri 0x45, 0x00, 0x00, 0x7c, 0x00, 0x01, 0x00, 0x00, 1646d7001863SVidya Sagar Velumuri 0x40, 0x32, 0xf6, 0xfb, 0xc0, 0xa8, 0x01, 0x02, 1647d7001863SVidya Sagar Velumuri 0xc0, 0xa8, 0x01, 0x01, 1648d7001863SVidya Sagar Velumuri 1649d7001863SVidya Sagar Velumuri /* ESP */ 1650d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x01, 1651d7001863SVidya Sagar Velumuri 1652d7001863SVidya Sagar Velumuri /* IV */ 1653d7001863SVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 1654d7001863SVidya Sagar Velumuri 1655d7001863SVidya Sagar Velumuri /* Data */ 1656d7001863SVidya Sagar Velumuri 0x54, 0xe6, 0xf3, 0xd4, 0x25, 0x1c, 0x57, 0xd0, 1657d7001863SVidya Sagar Velumuri 0x55, 0x7d, 0x52, 0xd3, 0xcb, 0x65, 0x57, 0x37, 1658d7001863SVidya Sagar Velumuri 0xd9, 0x83, 0x37, 0x69, 0x95, 0xa7, 0x2b, 0xc2, 1659d7001863SVidya Sagar Velumuri 0x65, 0x9e, 0xf6, 0xc8, 0xca, 0x6a, 0x9d, 0x51, 1660d7001863SVidya Sagar Velumuri 0xde, 0xbe, 0x45, 0x58, 0x72, 0x58, 0x92, 0x49, 1661d7001863SVidya Sagar Velumuri 0x15, 0x02, 0xae, 0x38, 0xb5, 0xf7, 0xcc, 0x6d, 1662d7001863SVidya Sagar Velumuri 0xe5, 0x95, 0x21, 0xf1, 0xda, 0x69, 0x93, 0x76, 1663d7001863SVidya Sagar Velumuri 0x6c, 0x85, 0x42, 0xef, 0xb1, 0xd4, 0xae, 0x32, 1664d7001863SVidya Sagar Velumuri 0x88, 0x73, 0x1a, 0x59, 0xf9, 0xe5, 0x4b, 0x1c, 1665d7001863SVidya Sagar Velumuri 0xc0, 0x32, 0x07, 0x78, 0xaf, 0x09, 0xfd, 0x15, 1666d7001863SVidya Sagar Velumuri 0x3e, 0xad, 0x9d, 0x8a, 0xa5, 0x0f, 0xd4, 0x66, 1667d7001863SVidya Sagar Velumuri 1668d7001863SVidya Sagar Velumuri }, 1669d7001863SVidya Sagar Velumuri .len = 124, 1670d7001863SVidya Sagar Velumuri }, 1671d7001863SVidya Sagar Velumuri .iv = { 1672d7001863SVidya Sagar Velumuri .data = { 1673d7001863SVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 1674d7001863SVidya Sagar Velumuri }, 1675d7001863SVidya Sagar Velumuri }, 1676d7001863SVidya Sagar Velumuri 1677d7001863SVidya Sagar Velumuri .ipsec_xform = { 1678d7001863SVidya Sagar Velumuri .spi = 52, 1679d7001863SVidya Sagar Velumuri .options.esn = 0, 1680d7001863SVidya Sagar Velumuri .options.udp_encap = 0, 1681d7001863SVidya Sagar Velumuri .options.copy_dscp = 0, 1682d7001863SVidya Sagar Velumuri .options.copy_flabel = 0, 1683d7001863SVidya Sagar Velumuri .options.copy_df = 0, 1684d7001863SVidya Sagar Velumuri .options.dec_ttl = 0, 1685d7001863SVidya Sagar Velumuri .options.ecn = 0, 1686d7001863SVidya Sagar Velumuri .options.stats = 0, 1687d7001863SVidya Sagar Velumuri .options.tunnel_hdr_verify = 0, 1688d7001863SVidya Sagar Velumuri .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 1689d7001863SVidya Sagar Velumuri .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 1690d7001863SVidya Sagar Velumuri .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 1691d7001863SVidya Sagar Velumuri .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 1692d7001863SVidya Sagar Velumuri .replay_win_sz = 0, 1693d7001863SVidya Sagar Velumuri }, 1694d7001863SVidya Sagar Velumuri 1695d7001863SVidya Sagar Velumuri .aead = false, 1696d7001863SVidya Sagar Velumuri 1697d7001863SVidya Sagar Velumuri .xform = { 1698d7001863SVidya Sagar Velumuri .chain.cipher = { 1699d7001863SVidya Sagar Velumuri .next = NULL, 1700d7001863SVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_CIPHER, 1701d7001863SVidya Sagar Velumuri .cipher = { 1702d7001863SVidya Sagar Velumuri .op = RTE_CRYPTO_CIPHER_OP_ENCRYPT, 1703d7001863SVidya Sagar Velumuri .algo = RTE_CRYPTO_CIPHER_DES_CBC, 1704d7001863SVidya Sagar Velumuri .key.length = 8, 1705d7001863SVidya Sagar Velumuri .iv.length = 8, 1706d7001863SVidya Sagar Velumuri }, 1707d7001863SVidya Sagar Velumuri }, 1708d7001863SVidya Sagar Velumuri .chain.auth = { 1709d7001863SVidya Sagar Velumuri .next = NULL, 1710d7001863SVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_AUTH, 1711d7001863SVidya Sagar Velumuri .auth = { 1712d7001863SVidya Sagar Velumuri .op = RTE_CRYPTO_AUTH_OP_GENERATE, 1713d7001863SVidya Sagar Velumuri .algo = RTE_CRYPTO_AUTH_SHA512_HMAC, 1714d7001863SVidya Sagar Velumuri .key.length = 64, 1715d7001863SVidya Sagar Velumuri .digest_length = 32, 1716d7001863SVidya Sagar Velumuri }, 1717d7001863SVidya Sagar Velumuri }, 1718d7001863SVidya Sagar Velumuri }, 1719d7001863SVidya Sagar Velumuri }; 1720d7001863SVidya Sagar Velumuri 17219fb87fbfSTejasree Kondoj struct ipsec_test_data pkt_aes_128_cbc_hmac_sha256_v6 = { 17229fb87fbfSTejasree Kondoj .key = { 17239fb87fbfSTejasree Kondoj .data = { 17249fb87fbfSTejasree Kondoj 0x00, 0x04, 0x05, 0x01, 0x23, 0x00, 0x00, 0x00, 17259fb87fbfSTejasree Kondoj 0x00, 0x00, 0x0a, 0x0b, 0x0c, 0x0f, 0x00, 0x00, 17269fb87fbfSTejasree Kondoj }, 17279fb87fbfSTejasree Kondoj }, 17289fb87fbfSTejasree Kondoj .auth_key = { 17299fb87fbfSTejasree Kondoj .data = { 17309fb87fbfSTejasree Kondoj 0xde, 0x34, 0x56, 0x00, 0x00, 0x00, 0x78, 0x00, 17319fb87fbfSTejasree Kondoj 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 17329fb87fbfSTejasree Kondoj 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x04, 17339fb87fbfSTejasree Kondoj 0x0a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 17349fb87fbfSTejasree Kondoj }, 17359fb87fbfSTejasree Kondoj }, 17369fb87fbfSTejasree Kondoj .input_text = { 17379fb87fbfSTejasree Kondoj .data = { 17389fb87fbfSTejasree Kondoj 0x60, 0x00, 0x00, 0x00, 0x00, 0x20, 0x06, 0x38, 17399fb87fbfSTejasree Kondoj 0x26, 0x07, 0xf8, 0xb0, 0x40, 0x0c, 0x0c, 0x03, 17409fb87fbfSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1a, 17419fb87fbfSTejasree Kondoj 0x20, 0x01, 0x04, 0x70, 0xe5, 0xbf, 0xde, 0xad, 17429fb87fbfSTejasree Kondoj 0x49, 0x57, 0x21, 0x74, 0xe8, 0x2c, 0x48, 0x87, 17439fb87fbfSTejasree Kondoj 0x00, 0x19, 0xf9, 0xc7, 0x95, 0x63, 0x97, 0x9c, 17449fb87fbfSTejasree Kondoj 0x03, 0xa0, 0x88, 0x31, 0x80, 0x12, 0xa7, 0xd6, 17459fb87fbfSTejasree Kondoj 0x25, 0x83, 0x00, 0x00, 0x02, 0x04, 0x05, 0x6a, 17469fb87fbfSTejasree Kondoj 0x01, 0x01, 0x04, 0x02, 0x01, 0x03, 0x03, 0x07, 17479fb87fbfSTejasree Kondoj }, 17489fb87fbfSTejasree Kondoj .len = 72, 17499fb87fbfSTejasree Kondoj }, 17509fb87fbfSTejasree Kondoj .output_text = { 17519fb87fbfSTejasree Kondoj .data = { 17529fb87fbfSTejasree Kondoj 0x60, 0x00, 0x00, 0x00, 0x00, 0x78, 0x32, 0x40, 17539fb87fbfSTejasree Kondoj 0x12, 0x34, 0x12, 0x21, 0x17, 0x45, 0x11, 0x34, 17549fb87fbfSTejasree Kondoj 0x11, 0xfc, 0x89, 0x71, 0xdf, 0x22, 0x56, 0x78, 17559fb87fbfSTejasree Kondoj 0x12, 0x34, 0x12, 0x21, 0x17, 0x45, 0x11, 0x34, 17569fb87fbfSTejasree Kondoj 0x11, 0xfc, 0x89, 0x71, 0xdf, 0x22, 0x34, 0x56, 17579fb87fbfSTejasree Kondoj 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x01, 17589fb87fbfSTejasree Kondoj 0x45, 0xad, 0xfe, 0x23, 0x78, 0x56, 0x12, 0x00, 17599fb87fbfSTejasree Kondoj 0xf0, 0xc1, 0x05, 0x3c, 0x00, 0x00, 0x00, 0x00, 17609fb87fbfSTejasree Kondoj 0x1b, 0x1c, 0x98, 0x6e, 0x2a, 0xce, 0x61, 0xef, 17619fb87fbfSTejasree Kondoj 0xc1, 0xdd, 0x25, 0x96, 0x5c, 0xb1, 0xb0, 0x15, 17629fb87fbfSTejasree Kondoj 0x47, 0x25, 0xb7, 0x8b, 0x00, 0xb6, 0xbb, 0xe6, 17639fb87fbfSTejasree Kondoj 0x2e, 0x29, 0xcb, 0x4a, 0x94, 0x00, 0xf0, 0x73, 17649fb87fbfSTejasree Kondoj 0xdb, 0x14, 0x32, 0xd9, 0xa2, 0xdf, 0x22, 0x2f, 17659fb87fbfSTejasree Kondoj 0x52, 0x3e, 0x79, 0x77, 0xf3, 0x17, 0xaa, 0x40, 17669fb87fbfSTejasree Kondoj 0x1c, 0x57, 0x27, 0x12, 0x82, 0x44, 0x35, 0xb8, 17679fb87fbfSTejasree Kondoj 0x64, 0xe0, 0xaa, 0x5c, 0x10, 0xc7, 0x97, 0x35, 17689fb87fbfSTejasree Kondoj 0x9c, 0x6b, 0x1c, 0xf7, 0xe7, 0xbd, 0x83, 0x33, 17699fb87fbfSTejasree Kondoj 0x77, 0x48, 0x44, 0x7d, 0xa4, 0x13, 0x74, 0x3b, 17709fb87fbfSTejasree Kondoj 0x6a, 0x91, 0xd0, 0xd8, 0x7d, 0x41, 0x45, 0x23, 17719fb87fbfSTejasree Kondoj 0x5d, 0xc9, 0x2d, 0x08, 0x7a, 0xd8, 0x25, 0x8e, 17729fb87fbfSTejasree Kondoj }, 17739fb87fbfSTejasree Kondoj .len = 160, 17749fb87fbfSTejasree Kondoj }, 17759fb87fbfSTejasree Kondoj .iv = { 17769fb87fbfSTejasree Kondoj .data = { 17779fb87fbfSTejasree Kondoj 0x45, 0xad, 0xfe, 0x23, 0x78, 0x56, 0x12, 0x00, 17789fb87fbfSTejasree Kondoj 0xf0, 0xc1, 0x05, 0x3c, 0x00, 0x00, 0x00, 0x00, 17799fb87fbfSTejasree Kondoj }, 17809fb87fbfSTejasree Kondoj }, 17819fb87fbfSTejasree Kondoj 17829fb87fbfSTejasree Kondoj .ipsec_xform = { 17839fb87fbfSTejasree Kondoj .spi = 52, 17849fb87fbfSTejasree Kondoj .options.esn = 0, 17859fb87fbfSTejasree Kondoj .options.udp_encap = 0, 17869fb87fbfSTejasree Kondoj .options.copy_dscp = 0, 17879fb87fbfSTejasree Kondoj .options.copy_flabel = 0, 17889fb87fbfSTejasree Kondoj .options.copy_df = 0, 17899fb87fbfSTejasree Kondoj .options.dec_ttl = 0, 17909fb87fbfSTejasree Kondoj .options.ecn = 0, 17919fb87fbfSTejasree Kondoj .options.stats = 0, 17929fb87fbfSTejasree Kondoj .options.tunnel_hdr_verify = 0, 17939fb87fbfSTejasree Kondoj .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 17949fb87fbfSTejasree Kondoj .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 17959fb87fbfSTejasree Kondoj .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 17969fb87fbfSTejasree Kondoj .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV6, 17979fb87fbfSTejasree Kondoj .replay_win_sz = 0, 17989fb87fbfSTejasree Kondoj }, 17999fb87fbfSTejasree Kondoj 18009fb87fbfSTejasree Kondoj .aead = false, 18019fb87fbfSTejasree Kondoj 18029fb87fbfSTejasree Kondoj .xform = { 18039fb87fbfSTejasree Kondoj .chain.cipher = { 18049fb87fbfSTejasree Kondoj .next = NULL, 18059fb87fbfSTejasree Kondoj .type = RTE_CRYPTO_SYM_XFORM_CIPHER, 18069fb87fbfSTejasree Kondoj .cipher = { 18079fb87fbfSTejasree Kondoj .op = RTE_CRYPTO_CIPHER_OP_ENCRYPT, 18089fb87fbfSTejasree Kondoj .algo = RTE_CRYPTO_CIPHER_AES_CBC, 18099fb87fbfSTejasree Kondoj .key.length = 16, 18109fb87fbfSTejasree Kondoj .iv.length = 16, 18119fb87fbfSTejasree Kondoj }, 18129fb87fbfSTejasree Kondoj }, 18139fb87fbfSTejasree Kondoj .chain.auth = { 18149fb87fbfSTejasree Kondoj .next = NULL, 18159fb87fbfSTejasree Kondoj .type = RTE_CRYPTO_SYM_XFORM_AUTH, 18169fb87fbfSTejasree Kondoj .auth = { 18179fb87fbfSTejasree Kondoj .op = RTE_CRYPTO_AUTH_OP_GENERATE, 18189fb87fbfSTejasree Kondoj .algo = RTE_CRYPTO_AUTH_SHA256_HMAC, 18199fb87fbfSTejasree Kondoj .key.length = 32, 18209fb87fbfSTejasree Kondoj .digest_length = 16, 18219fb87fbfSTejasree Kondoj }, 18229fb87fbfSTejasree Kondoj }, 18239fb87fbfSTejasree Kondoj }, 18249fb87fbfSTejasree Kondoj }; 18259fb87fbfSTejasree Kondoj 1826d7001863SVidya Sagar Velumuri struct ipsec_test_data pkt_3des_cbc_hmac_sha256_v6 = { 1827d7001863SVidya Sagar Velumuri .key = { 1828d7001863SVidya Sagar Velumuri .data = { 1829d7001863SVidya Sagar Velumuri 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2, 1830d7001863SVidya Sagar Velumuri 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A, 1831d7001863SVidya Sagar Velumuri 0x00, 0x04, 0x05, 0x01, 0x23, 0x00, 0x00, 0x00, 1832d7001863SVidya Sagar Velumuri }, 1833d7001863SVidya Sagar Velumuri }, 1834d7001863SVidya Sagar Velumuri .auth_key = { 1835d7001863SVidya Sagar Velumuri .data = { 1836d7001863SVidya Sagar Velumuri 0xde, 0x34, 0x56, 0x00, 0x00, 0x00, 0x78, 0x00, 1837d7001863SVidya Sagar Velumuri 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 1838d7001863SVidya Sagar Velumuri 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x04, 1839d7001863SVidya Sagar Velumuri 0x0a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 1840d7001863SVidya Sagar Velumuri }, 1841d7001863SVidya Sagar Velumuri }, 1842d7001863SVidya Sagar Velumuri .input_text = { 1843d7001863SVidya Sagar Velumuri .data = { 1844d7001863SVidya Sagar Velumuri 0x60, 0x00, 0x00, 0x00, 0x00, 0x20, 0x06, 0x38, 1845d7001863SVidya Sagar Velumuri 0x26, 0x07, 0xf8, 0xb0, 0x40, 0x0c, 0x0c, 0x03, 1846d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1a, 1847d7001863SVidya Sagar Velumuri 0x20, 0x01, 0x04, 0x70, 0xe5, 0xbf, 0xde, 0xad, 1848d7001863SVidya Sagar Velumuri 0x49, 0x57, 0x21, 0x74, 0xe8, 0x2c, 0x48, 0x87, 1849d7001863SVidya Sagar Velumuri 0x00, 0x19, 0xf9, 0xc7, 0x95, 0x63, 0x97, 0x9c, 1850d7001863SVidya Sagar Velumuri 0x03, 0xa0, 0x88, 0x31, 0x80, 0x12, 0xa7, 0xd6, 1851d7001863SVidya Sagar Velumuri 0x25, 0x83, 0x00, 0x00, 0x02, 0x04, 0x05, 0x6a, 1852d7001863SVidya Sagar Velumuri 0x01, 0x01, 0x04, 0x02, 0x01, 0x03, 0x03, 0x07, 1853d7001863SVidya Sagar Velumuri }, 1854d7001863SVidya Sagar Velumuri .len = 72, 1855d7001863SVidya Sagar Velumuri }, 1856d7001863SVidya Sagar Velumuri .output_text = { 1857d7001863SVidya Sagar Velumuri .data = { 1858d7001863SVidya Sagar Velumuri /* IP - outer header */ 1859d7001863SVidya Sagar Velumuri 0x60, 0x00, 0x00, 0x00, 0x00, 0x70, 0x32, 0x40, 1860d7001863SVidya Sagar Velumuri 0x0c, 0x03, 0x40, 0x0c, 0xf8, 0xb0, 0x26, 0x07, 1861d7001863SVidya Sagar Velumuri 0x00, 0x1a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 1862d7001863SVidya Sagar Velumuri 0xde, 0xad, 0xe5, 0xbf, 0x04, 0x70, 0x20, 0x01, 1863d7001863SVidya Sagar Velumuri 0x48, 0x87, 0xe8, 0x2c, 0x21, 0x74, 0x49, 0x57, 1864d7001863SVidya Sagar Velumuri 1865d7001863SVidya Sagar Velumuri /* ESP */ 1866d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x01, 1867d7001863SVidya Sagar Velumuri 1868d7001863SVidya Sagar Velumuri /* IV */ 1869d7001863SVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 1870d7001863SVidya Sagar Velumuri 1871d7001863SVidya Sagar Velumuri /* Data */ 1872d7001863SVidya Sagar Velumuri 0xf9, 0x99, 0x5b, 0x32, 0xfc, 0x7d, 0x0f, 0xcb, 1873d7001863SVidya Sagar Velumuri 0x25, 0x0c, 0x9f, 0x11, 0xc5, 0xc7, 0x5e, 0x46, 1874d7001863SVidya Sagar Velumuri 0x1d, 0x01, 0x2f, 0xd5, 0xb3, 0x6b, 0x02, 0x30, 1875d7001863SVidya Sagar Velumuri 0x8a, 0x0c, 0x85, 0xa9, 0xca, 0x87, 0x6f, 0x17, 1876d7001863SVidya Sagar Velumuri 0x3f, 0xb0, 0x03, 0x6c, 0xa5, 0x16, 0x1d, 0x1e, 1877d7001863SVidya Sagar Velumuri 0x67, 0x5e, 0x70, 0x1a, 0x76, 0xe7, 0x12, 0x0e, 1878d7001863SVidya Sagar Velumuri 0x19, 0x2b, 0x5d, 0xe3, 0x4c, 0x51, 0xb3, 0x3a, 1879d7001863SVidya Sagar Velumuri 0x1b, 0x7e, 0xd0, 0x21, 0x76, 0x44, 0xcd, 0xb0, 1880d7001863SVidya Sagar Velumuri 0xe8, 0x6d, 0xe3, 0x92, 0xad, 0xa1, 0xad, 0x26, 1881d7001863SVidya Sagar Velumuri 0x9c, 0xec, 0x2a, 0x65, 0x51, 0xd4, 0xa4, 0xa9, 1882d7001863SVidya Sagar Velumuri 0x97, 0x5b, 0x1e, 0xdd, 0x24, 0x47, 0x16, 0x3a, 1883d7001863SVidya Sagar Velumuri 0x2d, 0xf3, 0x80, 0x50, 0xd5, 0xbd, 0x4a, 0x98, 1884d7001863SVidya Sagar Velumuri }, 1885d7001863SVidya Sagar Velumuri .len = 152, 1886d7001863SVidya Sagar Velumuri }, 1887d7001863SVidya Sagar Velumuri .iv = { 1888d7001863SVidya Sagar Velumuri .data = { 1889d7001863SVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 1890d7001863SVidya Sagar Velumuri }, 1891d7001863SVidya Sagar Velumuri }, 1892d7001863SVidya Sagar Velumuri 1893d7001863SVidya Sagar Velumuri .ipsec_xform = { 1894d7001863SVidya Sagar Velumuri .spi = 52, 1895d7001863SVidya Sagar Velumuri .options.esn = 0, 1896d7001863SVidya Sagar Velumuri .options.udp_encap = 0, 1897d7001863SVidya Sagar Velumuri .options.copy_dscp = 0, 1898d7001863SVidya Sagar Velumuri .options.copy_flabel = 0, 1899d7001863SVidya Sagar Velumuri .options.copy_df = 0, 1900d7001863SVidya Sagar Velumuri .options.dec_ttl = 0, 1901d7001863SVidya Sagar Velumuri .options.ecn = 0, 1902d7001863SVidya Sagar Velumuri .options.stats = 0, 1903d7001863SVidya Sagar Velumuri .options.tunnel_hdr_verify = 0, 1904d7001863SVidya Sagar Velumuri .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 1905d7001863SVidya Sagar Velumuri .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 1906d7001863SVidya Sagar Velumuri .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 1907d7001863SVidya Sagar Velumuri .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV6, 1908d7001863SVidya Sagar Velumuri .replay_win_sz = 0, 1909d7001863SVidya Sagar Velumuri }, 1910d7001863SVidya Sagar Velumuri 1911d7001863SVidya Sagar Velumuri .aead = false, 1912d7001863SVidya Sagar Velumuri 1913d7001863SVidya Sagar Velumuri .xform = { 1914d7001863SVidya Sagar Velumuri .chain.cipher = { 1915d7001863SVidya Sagar Velumuri .next = NULL, 1916d7001863SVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_CIPHER, 1917d7001863SVidya Sagar Velumuri .cipher = { 1918d7001863SVidya Sagar Velumuri .op = RTE_CRYPTO_CIPHER_OP_ENCRYPT, 1919d7001863SVidya Sagar Velumuri .algo = RTE_CRYPTO_CIPHER_3DES_CBC, 1920d7001863SVidya Sagar Velumuri .key.length = 24, 1921d7001863SVidya Sagar Velumuri .iv.length = 8, 1922d7001863SVidya Sagar Velumuri }, 1923d7001863SVidya Sagar Velumuri }, 1924d7001863SVidya Sagar Velumuri .chain.auth = { 1925d7001863SVidya Sagar Velumuri .next = NULL, 1926d7001863SVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_AUTH, 1927d7001863SVidya Sagar Velumuri .auth = { 1928d7001863SVidya Sagar Velumuri .op = RTE_CRYPTO_AUTH_OP_GENERATE, 1929d7001863SVidya Sagar Velumuri .algo = RTE_CRYPTO_AUTH_SHA256_HMAC, 1930d7001863SVidya Sagar Velumuri .key.length = 32, 1931d7001863SVidya Sagar Velumuri .digest_length = 16, 1932d7001863SVidya Sagar Velumuri }, 1933d7001863SVidya Sagar Velumuri }, 1934d7001863SVidya Sagar Velumuri }, 1935d7001863SVidya Sagar Velumuri }; 1936d7001863SVidya Sagar Velumuri 1937d7001863SVidya Sagar Velumuri struct ipsec_test_data pkt_des_cbc_hmac_sha256_v6 = { 1938d7001863SVidya Sagar Velumuri .key = { 1939d7001863SVidya Sagar Velumuri .data = { 1940d7001863SVidya Sagar Velumuri 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A, 1941d7001863SVidya Sagar Velumuri }, 1942d7001863SVidya Sagar Velumuri }, 1943d7001863SVidya Sagar Velumuri .auth_key = { 1944d7001863SVidya Sagar Velumuri .data = { 1945d7001863SVidya Sagar Velumuri 0xde, 0x34, 0x56, 0x00, 0x00, 0x00, 0x78, 0x00, 1946d7001863SVidya Sagar Velumuri 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 1947d7001863SVidya Sagar Velumuri 0x10, 0x30, 0x40, 0x00, 0x01, 0x02, 0x03, 0x04, 1948d7001863SVidya Sagar Velumuri 0x0a, 0x0b, 0x0c, 0x0d, 0x05, 0x06, 0x07, 0x08, 1949d7001863SVidya Sagar Velumuri }, 1950d7001863SVidya Sagar Velumuri }, 1951d7001863SVidya Sagar Velumuri .input_text = { 1952d7001863SVidya Sagar Velumuri .data = { 1953d7001863SVidya Sagar Velumuri 0x60, 0x00, 0x00, 0x00, 0x00, 0x20, 0x06, 0x38, 1954d7001863SVidya Sagar Velumuri 0x26, 0x07, 0xf8, 0xb0, 0x40, 0x0c, 0x0c, 0x03, 1955d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1a, 1956d7001863SVidya Sagar Velumuri 0x20, 0x01, 0x04, 0x70, 0xe5, 0xbf, 0xde, 0xad, 1957d7001863SVidya Sagar Velumuri 0x49, 0x57, 0x21, 0x74, 0xe8, 0x2c, 0x48, 0x87, 1958d7001863SVidya Sagar Velumuri 0x00, 0x19, 0xf9, 0xc7, 0x95, 0x63, 0x97, 0x9c, 1959d7001863SVidya Sagar Velumuri 0x03, 0xa0, 0x88, 0x31, 0x80, 0x12, 0xa7, 0xd6, 1960d7001863SVidya Sagar Velumuri 0x25, 0x83, 0x00, 0x00, 0x02, 0x04, 0x05, 0x6a, 1961d7001863SVidya Sagar Velumuri 0x01, 0x01, 0x04, 0x02, 0x01, 0x03, 0x03, 0x07, 1962d7001863SVidya Sagar Velumuri }, 1963d7001863SVidya Sagar Velumuri .len = 72, 1964d7001863SVidya Sagar Velumuri }, 1965d7001863SVidya Sagar Velumuri .output_text = { 1966d7001863SVidya Sagar Velumuri .data = { 1967d7001863SVidya Sagar Velumuri /* IP - outer header */ 1968d7001863SVidya Sagar Velumuri 0x60, 0x00, 0x00, 0x00, 0x00, 0x70, 0x32, 0x40, 1969d7001863SVidya Sagar Velumuri 0x0c, 0x03, 0x40, 0x0c, 0xf8, 0xb0, 0x26, 0x07, 1970d7001863SVidya Sagar Velumuri 0x00, 0x1a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 1971d7001863SVidya Sagar Velumuri 0xde, 0xad, 0xe5, 0xbf, 0x04, 0x70, 0x20, 0x01, 1972d7001863SVidya Sagar Velumuri 0x48, 0x87, 0xe8, 0x2c, 0x21, 0x74, 0x49, 0x57, 1973d7001863SVidya Sagar Velumuri 1974d7001863SVidya Sagar Velumuri /* ESP */ 1975d7001863SVidya Sagar Velumuri 0x00, 0x00, 0x00, 0x3a, 0x00, 0x00, 0x00, 0x01, 1976d7001863SVidya Sagar Velumuri 1977d7001863SVidya Sagar Velumuri /* IV */ 1978d7001863SVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 1979d7001863SVidya Sagar Velumuri 1980d7001863SVidya Sagar Velumuri /* Data */ 1981d7001863SVidya Sagar Velumuri 0x6e, 0xf8, 0x1e, 0x91, 0x77, 0x7f, 0x61, 0x77, 1982d7001863SVidya Sagar Velumuri 0xcd, 0x1a, 0x9d, 0xb4, 0x4c, 0xf8, 0x9a, 0x89, 1983d7001863SVidya Sagar Velumuri 0xa7, 0x7a, 0xf8, 0x2a, 0x2e, 0x54, 0xa5, 0x0a, 1984d7001863SVidya Sagar Velumuri 0xe3, 0x60, 0xb9, 0x21, 0xe1, 0xc6, 0x7f, 0x56, 1985d7001863SVidya Sagar Velumuri 0x92, 0x76, 0xc3, 0x33, 0x95, 0x93, 0x0d, 0xb8, 1986d7001863SVidya Sagar Velumuri 0xce, 0xb9, 0x0e, 0x32, 0xe6, 0xf1, 0x86, 0x81, 1987d7001863SVidya Sagar Velumuri 0x73, 0xc9, 0x62, 0x2e, 0x5d, 0x9b, 0xb4, 0xd5, 1988d7001863SVidya Sagar Velumuri 0x68, 0xda, 0xb1, 0x87, 0x78, 0x22, 0xc0, 0x9a, 1989d7001863SVidya Sagar Velumuri 0x1c, 0xa1, 0x53, 0x1b, 0x67, 0xea, 0x6d, 0x58, 1990d7001863SVidya Sagar Velumuri 0x1a, 0xd8, 0xc3, 0x95, 0xa0, 0xc3, 0x7a, 0xb6, 1991d7001863SVidya Sagar Velumuri 0xfe, 0xb1, 0x49, 0xa8, 0xad, 0x1a, 0x21, 0xc2, 1992d7001863SVidya Sagar Velumuri 0x01, 0x42, 0xa6, 0xf2, 0x3d, 0x7f, 0xb0, 0x6d, 1993d7001863SVidya Sagar Velumuri 1994d7001863SVidya Sagar Velumuri }, 1995d7001863SVidya Sagar Velumuri .len = 152, 1996d7001863SVidya Sagar Velumuri }, 1997d7001863SVidya Sagar Velumuri .iv = { 1998d7001863SVidya Sagar Velumuri .data = { 1999d7001863SVidya Sagar Velumuri 0x34, 0x12, 0x67, 0x45, 0xff, 0xff, 0x00, 0x00, 2000d7001863SVidya Sagar Velumuri }, 2001d7001863SVidya Sagar Velumuri }, 2002d7001863SVidya Sagar Velumuri 2003d7001863SVidya Sagar Velumuri .ipsec_xform = { 2004d7001863SVidya Sagar Velumuri .spi = 58, 2005d7001863SVidya Sagar Velumuri .options.esn = 0, 2006d7001863SVidya Sagar Velumuri .options.udp_encap = 0, 2007d7001863SVidya Sagar Velumuri .options.copy_dscp = 0, 2008d7001863SVidya Sagar Velumuri .options.copy_flabel = 0, 2009d7001863SVidya Sagar Velumuri .options.copy_df = 0, 2010d7001863SVidya Sagar Velumuri .options.dec_ttl = 0, 2011d7001863SVidya Sagar Velumuri .options.ecn = 0, 2012d7001863SVidya Sagar Velumuri .options.stats = 0, 2013d7001863SVidya Sagar Velumuri .options.tunnel_hdr_verify = 0, 2014d7001863SVidya Sagar Velumuri .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 2015d7001863SVidya Sagar Velumuri .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 2016d7001863SVidya Sagar Velumuri .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 2017d7001863SVidya Sagar Velumuri .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV6, 2018d7001863SVidya Sagar Velumuri .replay_win_sz = 0, 2019d7001863SVidya Sagar Velumuri }, 2020d7001863SVidya Sagar Velumuri 2021d7001863SVidya Sagar Velumuri .aead = false, 2022d7001863SVidya Sagar Velumuri 2023d7001863SVidya Sagar Velumuri .xform = { 2024d7001863SVidya Sagar Velumuri .chain.cipher = { 2025d7001863SVidya Sagar Velumuri .next = NULL, 2026d7001863SVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_CIPHER, 2027d7001863SVidya Sagar Velumuri .cipher = { 2028d7001863SVidya Sagar Velumuri .op = RTE_CRYPTO_CIPHER_OP_ENCRYPT, 2029d7001863SVidya Sagar Velumuri .algo = RTE_CRYPTO_CIPHER_DES_CBC, 2030d7001863SVidya Sagar Velumuri .key.length = 8, 2031d7001863SVidya Sagar Velumuri .iv.length = 8, 2032d7001863SVidya Sagar Velumuri }, 2033d7001863SVidya Sagar Velumuri }, 2034d7001863SVidya Sagar Velumuri .chain.auth = { 2035d7001863SVidya Sagar Velumuri .next = NULL, 2036d7001863SVidya Sagar Velumuri .type = RTE_CRYPTO_SYM_XFORM_AUTH, 2037d7001863SVidya Sagar Velumuri .auth = { 2038d7001863SVidya Sagar Velumuri .op = RTE_CRYPTO_AUTH_OP_GENERATE, 2039d7001863SVidya Sagar Velumuri .algo = RTE_CRYPTO_AUTH_SHA256_HMAC, 2040d7001863SVidya Sagar Velumuri .key.length = 32, 2041d7001863SVidya Sagar Velumuri .digest_length = 16, 2042d7001863SVidya Sagar Velumuri }, 2043d7001863SVidya Sagar Velumuri }, 2044d7001863SVidya Sagar Velumuri }, 2045d7001863SVidya Sagar Velumuri }; 2046d7001863SVidya Sagar Velumuri 2047b7986bdeSTejasree Kondoj struct ipsec_test_data pkt_aes_128_gcm_frag = { 2048b7986bdeSTejasree Kondoj .key = { 2049b7986bdeSTejasree Kondoj .data = { 2050b7986bdeSTejasree Kondoj 0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe, 0xef, 2051b7986bdeSTejasree Kondoj 0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe, 0xef, 2052b7986bdeSTejasree Kondoj }, 2053b7986bdeSTejasree Kondoj }, 2054b7986bdeSTejasree Kondoj .input_text = { 2055b7986bdeSTejasree Kondoj .data = { 2056b7986bdeSTejasree Kondoj 0x45, 0x00, 0x00, 0x6e, 0x00, 0x01, 0x00, 0x17, 2057b7986bdeSTejasree Kondoj 0x40, 0x06, 0xed, 0x48, 0xc6, 0x12, 0x00, 0x00, 2058b7986bdeSTejasree Kondoj 0xc6, 0x12, 0x01, 0x05, 0x00, 0x14, 0x00, 0x50, 2059b7986bdeSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 2060b7986bdeSTejasree Kondoj 0x50, 0x00, 0x00, 0x00, 0x55, 0x05, 0x00, 0x00, 2061b7986bdeSTejasree Kondoj 0x00, 0x01, 0x02, 0x03, 0xf2, 0xf6, 0xe9, 0x21, 2062b7986bdeSTejasree Kondoj 0xf9, 0xf2, 0xf6, 0xe9, 0x21, 0xf9, 0xf2, 0xf6, 2063b7986bdeSTejasree Kondoj 0xe9, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 2064b7986bdeSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 2065b7986bdeSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 2066b7986bdeSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 2067b7986bdeSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 2068b7986bdeSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 2069b7986bdeSTejasree Kondoj 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 2070b7986bdeSTejasree Kondoj }, 2071b7986bdeSTejasree Kondoj .len = 110, 2072b7986bdeSTejasree Kondoj }, 2073b7986bdeSTejasree Kondoj .output_text = { 2074b7986bdeSTejasree Kondoj .data = { 2075b7986bdeSTejasree Kondoj 0x45, 0x00, 0x00, 0xa4, 0x00, 0x01, 0x00, 0x00, 2076b7986bdeSTejasree Kondoj 0x40, 0x32, 0xf6, 0x0c, 0xc0, 0xa8, 0x01, 0x70, 2077b7986bdeSTejasree Kondoj 0xc0, 0xa8, 0x01, 0x5a, 0x00, 0x00, 0x00, 0x34, 2078b7986bdeSTejasree Kondoj 0x00, 0x00, 0x00, 0x01, 0x45, 0xad, 0xfe, 0x23, 2079b7986bdeSTejasree Kondoj 0x78, 0x56, 0x12, 0x00, 0x49, 0x26, 0xac, 0x4e, 2080b7986bdeSTejasree Kondoj 0x8d, 0xf3, 0x74, 0x26, 0x18, 0x3f, 0x65, 0x94, 2081b7986bdeSTejasree Kondoj 0x73, 0x2e, 0xe4, 0xcf, 0x84, 0x6d, 0x03, 0x8a, 2082b7986bdeSTejasree Kondoj 0x4c, 0xdd, 0x2d, 0xef, 0xcd, 0x9f, 0x84, 0x76, 2083b7986bdeSTejasree Kondoj 0x93, 0xe1, 0xee, 0x21, 0x92, 0x8b, 0xf7, 0x7a, 2084b7986bdeSTejasree Kondoj 0xb1, 0x6a, 0x7f, 0xd6, 0x10, 0x66, 0xdd, 0xa1, 2085b7986bdeSTejasree Kondoj 0x8b, 0x17, 0x56, 0x99, 0x9a, 0x40, 0xd0, 0x6b, 2086b7986bdeSTejasree Kondoj 0x2d, 0xe0, 0x55, 0x40, 0x2f, 0xb8, 0x38, 0xe3, 2087b7986bdeSTejasree Kondoj 0x08, 0x46, 0xe2, 0x69, 0xc9, 0xa1, 0x85, 0x9d, 2088b7986bdeSTejasree Kondoj 0x7b, 0xec, 0x33, 0x2a, 0x2d, 0x1d, 0x1f, 0x1a, 2089b7986bdeSTejasree Kondoj 0x9e, 0xf0, 0x1e, 0xc3, 0x33, 0x64, 0x35, 0x82, 2090b7986bdeSTejasree Kondoj 0xbb, 0xb5, 0x7a, 0x91, 0x2e, 0x8d, 0xd5, 0x5b, 2091b7986bdeSTejasree Kondoj 0x3a, 0xbe, 0x95, 0x94, 0xba, 0x40, 0x73, 0x4e, 2092b7986bdeSTejasree Kondoj 0xa4, 0x15, 0xe4, 0x4a, 0xf9, 0x14, 0x2c, 0x4f, 2093b7986bdeSTejasree Kondoj 0x63, 0x2e, 0x23, 0x6e, 0xeb, 0x06, 0xe7, 0x52, 2094b7986bdeSTejasree Kondoj 0xe1, 0xc7, 0x91, 0x7f, 0x19, 0xc0, 0x4a, 0xd2, 2095b7986bdeSTejasree Kondoj 0xd5, 0x3e, 0x84, 0xa8, 2096b7986bdeSTejasree Kondoj }, 2097b7986bdeSTejasree Kondoj .len = 164, 2098b7986bdeSTejasree Kondoj }, 2099b7986bdeSTejasree Kondoj .salt = { 2100b7986bdeSTejasree Kondoj .data = { 2101b7986bdeSTejasree Kondoj 0xde, 0xad, 0xbe, 0xef, 2102b7986bdeSTejasree Kondoj }, 2103b7986bdeSTejasree Kondoj .len = 4, 2104b7986bdeSTejasree Kondoj }, 2105b7986bdeSTejasree Kondoj 2106b7986bdeSTejasree Kondoj .iv = { 2107b7986bdeSTejasree Kondoj .data = { 2108b7986bdeSTejasree Kondoj 0x45, 0xad, 0xfe, 0x23, 0x78, 0x56, 0x12, 0x00, 2109b7986bdeSTejasree Kondoj }, 2110b7986bdeSTejasree Kondoj }, 2111b7986bdeSTejasree Kondoj 2112b7986bdeSTejasree Kondoj .ipsec_xform = { 2113b7986bdeSTejasree Kondoj .spi = 52, 2114b7986bdeSTejasree Kondoj .options.esn = 0, 2115b7986bdeSTejasree Kondoj .options.udp_encap = 0, 2116b7986bdeSTejasree Kondoj .options.copy_dscp = 0, 2117b7986bdeSTejasree Kondoj .options.copy_flabel = 0, 2118b7986bdeSTejasree Kondoj .options.copy_df = 0, 2119b7986bdeSTejasree Kondoj .options.dec_ttl = 0, 2120b7986bdeSTejasree Kondoj .options.ecn = 0, 2121b7986bdeSTejasree Kondoj .options.stats = 0, 2122b7986bdeSTejasree Kondoj .options.tunnel_hdr_verify = 0, 2123b7986bdeSTejasree Kondoj .options.ip_csum_enable = 0, 2124b7986bdeSTejasree Kondoj .options.l4_csum_enable = 0, 2125b7986bdeSTejasree Kondoj .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 2126b7986bdeSTejasree Kondoj .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 2127b7986bdeSTejasree Kondoj .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 2128b7986bdeSTejasree Kondoj .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 2129b7986bdeSTejasree Kondoj .replay_win_sz = 0, 2130b7986bdeSTejasree Kondoj }, 2131b7986bdeSTejasree Kondoj 2132b7986bdeSTejasree Kondoj .aead = true, 2133b7986bdeSTejasree Kondoj 2134b7986bdeSTejasree Kondoj .xform = { 2135b7986bdeSTejasree Kondoj .aead = { 2136b7986bdeSTejasree Kondoj .next = NULL, 2137b7986bdeSTejasree Kondoj .type = RTE_CRYPTO_SYM_XFORM_AEAD, 2138b7986bdeSTejasree Kondoj .aead = { 2139b7986bdeSTejasree Kondoj .op = RTE_CRYPTO_AEAD_OP_ENCRYPT, 2140b7986bdeSTejasree Kondoj .algo = RTE_CRYPTO_AEAD_AES_GCM, 2141b7986bdeSTejasree Kondoj .key.length = 16, 2142b7986bdeSTejasree Kondoj .iv.length = 12, 2143b7986bdeSTejasree Kondoj .iv.offset = IV_OFFSET, 2144b7986bdeSTejasree Kondoj .digest_length = 16, 2145b7986bdeSTejasree Kondoj .aad_length = 12, 2146b7986bdeSTejasree Kondoj }, 2147b7986bdeSTejasree Kondoj }, 2148b7986bdeSTejasree Kondoj }, 2149b7986bdeSTejasree Kondoj }; 2150b7986bdeSTejasree Kondoj 215167b5428dSAnoob Joseph struct ipsec_test_data pkt_null_aes_xcbc = { 215267b5428dSAnoob Joseph .auth_key = { 215367b5428dSAnoob Joseph .data = { 215467b5428dSAnoob Joseph 0x61, 0x31, 0x62, 0x32, 0x63, 0x33, 0x64, 0x34, 215567b5428dSAnoob Joseph 0x65, 0x35, 0x66, 0x36, 0x67, 0x37, 0x68, 0x38, 215667b5428dSAnoob Joseph }, 215767b5428dSAnoob Joseph }, 215867b5428dSAnoob Joseph .input_text = { 215967b5428dSAnoob Joseph .data = { 216067b5428dSAnoob Joseph /* IP */ 216167b5428dSAnoob Joseph 0x45, 0x00, 0x00, 0x2f, 0x49, 0x37, 0x00, 0x00, 216267b5428dSAnoob Joseph 0x40, 0x11, 0x22, 0x84, 0x0d, 0x00, 0x00, 0x02, 216367b5428dSAnoob Joseph 0x02, 0x00, 0x00, 0x02, 0x08, 0x00, 0x08, 0x00, 216467b5428dSAnoob Joseph 0x00, 0x1b, 0x6d, 0x99, 0x58, 0x58, 0x58, 0x58, 216567b5428dSAnoob Joseph 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 216667b5428dSAnoob Joseph 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 216767b5428dSAnoob Joseph }, 216867b5428dSAnoob Joseph .len = 47, 216967b5428dSAnoob Joseph }, 217067b5428dSAnoob Joseph .output_text = { 217167b5428dSAnoob Joseph .data = { 217267b5428dSAnoob Joseph /* IP */ 217367b5428dSAnoob Joseph 0x45, 0x00, 0x00, 0x5c, 0x06, 0x00, 0x00, 0x00, 217467b5428dSAnoob Joseph 0x40, 0x32, 0x13, 0x6c, 0x0a, 0x00, 0x6f, 0x02, 217567b5428dSAnoob Joseph 0x0a, 0x00, 0xde, 0x02, 217667b5428dSAnoob Joseph 217767b5428dSAnoob Joseph /* ESP */ 217867b5428dSAnoob Joseph 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 217967b5428dSAnoob Joseph 218067b5428dSAnoob Joseph /* IP */ 218167b5428dSAnoob Joseph 0x45, 0x00, 0x00, 0x2f, 0x49, 0x37, 0x00, 0x00, 218267b5428dSAnoob Joseph 0x40, 0x11, 0x22, 0x84, 0x0d, 0x00, 0x00, 0x02, 218367b5428dSAnoob Joseph 0x02, 0x00, 0x00, 0x02, 0x08, 0x00, 0x08, 0x00, 218467b5428dSAnoob Joseph 0x00, 0x1b, 0x6d, 0x99, 0x58, 0x58, 0x58, 0x58, 218567b5428dSAnoob Joseph 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 218667b5428dSAnoob Joseph 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 218767b5428dSAnoob Joseph 218867b5428dSAnoob Joseph /* ESP trailer */ 218967b5428dSAnoob Joseph 0x01, 0x02, 0x03, 0x03, 0x04, 219067b5428dSAnoob Joseph 219167b5428dSAnoob Joseph /* ICV */ 219267b5428dSAnoob Joseph 0xf1, 0x52, 0x64, 0xd1, 0x9b, 0x62, 0x24, 0xdd, 219367b5428dSAnoob Joseph 0xcc, 0x14, 0xf5, 0xc1, 219467b5428dSAnoob Joseph }, 219567b5428dSAnoob Joseph .len = 92, 219667b5428dSAnoob Joseph }, 219767b5428dSAnoob Joseph .ipsec_xform = { 219867b5428dSAnoob Joseph .spi = 0x100, 219967b5428dSAnoob Joseph .options.esn = 0, 220067b5428dSAnoob Joseph .options.udp_encap = 0, 220167b5428dSAnoob Joseph .options.copy_dscp = 0, 220267b5428dSAnoob Joseph .options.copy_flabel = 0, 220367b5428dSAnoob Joseph .options.copy_df = 0, 220467b5428dSAnoob Joseph .options.dec_ttl = 0, 220567b5428dSAnoob Joseph .options.ecn = 0, 220667b5428dSAnoob Joseph .options.stats = 0, 220767b5428dSAnoob Joseph .options.tunnel_hdr_verify = 0, 220867b5428dSAnoob Joseph .options.ip_csum_enable = 0, 220967b5428dSAnoob Joseph .options.l4_csum_enable = 0, 221067b5428dSAnoob Joseph .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 221167b5428dSAnoob Joseph .proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP, 221267b5428dSAnoob Joseph .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 221367b5428dSAnoob Joseph .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 221467b5428dSAnoob Joseph .replay_win_sz = 0, 221567b5428dSAnoob Joseph }, 221667b5428dSAnoob Joseph .aead = false, 221767b5428dSAnoob Joseph .xform = { 221867b5428dSAnoob Joseph .chain.cipher = { 221967b5428dSAnoob Joseph .next = NULL, 222067b5428dSAnoob Joseph .type = RTE_CRYPTO_SYM_XFORM_CIPHER, 222167b5428dSAnoob Joseph .cipher = { 222267b5428dSAnoob Joseph .op = RTE_CRYPTO_CIPHER_OP_ENCRYPT, 222367b5428dSAnoob Joseph .algo = RTE_CRYPTO_CIPHER_NULL, 222467b5428dSAnoob Joseph .key.length = 0, 222567b5428dSAnoob Joseph .iv.length = 0, 222667b5428dSAnoob Joseph }, 222767b5428dSAnoob Joseph }, 222867b5428dSAnoob Joseph .chain.auth = { 222967b5428dSAnoob Joseph .next = NULL, 223067b5428dSAnoob Joseph .type = RTE_CRYPTO_SYM_XFORM_AUTH, 223167b5428dSAnoob Joseph .auth = { 223267b5428dSAnoob Joseph .op = RTE_CRYPTO_AUTH_OP_GENERATE, 223367b5428dSAnoob Joseph .algo = RTE_CRYPTO_AUTH_AES_XCBC_MAC, 223467b5428dSAnoob Joseph .key.length = 16, 223567b5428dSAnoob Joseph .digest_length = 12, 223667b5428dSAnoob Joseph }, 223767b5428dSAnoob Joseph }, 223867b5428dSAnoob Joseph }, 223967b5428dSAnoob Joseph }; 224067b5428dSAnoob Joseph 224177f46cdaSArchana Muniganti struct ipsec_test_data pkt_ah_tunnel_sha256 = { 224277f46cdaSArchana Muniganti .auth_key = { 224377f46cdaSArchana Muniganti .data = { 224477f46cdaSArchana Muniganti 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 224577f46cdaSArchana Muniganti 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 224677f46cdaSArchana Muniganti 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 224777f46cdaSArchana Muniganti 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 224877f46cdaSArchana Muniganti }, 224977f46cdaSArchana Muniganti }, 225077f46cdaSArchana Muniganti .input_text = { 225177f46cdaSArchana Muniganti .data = { 225277f46cdaSArchana Muniganti /* IP */ 225377f46cdaSArchana Muniganti 0x45, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 225477f46cdaSArchana Muniganti 0x40, 0x01, 0xac, 0x27, 0xc0, 0xa8, 0x6f, 0x02, 225577f46cdaSArchana Muniganti 0xc0, 0xa8, 0xde, 0x02, 225677f46cdaSArchana Muniganti 225777f46cdaSArchana Muniganti /* ICMP */ 225877f46cdaSArchana Muniganti 0x08, 0x00, 0xfb, 0x37, 0x12, 0x34, 0x00, 0x00, 225977f46cdaSArchana Muniganti 0xba, 0xbe, 0x01, 0x23, 0x45, 0x67, 0xca, 0xfe, 226077f46cdaSArchana Muniganti 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 226177f46cdaSArchana Muniganti 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 226277f46cdaSArchana Muniganti 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 226377f46cdaSArchana Muniganti 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 226477f46cdaSArchana Muniganti 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 226577f46cdaSArchana Muniganti 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 226677f46cdaSArchana Muniganti 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 226777f46cdaSArchana Muniganti 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 226877f46cdaSArchana Muniganti 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 226977f46cdaSArchana Muniganti 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 227077f46cdaSArchana Muniganti 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 227177f46cdaSArchana Muniganti 0x58, 0x59, 0x5a, 0x5b, 227277f46cdaSArchana Muniganti }, 227377f46cdaSArchana Muniganti .len = 128, 227477f46cdaSArchana Muniganti }, 227577f46cdaSArchana Muniganti .output_text = { 227677f46cdaSArchana Muniganti .data = { 227777f46cdaSArchana Muniganti /* IP outer header */ 227877f46cdaSArchana Muniganti 0x45, 0x00, 0x00, 0xb0, 0x00, 0x01, 0x00, 0x00, 227977f46cdaSArchana Muniganti 0x00, 0x33, 0x59, 0x16, 0x0a, 0x00, 0x6f, 0x02, 228077f46cdaSArchana Muniganti 0x0a, 0x00, 0xde, 0x02, 228177f46cdaSArchana Muniganti 228277f46cdaSArchana Muniganti /* AH */ 228377f46cdaSArchana Muniganti 0x04, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7b, 228477f46cdaSArchana Muniganti 0x00, 0x00, 0x00, 0x01, 228577f46cdaSArchana Muniganti 0x59, 0xfd, 0xb4, 0xdb, 0x70, 0x57, 0x4f, 0x27, 228677f46cdaSArchana Muniganti 0x72, 0xfe, 0xc9, 0xdc, 0xb2, 0xf0, 0xab, 0xea, 228777f46cdaSArchana Muniganti 228877f46cdaSArchana Muniganti /* Inner IP */ 228977f46cdaSArchana Muniganti 0x45, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 229077f46cdaSArchana Muniganti 0x40, 0x01, 0xac, 0x27, 0xc0, 0xa8, 0x6f, 0x02, 229177f46cdaSArchana Muniganti 0xc0, 0xa8, 0xde, 0x02, 229277f46cdaSArchana Muniganti 229377f46cdaSArchana Muniganti /* ICMP */ 229477f46cdaSArchana Muniganti 0x08, 0x00, 0xfb, 0x37, 0x12, 0x34, 0x00, 0x00, 229577f46cdaSArchana Muniganti 0xba, 0xbe, 0x01, 0x23, 0x45, 0x67, 0xca, 0xfe, 229677f46cdaSArchana Muniganti 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 229777f46cdaSArchana Muniganti 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 229877f46cdaSArchana Muniganti 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 229977f46cdaSArchana Muniganti 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 230077f46cdaSArchana Muniganti 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 230177f46cdaSArchana Muniganti 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 230277f46cdaSArchana Muniganti 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 230377f46cdaSArchana Muniganti 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 230477f46cdaSArchana Muniganti 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 230577f46cdaSArchana Muniganti 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 230677f46cdaSArchana Muniganti 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 230777f46cdaSArchana Muniganti 0x58, 0x59, 0x5a, 0x5b, 230877f46cdaSArchana Muniganti }, 230977f46cdaSArchana Muniganti .len = 176, 231077f46cdaSArchana Muniganti }, 231177f46cdaSArchana Muniganti 231277f46cdaSArchana Muniganti .ipsec_xform = { 231377f46cdaSArchana Muniganti .spi = 0x7b, 231477f46cdaSArchana Muniganti .options.esn = 0, 231577f46cdaSArchana Muniganti .options.udp_encap = 0, 231677f46cdaSArchana Muniganti .options.copy_dscp = 0, 231777f46cdaSArchana Muniganti .options.copy_flabel = 0, 231877f46cdaSArchana Muniganti .options.copy_df = 0, 231977f46cdaSArchana Muniganti .options.dec_ttl = 0, 232077f46cdaSArchana Muniganti .options.ecn = 0, 232177f46cdaSArchana Muniganti .options.stats = 0, 232277f46cdaSArchana Muniganti .options.tunnel_hdr_verify = 0, 232377f46cdaSArchana Muniganti .options.ip_csum_enable = 0, 232477f46cdaSArchana Muniganti .options.l4_csum_enable = 0, 232577f46cdaSArchana Muniganti .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 232677f46cdaSArchana Muniganti .proto = RTE_SECURITY_IPSEC_SA_PROTO_AH, 232777f46cdaSArchana Muniganti .mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL, 232877f46cdaSArchana Muniganti .tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4, 232977f46cdaSArchana Muniganti .replay_win_sz = 0, 233077f46cdaSArchana Muniganti }, 233177f46cdaSArchana Muniganti 233277f46cdaSArchana Muniganti .aead = false, 233377f46cdaSArchana Muniganti .auth_only = true, 233477f46cdaSArchana Muniganti 233577f46cdaSArchana Muniganti .xform = { 233677f46cdaSArchana Muniganti .chain.auth = { 233777f46cdaSArchana Muniganti .next = NULL, 233877f46cdaSArchana Muniganti .type = RTE_CRYPTO_SYM_XFORM_AUTH, 233977f46cdaSArchana Muniganti .auth = { 234077f46cdaSArchana Muniganti .op = RTE_CRYPTO_AUTH_OP_GENERATE, 234177f46cdaSArchana Muniganti .algo = RTE_CRYPTO_AUTH_SHA256_HMAC, 234277f46cdaSArchana Muniganti .key.length = 32, 234377f46cdaSArchana Muniganti .digest_length = 16, 234477f46cdaSArchana Muniganti }, 234577f46cdaSArchana Muniganti }, 234677f46cdaSArchana Muniganti }, 234777f46cdaSArchana Muniganti }; 234877f46cdaSArchana Muniganti 234977f46cdaSArchana Muniganti struct ipsec_test_data pkt_ah_transport_sha256 = { 235077f46cdaSArchana Muniganti .auth_key = { 235177f46cdaSArchana Muniganti .data = { 235277f46cdaSArchana Muniganti 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 235377f46cdaSArchana Muniganti 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 235477f46cdaSArchana Muniganti 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 235577f46cdaSArchana Muniganti 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 0x5a, 235677f46cdaSArchana Muniganti }, 235777f46cdaSArchana Muniganti }, 235877f46cdaSArchana Muniganti .input_text = { 235977f46cdaSArchana Muniganti .data = { 236077f46cdaSArchana Muniganti /* IP */ 236177f46cdaSArchana Muniganti 0x45, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 236277f46cdaSArchana Muniganti 0x40, 0x01, 0xac, 0x27, 0xc0, 0xa8, 0x6f, 0x02, 236377f46cdaSArchana Muniganti 0xc0, 0xa8, 0xde, 0x02, 236477f46cdaSArchana Muniganti 236577f46cdaSArchana Muniganti /* ICMP */ 236677f46cdaSArchana Muniganti 0x08, 0x00, 0xfb, 0x37, 0x12, 0x34, 0x00, 0x00, 236777f46cdaSArchana Muniganti 0xba, 0xbe, 0x01, 0x23, 0x45, 0x67, 0xca, 0xfe, 236877f46cdaSArchana Muniganti 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 236977f46cdaSArchana Muniganti 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 237077f46cdaSArchana Muniganti 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 237177f46cdaSArchana Muniganti 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 237277f46cdaSArchana Muniganti 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 237377f46cdaSArchana Muniganti 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 237477f46cdaSArchana Muniganti 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 237577f46cdaSArchana Muniganti 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 237677f46cdaSArchana Muniganti 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 237777f46cdaSArchana Muniganti 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 237877f46cdaSArchana Muniganti 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 237977f46cdaSArchana Muniganti 0x58, 0x59, 0x5a, 0x5b, 238077f46cdaSArchana Muniganti }, 238177f46cdaSArchana Muniganti .len = 128, 238277f46cdaSArchana Muniganti }, 238377f46cdaSArchana Muniganti .output_text = { 238477f46cdaSArchana Muniganti .data = { 238577f46cdaSArchana Muniganti /* IP outer header */ 238677f46cdaSArchana Muniganti 0x45, 0x00, 0x00, 0x9c, 0x00, 0x00, 0x00, 0x00, 238777f46cdaSArchana Muniganti 0x40, 0x33, 0xab, 0xd9, 0xc0, 0xa8, 0x6f, 0x02, 238877f46cdaSArchana Muniganti 0xc0, 0xa8, 0xde, 0x02, 238977f46cdaSArchana Muniganti 239077f46cdaSArchana Muniganti /* AH */ 239177f46cdaSArchana Muniganti 0x01, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7b, 239277f46cdaSArchana Muniganti 0x00, 0x00, 0x00, 0x01, 239377f46cdaSArchana Muniganti 0x6c, 0x2e, 0xf7, 0x1f, 0x7c, 0x70, 0x39, 0xa3, 239477f46cdaSArchana Muniganti 0x4a, 0x77, 0x01, 0x47, 0x9e, 0x45, 0x73, 0x51, 239577f46cdaSArchana Muniganti 239677f46cdaSArchana Muniganti /* ICMP */ 239777f46cdaSArchana Muniganti 0x08, 0x00, 0xfb, 0x37, 0x12, 0x34, 0x00, 0x00, 239877f46cdaSArchana Muniganti 0xba, 0xbe, 0x01, 0x23, 0x45, 0x67, 0xca, 0xfe, 239977f46cdaSArchana Muniganti 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 240077f46cdaSArchana Muniganti 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 240177f46cdaSArchana Muniganti 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 240277f46cdaSArchana Muniganti 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 240377f46cdaSArchana Muniganti 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 240477f46cdaSArchana Muniganti 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 240577f46cdaSArchana Muniganti 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 240677f46cdaSArchana Muniganti 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 240777f46cdaSArchana Muniganti 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 240877f46cdaSArchana Muniganti 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 240977f46cdaSArchana Muniganti 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 241077f46cdaSArchana Muniganti 0x58, 0x59, 0x5a, 0x5b, 241177f46cdaSArchana Muniganti }, 241277f46cdaSArchana Muniganti .len = 156, 241377f46cdaSArchana Muniganti }, 241477f46cdaSArchana Muniganti 241577f46cdaSArchana Muniganti .ipsec_xform = { 241677f46cdaSArchana Muniganti .spi = 0x7b, 241777f46cdaSArchana Muniganti .options.esn = 0, 241877f46cdaSArchana Muniganti .options.udp_encap = 0, 241977f46cdaSArchana Muniganti .options.copy_dscp = 0, 242077f46cdaSArchana Muniganti .options.copy_flabel = 0, 242177f46cdaSArchana Muniganti .options.copy_df = 0, 242277f46cdaSArchana Muniganti .options.dec_ttl = 0, 242377f46cdaSArchana Muniganti .options.ecn = 0, 242477f46cdaSArchana Muniganti .options.stats = 0, 242577f46cdaSArchana Muniganti .options.tunnel_hdr_verify = 0, 242677f46cdaSArchana Muniganti .options.ip_csum_enable = 0, 242777f46cdaSArchana Muniganti .options.l4_csum_enable = 0, 242877f46cdaSArchana Muniganti .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 242977f46cdaSArchana Muniganti .proto = RTE_SECURITY_IPSEC_SA_PROTO_AH, 243077f46cdaSArchana Muniganti .mode = RTE_SECURITY_IPSEC_SA_MODE_TRANSPORT, 243177f46cdaSArchana Muniganti .replay_win_sz = 0, 243277f46cdaSArchana Muniganti }, 243377f46cdaSArchana Muniganti 243477f46cdaSArchana Muniganti .aead = false, 243577f46cdaSArchana Muniganti .auth_only = true, 243677f46cdaSArchana Muniganti 243777f46cdaSArchana Muniganti .xform = { 243877f46cdaSArchana Muniganti .chain.auth = { 243977f46cdaSArchana Muniganti .next = NULL, 244077f46cdaSArchana Muniganti .type = RTE_CRYPTO_SYM_XFORM_AUTH, 244177f46cdaSArchana Muniganti .auth = { 244277f46cdaSArchana Muniganti .op = RTE_CRYPTO_AUTH_OP_GENERATE, 244377f46cdaSArchana Muniganti .algo = RTE_CRYPTO_AUTH_SHA256_HMAC, 244477f46cdaSArchana Muniganti .key.length = 32, 244577f46cdaSArchana Muniganti .digest_length = 16, 244677f46cdaSArchana Muniganti }, 244777f46cdaSArchana Muniganti }, 244877f46cdaSArchana Muniganti }, 244977f46cdaSArchana Muniganti }; 245077f46cdaSArchana Muniganti 24510e4cc244SArchana Muniganti struct ipsec_test_data pkt_ah_ipv4_aes_gmac_128 = { 24520e4cc244SArchana Muniganti .auth_key = { 24530e4cc244SArchana Muniganti .data = { 24540e4cc244SArchana Muniganti 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 24550e4cc244SArchana Muniganti 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 24560e4cc244SArchana Muniganti }, 24570e4cc244SArchana Muniganti }, 24580e4cc244SArchana Muniganti .input_text = { 24590e4cc244SArchana Muniganti .data = { 24600e4cc244SArchana Muniganti /* IP */ 24610e4cc244SArchana Muniganti 0x45, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 24620e4cc244SArchana Muniganti 0x40, 0x01, 0xac, 0x27, 0xc0, 0xa8, 0x6f, 0x02, 24630e4cc244SArchana Muniganti 0xc0, 0xa8, 0xde, 0x02, 24640e4cc244SArchana Muniganti 24650e4cc244SArchana Muniganti /* ICMP */ 24660e4cc244SArchana Muniganti 0x08, 0x00, 0xfb, 0x37, 0x12, 0x34, 0x00, 0x00, 24670e4cc244SArchana Muniganti 0xba, 0xbe, 0x01, 0x23, 0x45, 0x67, 0xca, 0xfe, 24680e4cc244SArchana Muniganti 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 24690e4cc244SArchana Muniganti 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 24700e4cc244SArchana Muniganti 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 24710e4cc244SArchana Muniganti 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 24720e4cc244SArchana Muniganti 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 24730e4cc244SArchana Muniganti 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 24740e4cc244SArchana Muniganti 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 24750e4cc244SArchana Muniganti 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 24760e4cc244SArchana Muniganti 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 24770e4cc244SArchana Muniganti 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 24780e4cc244SArchana Muniganti 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 24790e4cc244SArchana Muniganti 0x58, 0x59, 0x5a, 0x5b, 24800e4cc244SArchana Muniganti }, 24810e4cc244SArchana Muniganti .len = 128, 24820e4cc244SArchana Muniganti }, 24830e4cc244SArchana Muniganti .output_text = { 24840e4cc244SArchana Muniganti .data = { 24850e4cc244SArchana Muniganti /* IP outer header */ 24860e4cc244SArchana Muniganti 0x45, 0x00, 0x00, 0xa4, 0x00, 0x00, 0x00, 0x00, 24870e4cc244SArchana Muniganti 0x40, 0x33, 0xab, 0xd1, 0xc0, 0xa8, 0x6f, 0x02, 24880e4cc244SArchana Muniganti 0xc0, 0xa8, 0xde, 0x02, 24890e4cc244SArchana Muniganti 24900e4cc244SArchana Muniganti /* AH */ 24910e4cc244SArchana Muniganti 0x01, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7b, 24920e4cc244SArchana Muniganti 0x00, 0x00, 0x00, 0x01, 24930e4cc244SArchana Muniganti 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 24940e4cc244SArchana Muniganti 0xd6, 0x0e, 0xcc, 0x22, 0x31, 0x79, 0x59, 0x72, 24950e4cc244SArchana Muniganti 0x68, 0xc9, 0x58, 0xfb, 0x8b, 0xb0, 0xbb, 0xd5, 24960e4cc244SArchana Muniganti 24970e4cc244SArchana Muniganti /* ICMP */ 24980e4cc244SArchana Muniganti 0x08, 0x00, 0xfb, 0x37, 0x12, 0x34, 0x00, 0x00, 24990e4cc244SArchana Muniganti 0xba, 0xbe, 0x01, 0x23, 0x45, 0x67, 0xca, 0xfe, 25000e4cc244SArchana Muniganti 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 25010e4cc244SArchana Muniganti 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 25020e4cc244SArchana Muniganti 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 25030e4cc244SArchana Muniganti 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 25040e4cc244SArchana Muniganti 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 25050e4cc244SArchana Muniganti 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 25060e4cc244SArchana Muniganti 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 25070e4cc244SArchana Muniganti 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 25080e4cc244SArchana Muniganti 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 25090e4cc244SArchana Muniganti 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 25100e4cc244SArchana Muniganti 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 25110e4cc244SArchana Muniganti 0x58, 0x59, 0x5a, 0x5b, 25120e4cc244SArchana Muniganti }, 25130e4cc244SArchana Muniganti .len = 164, 25140e4cc244SArchana Muniganti }, 25150e4cc244SArchana Muniganti .salt = { 25160e4cc244SArchana Muniganti .data = { 25170e4cc244SArchana Muniganti 0xca, 0xfe, 0xba, 0xbe, 25180e4cc244SArchana Muniganti }, 25190e4cc244SArchana Muniganti .len = 4, 25200e4cc244SArchana Muniganti }, 25210e4cc244SArchana Muniganti 25220e4cc244SArchana Muniganti .iv = { 25230e4cc244SArchana Muniganti .data = { 25240e4cc244SArchana Muniganti 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 25250e4cc244SArchana Muniganti }, 25260e4cc244SArchana Muniganti }, 25270e4cc244SArchana Muniganti 25280e4cc244SArchana Muniganti .ipsec_xform = { 25290e4cc244SArchana Muniganti .spi = 0x7b, 25300e4cc244SArchana Muniganti .options.esn = 0, 25310e4cc244SArchana Muniganti .options.udp_encap = 0, 25320e4cc244SArchana Muniganti .options.copy_dscp = 0, 25330e4cc244SArchana Muniganti .options.copy_flabel = 0, 25340e4cc244SArchana Muniganti .options.copy_df = 0, 25350e4cc244SArchana Muniganti .options.dec_ttl = 0, 25360e4cc244SArchana Muniganti .options.ecn = 0, 25370e4cc244SArchana Muniganti .options.stats = 0, 25380e4cc244SArchana Muniganti .options.tunnel_hdr_verify = 0, 25390e4cc244SArchana Muniganti .options.ip_csum_enable = 0, 25400e4cc244SArchana Muniganti .options.l4_csum_enable = 0, 25410e4cc244SArchana Muniganti .direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS, 25420e4cc244SArchana Muniganti .proto = RTE_SECURITY_IPSEC_SA_PROTO_AH, 25430e4cc244SArchana Muniganti .mode = RTE_SECURITY_IPSEC_SA_MODE_TRANSPORT, 25440e4cc244SArchana Muniganti .replay_win_sz = 0, 25450e4cc244SArchana Muniganti }, 25460e4cc244SArchana Muniganti 25470e4cc244SArchana Muniganti .aead = false, 25480e4cc244SArchana Muniganti .aes_gmac = true, 25490e4cc244SArchana Muniganti .auth_only = true, 25500e4cc244SArchana Muniganti 25510e4cc244SArchana Muniganti .xform = { 25520e4cc244SArchana Muniganti .chain.auth = { 25530e4cc244SArchana Muniganti .next = NULL, 25540e4cc244SArchana Muniganti .type = RTE_CRYPTO_SYM_XFORM_AUTH, 25550e4cc244SArchana Muniganti .auth = { 25560e4cc244SArchana Muniganti .op = RTE_CRYPTO_AUTH_OP_GENERATE, 25570e4cc244SArchana Muniganti .algo = RTE_CRYPTO_AUTH_AES_GMAC, 25580e4cc244SArchana Muniganti .key.length = 16, 25590e4cc244SArchana Muniganti .digest_length = 16, 25600e4cc244SArchana Muniganti .iv.length = 12, 25610e4cc244SArchana Muniganti .iv.offset = IV_OFFSET, 25620e4cc244SArchana Muniganti }, 25630e4cc244SArchana Muniganti }, 25640e4cc244SArchana Muniganti }, 25650e4cc244SArchana Muniganti }; 25660e4cc244SArchana Muniganti 2567474f1202SAnoob Joseph #endif /* TEST_CRYPTODEV_SECURITY_IPSEC_TEST_VECTORS_H_ */ 2568