get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/135397/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 135397,
    "url": "http://patchwork.dpdk.org/api/patches/135397/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/20231220132616.318983-4-nishikanta.nayak@intel.com/",
    "project": {
        "id": 1,
        "url": "http://patchwork.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<20231220132616.318983-4-nishikanta.nayak@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20231220132616.318983-4-nishikanta.nayak@intel.com",
    "date": "2023-12-20T13:26:16",
    "name": "[4/4] test/cryptodev: add tests for GCM with AAD",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "897ebdaf64d01c661135b3f478020f5563ee8778",
    "submitter": {
        "id": 3253,
        "url": "http://patchwork.dpdk.org/api/people/3253/?format=api",
        "name": "Nayak, Nishikanta",
        "email": "nishikanta.nayak@intel.com"
    },
    "delegate": {
        "id": 6690,
        "url": "http://patchwork.dpdk.org/api/users/6690/?format=api",
        "username": "akhil",
        "first_name": "akhil",
        "last_name": "goyal",
        "email": "gakhil@marvell.com"
    },
    "mbox": "http://patchwork.dpdk.org/project/dpdk/patch/20231220132616.318983-4-nishikanta.nayak@intel.com/mbox/",
    "series": [
        {
            "id": 30630,
            "url": "http://patchwork.dpdk.org/api/series/30630/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=30630",
            "date": "2023-12-20T13:26:13",
            "name": "[1/4] common/qat: add files specific to GEN5",
            "version": 1,
            "mbox": "http://patchwork.dpdk.org/series/30630/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/patches/135397/comments/",
    "check": "fail",
    "checks": "http://patchwork.dpdk.org/api/patches/135397/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 00F424374A;\n\tWed, 20 Dec 2023 14:27:11 +0100 (CET)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id D2B7040E01;\n\tWed, 20 Dec 2023 14:26:56 +0100 (CET)",
            "from mgamail.intel.com (mgamail.intel.com [134.134.136.126])\n by mails.dpdk.org (Postfix) with ESMTP id 5BB9A40A8A\n for <dev@dpdk.org>; Wed, 20 Dec 2023 14:26:55 +0100 (CET)",
            "from fmsmga008.fm.intel.com ([10.253.24.58])\n by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 20 Dec 2023 05:26:54 -0800",
            "from silpixa00400355.ir.intel.com (HELO\n silpixa00400355.ger.corp.intel.com) ([10.237.222.80])\n by fmsmga008.fm.intel.com with ESMTP; 20 Dec 2023 05:26:51 -0800"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple;\n d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n t=1703078815; x=1734614815;\n h=from:to:cc:subject:date:message-id:in-reply-to:\n references:mime-version:content-transfer-encoding;\n bh=WIZL40qoYrTmeUCTKwRxgI9sQI3SSPi393kCtYyD5Ao=;\n b=eQxECUtG7G+qUw4FVANNFiWb7pbJYHxGPdoEFa3xpw9h3YrDoiZS/Zxp\n LSk3OHAY9oDZD7wgkFG8yL0xVzjkXgo1+shO6ApwjJnBYYErLmryggf/P\n smfRvQ2TeR9KNaywbgLTJZCLIZvkKazf8mtwy8cZdVyOE32Hu0xpIgdB8\n 6CLFa0s0iL7K1NSZAddFSQzH3jKwb5Gn7feuaE4dxLC4+gyOD+rvvTHC4\n YfXeMXTUjKc69m+yrSIy7hpL7b84DshPBjUElC1sgJQGAWzXNj5Uhp0op\n Af8DFMkbIYR6j0ocqLekCWTtUgzqAyxckwECsIUtZezi4zjdN4y/zkWwJ Q==;",
        "X-IronPort-AV": [
            "E=McAfee;i=\"6600,9927,10929\"; a=\"380801541\"",
            "E=Sophos;i=\"6.04,291,1695711600\"; d=\"scan'208\";a=\"380801541\"",
            "E=McAfee;i=\"6600,9927,10929\"; a=\"842276314\"",
            "E=Sophos;i=\"6.04,291,1695711600\"; d=\"scan'208\";a=\"842276314\""
        ],
        "X-ExtLoop1": "1",
        "From": "Nishikant Nayak <nishikanta.nayak@intel.com>",
        "To": "dev@dpdk.org",
        "Cc": "kai.ji@intel.com, ciara.power@intel.com, arkadiuszx.kusztal@intel.com,\n Nishikant Nayak <nishikanta.nayak@intel.com>,\n Akhil Goyal <gakhil@marvell.com>, Fan Zhang <fanzhang.oss@gmail.com>",
        "Subject": "[PATCH 4/4] test/cryptodev: add tests for GCM with AAD",
        "Date": "Wed, 20 Dec 2023 13:26:16 +0000",
        "Message-Id": "<20231220132616.318983-4-nishikanta.nayak@intel.com>",
        "X-Mailer": "git-send-email 2.25.1",
        "In-Reply-To": "<20231220132616.318983-1-nishikanta.nayak@intel.com>",
        "References": "<20231220132616.318983-1-nishikanta.nayak@intel.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org"
    },
    "content": "Adding one new unit test code for validating the features\nadded as part of GCM with 64 byte AAD.\nThe new test case adds one new test for GCM algo for both\nencrypt and decrypt operations.\n\nSigned-off-by: Nishikant Nayak <nishikanta.nayak@intel.com>\n---\n app/test/test_cryptodev.c                   | 48 +++++++++++++---\n app/test/test_cryptodev_aead_test_vectors.h | 62 +++++++++++++++++++++\n 2 files changed, 103 insertions(+), 7 deletions(-)",
    "diff": "diff --git a/app/test/test_cryptodev.c b/app/test/test_cryptodev.c\nindex 58561ededf..73581db8cd 100644\n--- a/app/test/test_cryptodev.c\n+++ b/app/test/test_cryptodev.c\n@@ -12156,6 +12156,18 @@ test_AES_GCM_auth_decryption_test_case_256_7(void)\n \treturn test_authenticated_decryption(&gcm_test_case_256_7);\n }\n \n+static int\n+test_AES_GCM_auth_decryption_test_case_256_8(void)\n+{\n+\treturn test_authenticated_decryption(&gcm_test_case_256_8);\n+}\n+\n+static int\n+test_AES_GCM_auth_encryption_test_case_256_8(void)\n+{\n+\treturn test_authenticated_encryption(&gcm_test_case_256_8);\n+}\n+\n static int\n test_AES_GCM_auth_decryption_test_case_aad_1(void)\n {\n@@ -12275,10 +12287,16 @@ test_authenticated_encryption_oop(const struct aead_test_data *tdata)\n \n \t/* Verify the capabilities */\n \tstruct rte_cryptodev_sym_capability_idx cap_idx;\n+\tconst struct rte_cryptodev_symmetric_capability *capability;\n \tcap_idx.type = RTE_CRYPTO_SYM_XFORM_AEAD;\n \tcap_idx.algo.aead = tdata->algo;\n-\tif (rte_cryptodev_sym_capability_get(ts_params->valid_devs[0],\n-\t\t\t&cap_idx) == NULL)\n+\tcapability = rte_cryptodev_sym_capability_get(ts_params->valid_devs[0],\n+\t\t&cap_idx);\n+\tif (capability == NULL)\n+\t\treturn TEST_SKIPPED;\n+\tif (rte_cryptodev_sym_capability_check_aead(\n+\t\tcapability, tdata->key.len, tdata->auth_tag.len,\n+\t\ttdata->aad.len, tdata->iv.len))\n \t\treturn TEST_SKIPPED;\n \n \trte_cryptodev_info_get(ts_params->valid_devs[0], &dev_info);\n@@ -12381,16 +12399,22 @@ test_authenticated_decryption_oop(const struct aead_test_data *tdata)\n \n \t/* Verify the capabilities */\n \tstruct rte_cryptodev_sym_capability_idx cap_idx;\n+\tconst struct rte_cryptodev_symmetric_capability *capability;\n \tcap_idx.type = RTE_CRYPTO_SYM_XFORM_AEAD;\n \tcap_idx.algo.aead = tdata->algo;\n-\tif (rte_cryptodev_sym_capability_get(ts_params->valid_devs[0],\n-\t\t\t&cap_idx) == NULL)\n-\t\treturn TEST_SKIPPED;\n+\tcapability = rte_cryptodev_sym_capability_get(ts_params->valid_devs[0],\n+\t\t&cap_idx);\n \n \t/* not supported with CPU crypto and raw data-path APIs*/\n \tif (gbl_action_type == RTE_SECURITY_ACTION_TYPE_CPU_CRYPTO ||\n \t\t\tglobal_api_test_type == CRYPTODEV_RAW_API_TEST)\n \t\treturn TEST_SKIPPED;\n+\tif (capability == NULL)\n+\t\treturn TEST_SKIPPED;\n+\tif (rte_cryptodev_sym_capability_check_aead(\n+\t\tcapability, tdata->key.len, tdata->auth_tag.len,\n+\t\ttdata->aad.len, tdata->iv.len))\n+\t\treturn TEST_SKIPPED;\n \n \tif ((global_api_test_type == CRYPTODEV_RAW_API_TEST) &&\n \t\t\t(!(feat_flags & RTE_CRYPTODEV_FF_SYM_RAW_DP))) {\n@@ -15411,10 +15435,16 @@ test_authenticated_encryption_SGL(const struct aead_test_data *tdata,\n \n \t/* Verify the capabilities */\n \tstruct rte_cryptodev_sym_capability_idx cap_idx;\n+\tconst struct rte_cryptodev_symmetric_capability *capability;\n \tcap_idx.type = RTE_CRYPTO_SYM_XFORM_AEAD;\n \tcap_idx.algo.aead = tdata->algo;\n-\tif (rte_cryptodev_sym_capability_get(ts_params->valid_devs[0],\n-\t\t\t&cap_idx) == NULL)\n+\tcapability = rte_cryptodev_sym_capability_get(ts_params->valid_devs[0],\n+\t\t&cap_idx);\n+\tif (capability == NULL)\n+\t\treturn TEST_SKIPPED;\n+\tif (rte_cryptodev_sym_capability_check_aead(\n+\t\tcapability, tdata->key.len, tdata->auth_tag.len,\n+\t\ttdata->aad.len, tdata->iv.len))\n \t\treturn TEST_SKIPPED;\n \n \t/*\n@@ -16853,6 +16883,8 @@ static struct unit_test_suite cryptodev_aes_gcm_auth_testsuite  = {\n \t\t\ttest_AES_GCM_auth_encryption_test_case_256_6),\n \t\tTEST_CASE_ST(ut_setup, ut_teardown,\n \t\t\ttest_AES_GCM_auth_encryption_test_case_256_7),\n+\t\tTEST_CASE_ST(ut_setup, ut_teardown,\n+\t\t\ttest_AES_GCM_auth_encryption_test_case_256_8),\n \n \t\t/** AES GCM Authenticated Decryption 256 bits key */\n \t\tTEST_CASE_ST(ut_setup, ut_teardown,\n@@ -16869,6 +16901,8 @@ static struct unit_test_suite cryptodev_aes_gcm_auth_testsuite  = {\n \t\t\ttest_AES_GCM_auth_decryption_test_case_256_6),\n \t\tTEST_CASE_ST(ut_setup, ut_teardown,\n \t\t\ttest_AES_GCM_auth_decryption_test_case_256_7),\n+\t\tTEST_CASE_ST(ut_setup, ut_teardown,\n+\t\t\ttest_AES_GCM_auth_decryption_test_case_256_8),\n \n \t\t/** AES GCM Authenticated Encryption big aad size */\n \t\tTEST_CASE_ST(ut_setup, ut_teardown,\ndiff --git a/app/test/test_cryptodev_aead_test_vectors.h b/app/test/test_cryptodev_aead_test_vectors.h\nindex 07292620a4..eadf206e4d 100644\n--- a/app/test/test_cryptodev_aead_test_vectors.h\n+++ b/app/test/test_cryptodev_aead_test_vectors.h\n@@ -17,6 +17,16 @@ static uint8_t gcm_aad_text[MAX_AAD_LENGTH] = {\n \t\t0x00, 0xf1, 0xe2, 0xd3, 0xc4, 0xb5, 0xa6, 0x97,\n \t\t0x88, 0x79, 0x6a, 0x5b, 0x4c, 0x3d, 0x2e, 0x1f };\n \n+static uint8_t gcm_aad_64B_text[MAX_AAD_LENGTH] = {\n+\t\t0xED, 0x3E, 0xA8, 0x1F, 0x74, 0xE5, 0xD1, 0x96,\n+\t\t0xA4, 0xD5, 0x4B, 0x26, 0xBB, 0x20, 0x61, 0x7B,\n+\t\t0x3B, 0x9C, 0x2A, 0x69, 0x90, 0xEF, 0xD7, 0x9A,\n+\t\t0x94, 0xC2, 0xF5, 0x86, 0xBD, 0x00, 0xF6, 0xEA,\n+\t\t0x0B, 0x14, 0x24, 0xF2, 0x08, 0x67, 0x42, 0x3A,\n+\t\t0xB5, 0xB8, 0x32, 0x97, 0xB5, 0x99, 0x69, 0x75,\n+\t\t0x60, 0x00, 0x8F, 0xF7, 0x6F, 0x16, 0x52, 0x66,\n+\t\t0xF1, 0xA9, 0x38, 0xFD, 0xB0, 0x61, 0x60, 0xB5 };\n+\n static uint8_t ccm_aad_test_1[8] = {\n \t\t0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07\n };\n@@ -1736,6 +1746,58 @@ static const struct aead_test_data gcm_test_case_256_7 = {\n \t}\n };\n \n+static const struct aead_test_data gcm_test_case_256_8 = {\n+\t.algo = RTE_CRYPTO_AEAD_AES_GCM,\n+\t.key = {\n+\t\t.data = {\n+\t\t\t0xD8, 0xFD, 0x8F, 0x5A, 0x13, 0x7B, 0x05, 0x2C,\n+\t\t\t0xA4, 0x64, 0x7A, 0xDD, 0x1E, 0x9A, 0x68, 0x33,\n+\t\t\t0x04, 0x70, 0xE8, 0x1E, 0x42, 0x84, 0x64, 0xD2,\n+\t\t\t0x23, 0xA1, 0x6A, 0x0A, 0x05, 0x7B, 0x90, 0xDE},\n+\t\t.len = 32\n+\t},\n+\t.iv = {\n+\t\t.data = {\n+\t\t\t0x8D, 0xDF, 0xB8, 0x7F, 0xD0, 0x79, 0x77, 0x55,\n+\t\t\t0xD5, 0x48, 0x03, 0x05},\n+\t\t.len = 12\n+\t},\n+\t.aad = {\n+\t\t.data = gcm_aad_64B_text,\n+\t\t.len = 64\n+\t},\n+\t.plaintext = {\n+\t\t.data = {\n+\t\t\t0x4D, 0xBC, 0x2C, 0x7F, 0x25, 0x1F, 0x07, 0x25,\n+\t\t\t0x54, 0x8C, 0x43, 0xDB, 0xD8, 0x06, 0x9F, 0xBF,\n+\t\t\t0xCA, 0x60, 0xF4, 0xEF, 0x13, 0x87, 0xE8, 0x2F,\n+\t\t\t0x4D, 0x9D, 0x1D, 0x87, 0x9F, 0x91, 0x79, 0x7E,\n+\t\t\t0x3E, 0x98, 0xA3, 0x63, 0xC6, 0xFE, 0xDB, 0x35,\n+\t\t\t0x96, 0x59, 0xB2, 0x0C, 0x80, 0x96, 0x70, 0x07,\n+\t\t\t0x87, 0x42, 0xAB, 0x4F, 0x31, 0x73, 0xC4, 0xF9,\n+\t\t\t0xB0, 0x1E, 0xF1, 0xBC, 0x7D, 0x45, 0xE5, 0xF3},\n+\t\t.len = 64\n+\t},\n+\t.ciphertext = {\n+\t    .data = {\n+\t\t\t0x21, 0xFA, 0x59, 0x4F, 0x1F, 0x6B, 0x19, 0xC2,\n+\t\t\t0x68, 0xBC, 0x05, 0x93, 0x4E, 0x48, 0x6C, 0x5B,\n+\t\t\t0x0B, 0x7A, 0x43, 0xB7, 0x60, 0x8E, 0x00, 0xC4,\n+\t\t\t0xAB, 0x14, 0x6B, 0xCC, 0xA1, 0x27, 0x6A, 0xDE,\n+\t\t\t0x8E, 0xB6, 0x98, 0xBB, 0x4F, 0xD0, 0x6F, 0x30,\n+\t\t\t0x0F, 0x04, 0xA8, 0x5B, 0xDC, 0xD8, 0xE8, 0x8A,\n+\t\t\t0x73, 0xD9, 0xB8, 0x60, 0x7C, 0xE4, 0x32, 0x4C,\n+\t\t\t0x3A, 0x0B, 0xC2, 0x82, 0xDA, 0x88, 0x17, 0x69},\n+\t    .len = 64\n+\t},\n+\t.auth_tag = {\n+\t\t.data = {\n+\t\t\t0x3B, 0x80, 0x83, 0x72, 0xE5, 0x1B, 0x94, 0x15,\n+\t\t\t0x75, 0xC8, 0x62, 0xBC, 0xA1, 0x66, 0x91, 0x45},\n+\t\t.len = 16\n+\t}\n+};\n+\n /** variable AAD AES-GCM-128 Test Vectors */\n static const struct aead_test_data gcm_test_case_aad_1 = {\n \t.algo = RTE_CRYPTO_AEAD_AES_GCM,\n",
    "prefixes": [
        "4/4"
    ]
}