From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on0058.outbound.protection.outlook.com [104.47.0.58]) by dpdk.org (Postfix) with ESMTP id 4DF81F72 for ; Wed, 25 Jul 2018 11:51:30 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=s5l1Ei2dkcbd5xIkIWy2E7HrnB/NvHPHt2z+3HG0AYk=; b=WBbqT9IShQ7SKZK6KKckaSnWC6J7PA6inY+875OgFWWfHPXsC7l4O84klhklRZ7goostoXCpOxE2Ebqm/VbaidbIts2v3BcBNUDe5hRGV42WxFkj+KI886KXyos16LhXF9Wu2xVJQWQkFBH8oUv3nX8GZ0Wf1mYLoWOLKPfJpCs= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=hemant.agrawal@nxp.com; Received: from bf-netperf1.ap.freescale.net (14.142.187.166) by AM2PR04MB0753.eurprd04.prod.outlook.com (2a01:111:e400:8411::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.973.21; Wed, 25 Jul 2018 09:51:27 +0000 From: Hemant Agrawal To: dev@dpdk.org Cc: akhil.goyal@nxp.com, Hemant Agrawal Date: Wed, 25 Jul 2018 15:19:43 +0530 Message-Id: <1532512183-13939-1-git-send-email-hemant.agrawal@nxp.com> X-Mailer: git-send-email 2.7.4 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BM1PR0101CA0035.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:1a::21) To AM2PR04MB0753.eurprd04.prod.outlook.com (2a01:111:e400:8411::13) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 88fb9e5c-b37e-45e3-18a3-08d5f214310d X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600073)(711020)(4618075)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990107)(2017052603328)(7153060)(7193020); SRVR:AM2PR04MB0753; X-Microsoft-Exchange-Diagnostics: 1; AM2PR04MB0753; 3:bXL5/nT9sx9HzP0go0awOBaK39Q2+HjFPAv0FD3ZmVyPiYn4m6lH+ZxtCf59IfYlLT0i+QmD51zQz/SD/NG2K7JBI66kKlkXIDTxkCQn3ASrznjLZ0vackVqH07d47KW2loD94VsQLlXLj2FJ2XVLzZw41cwEshyGeZl08TtneRTyFqwAKRWGzGV0fvCYeqTiJGjZQrOIh316ORTVpkOffvd5C6h/eH0p89dc4LEIQhjF5D4q9E7lXLxcjzH98kx; 25:lt9nrGlzxCtzuu4D+zINkBYsLRO0ek6C4DpSzVv/zmoGy6Yf7w6sxy3mA+Gyj2TveN6KqiDHfa4vcxGMWwsm5V791RDFBvva8e5xq2irzhf9SKrhli9jAbmNG3hJ/WfEE/vIWrCL0MtizYyoD33xiOG5zUJ7ijotYi1wzhJq6kSsj7xkv2rFsRQV1qHA13cHIg3M1QPJv7AGtkdZQglqLwgRsTjh9AEWMMrMqv4/q+cUKo3/YHLjk5bzlYiojBut4KGjgKdy46SAbslMpXg23tqfXuenrvI6juNtano6c0oSdTxrtz2lwDzRESPPtg0xpcl9nORUB4BkSBUmFKHocw==; 31:UsLsZviVqJ0FCd5PKfUlrpnhZAy+Ft5/4Jjk2PGMaONzjYFuYBAOmF+8KJeEokdLtm+mDhfxrgjIm4xKlyh1PNu2RmQGjQ4XupqlDwHVebNjn773Fv3D4IptBYd46cv37dmETar+TYkcOVOOjoR87J/gn/6IUUXrd402xmco1VOXrHeJfdL4ogv9/Gl1BlZOIeaNVQGX+C3PPXF9Xawi6Lvhs1sirF4Abw2LANxQsSo= X-MS-TrafficTypeDiagnostic: AM2PR04MB0753: X-Microsoft-Exchange-Diagnostics: 1; AM2PR04MB0753; 20:3BIYtbTGMH8R41A9bZnUtQd8iK4NxBTMOJ8dF8tcqnBRuvYcrb8uYqNXwUTn8jSeA4Wu6nP9W5LpqJKGpekcxTE09RdN7Yxn7Hc/MYJsKgHT73DMiNpfcnQMKMLY36s5Q7IkRyGAUVwK7MTOroluQQZ7SmijsCFbDq4RR4E1t7twWntNxHVUXze35syrE95yBJX+eIxd6ncesuYzLofeHdDcmLyGL7IWQr0ZcecZOa+Zgomm7EvjWV7TDDitxspqf1cGHn3lIeMQmgBEJH+m771xNijnsn+3y10wc1Uqm8BOR2cAVtMWhxXQh5g8By5Y5hmliY+MSoy6O6AxhrKN5dskrW7xbkwxrRzgWf5BsLBRijoJbbK5M6yxS+2KTvY+MUk4zrwbJvio/FnpavGehhgXv0USHbfXQ86NPPRu5zoO1gH1KsX4hI+mkOXNGoqeszXOl2+v2cjz2iTk5GT03GBVL0Mlq36fM/LRNmnHYfXsjLUe6RTl+sQt/BKw/2Ln; 4:Yk3ASYA+uuT91D+bQiT5sLuJrywwiv+R4lQTCcVU4xhJktPZ6EazUV8zPEmwWgOwATFmooVN7/zb4GYsMpci4Be0yjLsh3ZCV6qooy+BLfPdSaMD22MyeJ8pIRcCWLVpeNRds9G6wCSuBUvtyp6ZllAGl9NSSb7fnzKRp7BRRM+SRX0kQzoGCF/7hCdVkHItCkD0LfHS1yj0tlxGjUPS/r1tVmazwbwXYT0P/ce0tHGFeV6Kh69Oi5t1W1AMBpZ/wxldxoHdYmSpt9R77AzGMNSXgfkjsxRJ9tGgO8vovPlDF2byjiFWQuFR3XwtPWMb X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231311)(944501410)(52105095)(93006095)(93001095)(10201501046)(3002001)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123564045)(20161123560045)(20161123562045)(6072148)(201708071742011)(7699016); SRVR:AM2PR04MB0753; BCL:0; PCL:0; RULEID:; SRVR:AM2PR04MB0753; X-Forefront-PRVS: 0744CFB5E8 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(366004)(396003)(136003)(39860400002)(376002)(346002)(189003)(199004)(50226002)(4326008)(2616005)(16586007)(68736007)(956004)(2351001)(66066001)(476003)(8936002)(81156014)(3846002)(25786009)(81166006)(86362001)(36756003)(8676002)(5009440100003)(2906002)(97736004)(53936002)(6116002)(486006)(186003)(2361001)(52116002)(51416003)(16526019)(478600001)(55236004)(48376002)(5660300001)(50466002)(6666003)(305945005)(6916009)(26005)(44832011)(316002)(1857600001)(47776003)(6512007)(105586002)(386003)(6486002)(6506007)(106356001)(7736002)(110426005)(21314002); DIR:OUT; SFP:1101; SCL:1; SRVR:AM2PR04MB0753; H:bf-netperf1.ap.freescale.net; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM2PR04MB0753; 23:TFPqdemWRmfmOd6FpxuOdf0XUywEz20RsVii0ixWt?= =?us-ascii?Q?BkYr1UKCOcu3t6fFkSZ8NihuuRtj5KCDk3NVe1HIRTkmPa5jr5xiTrdmbhEr?= =?us-ascii?Q?Ly9Os4n5JYEgUhTLloJ9A7zDgtXNWc6P+uZWPogMgupDI2H/APsGfAFeulmk?= =?us-ascii?Q?bIM5ueHax9zlYZVT3iO4ZW+GcSvaWigfztDFuPvksnCacgA5eG/9wvBq+eT+?= =?us-ascii?Q?ycnnyya6Nj7WA3xMpNloKkILMBR7Pg2iszhd7mBMesFYN0BzdXN96auhH+tn?= =?us-ascii?Q?h0HhnFXe6ix5JLwwXcxrxnzrxrl79Tmz6e+76mFVhuNHC29LiBrsjIpFbb5b?= =?us-ascii?Q?u/EhoGaKJjTnAGLBFGhococKxJ9YbnIN4sg013NvjdyAn6HjcWLIqzXQXLOV?= =?us-ascii?Q?u+BACQoNnopg3JHm5lkmUUsK1wAIGhsNOvN+0sTtaLNoPCAismMQcHUe8LOI?= =?us-ascii?Q?WilmdiyuKeftXevNF57qC57pOmDzQNt5KJKUiZ0zqpfCOAYm/8dcEfFW9Eyo?= =?us-ascii?Q?fpuEdbfO7Oh68rIeRy29o6TDIXwvXNwvHcnq2t+cOiS4icGtB/P4N7vMkX0c?= =?us-ascii?Q?2ElJzD6yL2zhDvU21foJe6jrU1Dolvasyzpli/8wLj+QLRIJzx88Umi52IPe?= =?us-ascii?Q?TE9LFz1dds/bAtL6c5pPYUUrhsVmSX7s5NtrimrNDDShcpYXTHMtlXoun8xn?= =?us-ascii?Q?tuj95n6sGMfoAnFV7lCX6aBUB0zjNTaL6AHn8bPHQE9/x0Gwjjtv1Q9JDH44?= =?us-ascii?Q?lMwaD4wH11p326koxo8jw6KefjK6p7/lKxASd66Ee/gZ75qLbshx4VMvccR+?= =?us-ascii?Q?Po5csOvqujkEfovG/7237RWdHdwrrIh4O5fHBNfhdQ9QzaBKqIubNJNAcUrJ?= =?us-ascii?Q?eFzzbqCQljx+a3ldP35KCNLa8+rUzZXVQeKGLL0vU/9CKRPDDDf2LVa/kZhF?= =?us-ascii?Q?OoVnSnDKQQH2GDGm9szATytczW72P7Nbqmwius4B35TyN1lT+f7rUEoX7ubN?= =?us-ascii?Q?EGn8Wa7GRBU12HJjQ8ZrNpa91aj3gorDd8e7yxFKHWWTx5tuVEr+PQ6O1amm?= =?us-ascii?Q?+9ACn39caq0NnQntqla3XhbHmLuQbF/pp+JAccJ+2kPAT7M5hewCZRMVjm0L?= =?us-ascii?Q?mr3agLiq3RIJYWv1c0XJrFpaWzVp2kalqUk2XNSz5HjAvFvZNNIo5mldBU8B?= =?us-ascii?Q?elXsB9awA1PO0WXZtl0cqvW0HEpCHMT7MFajkeIWl3ufLPD0e4wsaXY2h2gS?= =?us-ascii?Q?cErcTnP1rtcb+KKHLn0SCdFrvOfz6V4ooLN8ijZ4CeT9rEpAHnk8QpuG1YeR?= =?us-ascii?B?Zz09?= X-Microsoft-Antispam-Message-Info: 7q6iw+K7nkeTdi5mfTswEkJUEOPt2SNaJXR6gqOS8Ikd1cP4CnolqbleO7HiFvb+ExehUE5zztr9KfFlQ5SE0bzcnuvFjq/pFM8xglcCAEcRkd/5ogLDZ7n1yhjFFx8Xlu6HX39gsHmedCqQs1byk+0D8unrCayZjAQDATYVtpxkL8Cavuqb0N23KXad/sANaESbmpz/diWAEHqO34LOlTUU2ZAyv9KNL1jVsYbxJEiFsw2LV8Dipdne2/O6RNBmGPksdURIWSJMKYEndzOLwlfAulRnjiIorhduiC+wzOz6TYp4ODxj9OsOiQif5N7Ry5JuJw1TA/AYh+4iBuMNfilabyWohp+1Zgka5v4pNog= X-Microsoft-Exchange-Diagnostics: 1; AM2PR04MB0753; 6:Y3qegWbpcmId64dY2wIye2snzVF9PSL5go2K0EWMkGXvaD2OR8lwFobkhBn8AHjbwo1NRrDdXXSNnzx3VnQIORfcDkBaa8ZB7dPmQW11twH9OkgVvHJPkdPydZQtfYluUeW/YdKe3np498e00KalS8taj4NmO6kkhOQ1gRh3GjIdQo2pl6IW5+gcxjTlyfPDeMLWBDIgJb6aeOUyFdGO5tWbwW2wq/KeHx19LpabDCIltw8z3gZnE5zcOhAVpJR/jLLW44HbTtgZYt0cAWUOr0TROdtWShrVa3PDs08UFleEYALI10IMN2B3H48Pb9d9EkRmhBxbWL/9XESsn0tx4gSN+RkdMPcY0feWz9drrZvoncRmqJM2kcXmkSRbMLexyL5nf0gq3OGp8L6ZoI3Y47SEDSr5bbQMWj5AAu61m4nDC5+2+4wmMIneGNbddFdcqWTgSo/0NvQuFowDUhflPw==; 5:60GH+BWbZcx9E32uSR9q9gDqCGQ46Ctn+bbHFIl3pYnKM3wZe71waWwjQh5qiGcTKnET1PCYtnUQZ5jRyppJibipFxT9yCX2cNDcY6WTu99P9R/Ck7CpulDMidasc4/+VjpMTiXuZefyYdX4/V+svpTbvMW6TH129N0/QOXqnZE=; 7:nf1MmXxfhQVtMLr6B2pOfNtJqN78WmyCe8nfMQFentIDmXJpUxWtJjyXEwGpfAg3adEiKcTsiu+8ZdISYfggugOZf8y2li8sJJXV/EQ8W0mfLlCu6yY9V0N5dygfh5XSveo8qWCnVKKRZK6BPJ/qo3TZ+GNBVThZgMe6pp6sYbOsRvxlQmX1WVnYRBLSFX/pfVbLRL57UcTIhZVPtEQ+KNtN6ynp2x0iCK4at3T7/5ZytuOCKR1JbI9eyCZN5ZRg SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Jul 2018 09:51:27.0506 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 88fb9e5c-b37e-45e3-18a3-08d5f214310d X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM2PR04MB0753 Subject: [dpdk-dev] [PATCH] examples/ipsec-secgw: add 3des-cbc support 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: , X-List-Received-Date: Wed, 25 Jul 2018 09:51:30 -0000 Signed-off-by: Hemant Agrawal --- doc/guides/sample_app_ug/ipsec_secgw.rst | 3 ++- examples/ipsec-secgw/esp.c | 3 +++ examples/ipsec-secgw/sa.c | 11 ++++++++++- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/doc/guides/sample_app_ug/ipsec_secgw.rst b/doc/guides/sample_app_ug/ipsec_secgw.rst index 46696f2..4869a01 100644 --- a/doc/guides/sample_app_ug/ipsec_secgw.rst +++ b/doc/guides/sample_app_ug/ipsec_secgw.rst @@ -67,7 +67,7 @@ Constraints * No IPv6 options headers. * No AH mode. -* Supported algorithms: AES-CBC, AES-CTR, AES-GCM, HMAC-SHA1 and NULL. +* Supported algorithms: AES-CBC, AES-CTR, AES-GCM, 3DES-CBC, HMAC-SHA1 and NULL. * Each SA must be handle by a unique lcore (*1 RX queue per port*). * No chained mbufs. @@ -397,6 +397,7 @@ where each options means: * *aes-128-cbc*: AES-CBC 128-bit algorithm * *aes-256-cbc*: AES-CBC 256-bit algorithm * *aes-128-ctr*: AES-CTR 128-bit algorithm + * *3des-cbc*: 3DES-CBC 192-bit algorithm * Syntax: *cipher_algo * diff --git a/examples/ipsec-secgw/esp.c b/examples/ipsec-secgw/esp.c index ee9e590..e33232c 100644 --- a/examples/ipsec-secgw/esp.c +++ b/examples/ipsec-secgw/esp.c @@ -96,6 +96,7 @@ esp_inbound(struct rte_mbuf *m, struct ipsec_sa *sa, switch (sa->cipher_algo) { case RTE_CRYPTO_CIPHER_NULL: + case RTE_CRYPTO_CIPHER_3DES_CBC: case RTE_CRYPTO_CIPHER_AES_CBC: /* Copy IV at the end of crypto operation */ rte_memcpy(iv_ptr, iv, sa->iv_len); @@ -326,6 +327,7 @@ esp_outbound(struct rte_mbuf *m, struct ipsec_sa *sa, } else { switch (sa->cipher_algo) { case RTE_CRYPTO_CIPHER_NULL: + case RTE_CRYPTO_CIPHER_3DES_CBC: case RTE_CRYPTO_CIPHER_AES_CBC: memset(iv, 0, sa->iv_len); break; @@ -387,6 +389,7 @@ esp_outbound(struct rte_mbuf *m, struct ipsec_sa *sa, } else { switch (sa->cipher_algo) { case RTE_CRYPTO_CIPHER_NULL: + case RTE_CRYPTO_CIPHER_3DES_CBC: case RTE_CRYPTO_CIPHER_AES_CBC: sym_cop->cipher.data.offset = ip_hdr_len + sizeof(struct esp_hdr); diff --git a/examples/ipsec-secgw/sa.c b/examples/ipsec-secgw/sa.c index 4ab8e09..d2d3550 100644 --- a/examples/ipsec-secgw/sa.c +++ b/examples/ipsec-secgw/sa.c @@ -81,6 +81,13 @@ const struct supported_cipher_algo cipher_algos[] = { .iv_len = 8, .block_size = 16, /* XXX AESNI MB limition, should be 4 */ .key_len = 20 + }, + { + .keyword = "3des-cbc", + .algo = RTE_CRYPTO_CIPHER_3DES_CBC, + .iv_len = 8, + .block_size = 8, + .key_len = 24 } }; @@ -327,7 +334,8 @@ parse_sa_tokens(char **tokens, uint32_t n_tokens, if (status->status < 0) return; - if (algo->algo == RTE_CRYPTO_CIPHER_AES_CBC) + if (algo->algo == RTE_CRYPTO_CIPHER_AES_CBC || + algo->algo == RTE_CRYPTO_CIPHER_3DES_CBC) rule->salt = (uint32_t)rte_rand(); if (algo->algo == RTE_CRYPTO_CIPHER_AES_CTR) { @@ -810,6 +818,7 @@ sa_add_rules(struct sa_ctx *sa_ctx, const struct ipsec_sa entries[], } else { switch (sa->cipher_algo) { case RTE_CRYPTO_CIPHER_NULL: + case RTE_CRYPTO_CIPHER_3DES_CBC: case RTE_CRYPTO_CIPHER_AES_CBC: iv_length = sa->iv_len; break; -- 2.7.4