From patchwork Wed Sep 20 09:50:08 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Akhil Goyal X-Patchwork-Id: 28995 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id ADDA9239; Wed, 20 Sep 2017 11:52:45 +0200 (CEST) Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0082.outbound.protection.outlook.com [104.47.32.82]) by dpdk.org (Postfix) with ESMTP id 29474239 for ; Wed, 20 Sep 2017 11:52:44 +0200 (CEST) Received: from BN3PR03CA0103.namprd03.prod.outlook.com (10.174.66.21) by CY1PR03MB2363.namprd03.prod.outlook.com (10.166.207.150) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.56.11; Wed, 20 Sep 2017 09:52:42 +0000 Received: from BL2FFO11FD050.protection.gbl (2a01:111:f400:7c09::150) by BN3PR03CA0103.outlook.office365.com (2603:10b6:400:4::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.56.9 via Frontend Transport; Wed, 20 Sep 2017 09:52:42 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; NXP1.onmicrosoft.com; dkim=none (message not signed) header.d=none;NXP1.onmicrosoft.com; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BL2FFO11FD050.mail.protection.outlook.com (10.173.161.212) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.35.14 via Frontend Transport; Wed, 20 Sep 2017 09:52:42 +0000 Received: from netperf2.ap.freescale.net ([10.232.133.164]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id v8K9qcWo030265; Wed, 20 Sep 2017 02:52:39 -0700 From: Akhil Goyal To: CC: , , , Akhil Goyal Date: Wed, 20 Sep 2017 15:20:08 +0530 Message-ID: <20170920095008.20923-1-akhil.goyal@nxp.com> X-Mailer: git-send-email 2.9.3 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131503747627212973; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(336005)(7966004)(39380400002)(346002)(39860400002)(376002)(2980300002)(1109001)(1110001)(339900001)(189002)(199003)(6916009)(6666003)(77096006)(104016004)(8676002)(8656003)(53936002)(498600001)(2351001)(106466001)(305945005)(85426001)(54906003)(105606002)(356003)(33646002)(316002)(16586007)(68736007)(86362001)(97736004)(4326008)(48376002)(50226002)(50986999)(8936002)(81166006)(81156014)(5660300001)(5003940100001)(189998001)(47776003)(36756003)(50466002)(2906002)(1076002); DIR:OUT; SFP:1101; SCL:1; SRVR:CY1PR03MB2363; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11FD050; 1:BuTe9SEwMDJfZIkzqoCZX02loWnBei0YtPRD81qTAFZnSko2ck5jkIQGrmZDpawyptJTPw0Z9s6vsPYt+H/rsCgYvxPNCnWMOff63YSkzJZCNesfxrFcscc5WMZm+eEU MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 16446967-656e-47a3-7f4f-08d5000d5668 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(300000503095)(300135400095)(2017052603199)(201703131430075)(201703131517081)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:CY1PR03MB2363; X-Microsoft-Exchange-Diagnostics: 1; CY1PR03MB2363; 3:82uGdHRsK/pdBBETet4izrK6PvTjOlsrmVifVdnjN+23RIVJSuEHjZZsIF93BGwmqlWIEbFWJu/nnmzAoGsdLGCm2JH/KNh5zqJXTAIqXVRe+1BxX3KXnlsGMnCBEOXDQ49/lDaB+zj06EfQyamYmml4g1VhvUjyy/vB7UUnCiAYg/gGLcccRrmhtiCvGsNEDV/y4HwO4hT8VMnTS4w0Aekpp1jraNpfhARzITOOE2Yu5EXqkHT4WNicVROtJEf3KHInJtS/oX+wMcBlmJT8Q+1ZwdWvOfTUcDvnPWVQeI0zJmS0FAMthwaXDi2P3R661wcVyy4LzJmr71fZH8pXW+7KdxV3nx39aWOt5qMjej8=; 25:2G9s2NcRJQzNWVF5sn9h6YmTTqIKuyT8XUJhnxyVc81rwfrtSH+PZWi4JlR7xB+jRihXTbyBgdjk1xX5BhgRwkHNYQSYuUtG/Y5qi58q9gJ9unhkOTuP4kr13WtrqrbTQGhXMIE11RNb0SFXcxmuvlakzWLiNsrMWVM/WcRmAELqjsO90UIG3m6tVmVl21SFXf8pNL+bWTB471U0IL7Zhg7XFcYY6I5OC0v1VdDoVAdlFJAePy22HsRt7bKcCgeGUwR7UOIdx/QhjJYHlSk6b66Ys2dzb/iibvNwI+QVKj8ZVdjMixOUGyzKoYJr2JArdi/DK8UN3x460Oqr7WDCbQ== X-MS-TrafficTypeDiagnostic: CY1PR03MB2363: X-Microsoft-Exchange-Diagnostics: 1; CY1PR03MB2363; 31:i+TeGvhwqfeHtsj7k9XPjZzU2khKJ9EgrOd6yXMVvrAY9v6zW1npw8YFxjaqSSpDcUPnA9zE5+aCuJwKfjKpTQg+onuBKrOhcEK0PNvxoxcwQhu5IkR9Z0wnCHZjLCuVD8rOqNTrPcebas9+c6LZ9ARdvAvGnGlGAIActlhBT0loOULdxZgMvRAG47eKM5EWBtoBo3epAdz1n8NvrA+9L9GBNjhtLtJ1bTo5A2VWlFo=; 4:b4+oS0s8vngz1598/268YB9IEO5qznfUZiZK9cn2R2e1dKMLkcQ1dH9b4Ap0snwIOmYrCd+xOhvUeE//DzE3rbA7PBs9BaOKupMWdOj30ybvNzrOJ2jABK0eQtojE/jIGH+E77JJnlKu+oerEE+qHtx3OnqpFGmuEo4R8YlJ86bd7vqwN2xmT+kA2O7+u+P+fhWd5bmj/5TZMoLD+qhEC63Cqnnd70RPaIxXiILhrLmO2iW1zWUW7R8DMY/6j/iPsHDWuAZnEprtNVHIFoAAI+gB4Qa64cdKFfdVflk1EZB/BwbdgJVHFQ6MJf+kD6y528WKOBApzs0wQnQ/A8jc0g== X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(788757137089); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6095135)(2401047)(5005006)(8121501046)(93006095)(93001095)(100000703101)(100105400095)(3002001)(10201501046)(6055026)(6096035)(201703131430075)(201703131441075)(201703131448075)(201703131433075)(201703161259150)(20161123556025)(20161123563025)(20161123561025)(20161123565025)(20161123559100)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:CY1PR03MB2363; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(400006)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:CY1PR03MB2363; X-Forefront-PRVS: 04362AC73B X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY1PR03MB2363; 23:OTHTNCaIcmwOm8Bu4efS94NUDjAPj/wKb7+gS8NEh?= 57bbEtpBXHPx7m1DgTpMSF502nu35iFlxxlwvBJ/Th9e2UsVPG4GXiNKlrfQ6pR/CRfu0vZEDM+k+4ir3Z/eBKJWLQl2qZCeXIW1Ob1rd5Jw8+haKdpigvqOHm5ye1oAGnBsGs+k2Jje/eevi0vQ8hMhhR1btr4EpqYAR0W7hX0rkqq64VLLoSvH1dZUpT0cK7z5e6+M16arlJEyYlhvBxyHDa7r62lHvu95cR4G6nj/0+aG6hkyjKeJl9D5dxGosrSEuHA6iSkcKRcCBTSdq2secmrt1xNTVXwepTXPjrZSNMN2Of9cu4yT7UDGDV/SoPpEwc7+O50Dq8ebMjvCqK+aZ9qVxa1Z/FuBewu2k2EatgyeGlrjmYy59jpbECxgf1YrBnuO3eQ29LD1ebLWsOhMx4no1uMBlFCe9tnMZcoVMYzNnqzDUdpU4V8yEsU9rPRIhxAMhlK63zQ7ocHJgGpn7cvDc5t4tm9bsBODWqYfCIiOya66fBbgMx+DOHJG9DNcg3KRCiSPcarGxuAN+noYvRPYVatI7bKO9qTArYFdxvzmiLVSRNV16f8i8YNX5IiBciXj2CUN51xTS9TyNTQViRAk9gtgZZEoUmnJCaD/gBtBqVl5BkA4aLEfaLTnJUZ0Om5brobi1SmuJfAKY9wPJAXmiXGShTLtDgYDCzR7lh2uAh3sjWWdszKAthc/usVYaDTSnQ9VUw7iwMKK4fdlrdW7wcBQd82cvyGLqpn0kPhgbEc2qVTwYz2UnuPbgfg9cU5rholN76ZW8HX2KuEI0SEv2iOjX/9Ou77X1Zk1QdprsWcYqYiLj5ipPYMiPBXVsEo/ynu1Hgvqy112oz6N4H8aLgYG1joKcd03Ivx7RGLWCfUrU4WXuPDghLRlNZA0EkxR1oarOj/Nb93TAPpiVYagKLQUqW5YuLdXgDrC6Vj6WdT8q9vHheCAl4GZpMmGTs4DCpdgCAXZkwpXdJYPDgf7sJlv4ai8NZqMywvbbwSAoPD0xWI9E2k7hDqYxNrZcFbLwc63/+qzsQUd6k2eX5AOljLKk3JBjIbYrCS5xTozclv2SGZIPPu9Qe/AB+YzIIOKeA6eRzEaBP8dzaKE/oSmYjCtTpNs8gVn4IB9Q== X-Microsoft-Exchange-Diagnostics: 1; CY1PR03MB2363; 6:8z7QHZV3Kh5n60Dcs7xVa4Swkf1ZvW7FJhIZeDCJMTeQ1Xja3Qc6CD4LuTzxu7RUN9NwK0PfiOeTHS2myflMjdc9DDoj/YaA7Y8tg4VZcXgSVFOaUDUxmq6toUEf0LPIuhjdVs7F346huOe8h6lokSW+uIfKneZTvkz43zgLJ7D6VwQTEPToEvfNDpQzrYC7hLP6B61VEyoOPIyfFRvkwBZ3QGH2Yqi2JL3NUMXYY2XjimW9X2uD3L2mn9SUaOti4CyJvdM2XZPGI0QQCXj+HljZELEXGnkKp/f9mh7OhsgzLmEGCyXCVOjzHyhceOp18SMf7ZrI8RR0YBOtV70bNA==; 5:jC1jiOgJSCAcE8WEK3YiICdd+gJYdB9EtgYz/9b8ZVb1t6wPEsCKE+AweyKv5PJRli2jX2tsB0O5On6c8oR8xLp2fMSeI/ygi1170tkxKnDbd5VsYKMqsTN/PDL3JwrN0G9Fb0GeVc4GBiMQMPM05g==; 24:fJwIq0C7R1C2CCRc+OXD3b4EjUe9yfQqJr8dmUBjA4nTdEgqC0BSm9BRNK2AcU3UE9hUaWuIm4ysQ9EowNX7HT/hWn6/+HjCMtBfGsWH7C0=; 7:Hs1cQgx0npTHMjBCyDz3efSakyNiQzH6194NqDSo+k8cyGEgoAdfKWaRVX5FTMvQWWbNOLN4p9Bt4PwmBxGi1EiKNcuB5qM/V0DbRd2tEgtdQF4CLFpYXqQFP+N7TP0w5ApIt5kFbt5MbhdnIOQVCqRlaJ/EQuG+Kgn2OT5zynAVxH5vBljXmlmGjxPVHDxL6MHYXq8KU+WwhqXNcNnEnHet28QrZ23dK9Cp3mnXt4s= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2017 09:52:42.5496 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR03MB2363 Subject: [dpdk-dev] [PATCH] crypto/openssl: fix compilation break with openssl 1.1 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" hmac APIs are changed in openssl version 1.1. this patch handles both versions of openssl for hmac APIs Fixes: d7174e8f368f ("crypto/openssl: replace evp APIs with HMAC APIs") Signed-off-by: Akhil Goyal --- drivers/crypto/openssl/rte_openssl_pmd.c | 27 ++++++++++++++++++++---- drivers/crypto/openssl/rte_openssl_pmd_private.h | 2 +- 2 files changed, 24 insertions(+), 5 deletions(-) diff --git a/drivers/crypto/openssl/rte_openssl_pmd.c b/drivers/crypto/openssl/rte_openssl_pmd.c index 438535e..280148e 100644 --- a/drivers/crypto/openssl/rte_openssl_pmd.c +++ b/drivers/crypto/openssl/rte_openssl_pmd.c @@ -48,6 +48,25 @@ static uint8_t cryptodev_driver_id; +#if (OPENSSL_VERSION_NUMBER < 0x10100000L) +static HMAC_CTX *HMAC_CTX_new(void) +{ + HMAC_CTX *ctx = OPENSSL_malloc(sizeof(*ctx)); + + if (ctx != NULL) + HMAC_CTX_init(ctx); + return ctx; +} + +static void HMAC_CTX_free(HMAC_CTX *ctx) +{ + if (ctx != NULL) { + HMAC_CTX_cleanup(ctx); + OPENSSL_free(ctx); + } +} +#endif + static int cryptodev_openssl_remove(struct rte_vdev_device *vdev); /*----------------------------------------------------------------------------*/ @@ -437,12 +456,12 @@ openssl_set_session_auth_parameters(struct openssl_session *sess, case RTE_CRYPTO_AUTH_SHA384_HMAC: case RTE_CRYPTO_AUTH_SHA512_HMAC: sess->auth.mode = OPENSSL_AUTH_AS_HMAC; - HMAC_CTX_init(&sess->auth.hmac.ctx); + sess->auth.hmac.ctx = HMAC_CTX_new(); if (get_auth_algo(xform->auth.algo, &sess->auth.hmac.evp_algo) != 0) return -EINVAL; - if (HMAC_Init_ex(&sess->auth.hmac.ctx, + if (HMAC_Init_ex(sess->auth.hmac.ctx, xform->auth.key.data, xform->auth.key.length, sess->auth.hmac.evp_algo, NULL) != 1) @@ -585,7 +604,7 @@ openssl_reset_session(struct openssl_session *sess) break; case OPENSSL_AUTH_AS_HMAC: EVP_PKEY_free(sess->auth.hmac.pkey); - HMAC_CTX_cleanup(&sess->auth.hmac.ctx); + HMAC_CTX_free(sess->auth.hmac.ctx); break; default: break; @@ -1293,7 +1312,7 @@ process_openssl_auth_op(struct openssl_qp *qp, struct rte_crypto_op *op, case OPENSSL_AUTH_AS_HMAC: status = process_openssl_auth_hmac(mbuf_src, dst, op->sym->auth.data.offset, srclen, - &sess->auth.hmac.ctx); + sess->auth.hmac.ctx); break; default: status = -1; diff --git a/drivers/crypto/openssl/rte_openssl_pmd_private.h b/drivers/crypto/openssl/rte_openssl_pmd_private.h index cbb8f8d..26bf862 100644 --- a/drivers/crypto/openssl/rte_openssl_pmd_private.h +++ b/drivers/crypto/openssl/rte_openssl_pmd_private.h @@ -172,7 +172,7 @@ struct openssl_session { /**< pointer to EVP key */ const EVP_MD *evp_algo; /**< pointer to EVP algorithm function */ - HMAC_CTX ctx; + HMAC_CTX *ctx; /**< pointer to EVP context structure */ } hmac; };