From patchwork Mon Jul 1 12:01:22 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fan Zhang X-Patchwork-Id: 55760 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 BBF47326D; Mon, 1 Jul 2019 14:07:19 +0200 (CEST) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id AFDCA3195 for ; Mon, 1 Jul 2019 14:07:17 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 01 Jul 2019 05:07:16 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.63,439,1557212400"; d="scan'208";a="314864208" Received: from silpixa00398673.ir.intel.com (HELO silpixa00398673.ger.corp.intel.com) ([10.237.223.136]) by orsmga004.jf.intel.com with ESMTP; 01 Jul 2019 05:07:15 -0700 From: Fan Zhang To: dev@dpdk.org Cc: akhil.goyal@nxp.com, pablo.de.lara.guarch@intel.com, Fan Zhang Date: Mon, 1 Jul 2019 13:01:22 +0100 Message-Id: <20190701120124.70418-1-roy.fan.zhang@intel.com> X-Mailer: git-send-email 2.14.5 In-Reply-To: <20190626150509.17442-1-roy.fan.zhang@intel.com> References: <20190626150509.17442-1-roy.fan.zhang@intel.com> Subject: [dpdk-dev] [PATCH v6 0/2] ipsec: ECN and DSCP header reconstruction 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" This patchset adds the ECN and DSCP tunnel mode header reconstruction support for rte_ipsec library. The ipsec-secgw sample application is updated with the feature's enabling and a python3 script for testing the correctness of the implementation. v6: - update_tun_tos function split for inbound/outbound. - get/set ipv6 tc change from macro back to inline functions. v5: - Fixed a checkpatch error. v4: - Fixed a bug. - Refrabricated the code a bit. v3: - Rebased on top of latest dpdk-next-crypto. - Updated the library with individual header reconstruction function. v2: - Fixed a few bugs. - Updated according to Konstantin's comments. - Added python script for testing. Fan Zhang (2): lib/ipsec: add support for header construction examples/ipsec-secgw: support header reconstruction doc/guides/rel_notes/release_19_08.rst | 6 + examples/ipsec-secgw/sa.c | 2 + examples/ipsec-secgw/test/run_test.sh | 3 +- .../test/tun_null_header_reconstruct.py | 477 +++++++++++++++++++++ lib/librte_ipsec/esp_inb.c | 13 +- lib/librte_ipsec/esp_outb.c | 4 +- lib/librte_ipsec/iph.h | 168 +++++++- lib/librte_ipsec/rte_ipsec_sa.h | 10 + lib/librte_ipsec/sa.c | 18 + lib/librte_ipsec/sa.h | 2 + lib/librte_net/rte_ip.h | 12 + lib/librte_security/rte_security.h | 9 + 12 files changed, 715 insertions(+), 9 deletions(-) create mode 100755 examples/ipsec-secgw/test/tun_null_header_reconstruct.py