diff mbox series

[API-NEXT,v4,2/2] linux-gen: pktio: loop: support IPsec outbound inline

Message ID 1500375622-10605-3-git-send-email-odpbot@yandex.ru
State Superseded
Headers show
Series [API-NEXT,v4,1/2] linux-gen: pktio: loop: reset packet subtype on loopback | expand

Commit Message

Github ODP bot July 18, 2017, 11 a.m. UTC
From: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>


Add support for outbound inline IPsec packet processing on loop
interface.

Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>

---
/** Email created from pull request 68 (lumag:packet-loop)
 ** https://github.com/Linaro/odp/pull/68
 ** Patch: https://github.com/Linaro/odp/pull/68.patch
 ** Base sha: ae42f98c1a1c309c0718a3b5fc8589660de0f867
 ** Merge commit sha: 9e86e068c2d928aa3d64d15b76780d43d6403cff
 **/
 platform/linux-generic/pktio/loop.c | 10 ++++++++++
 1 file changed, 10 insertions(+)
diff mbox series

Patch

diff --git a/platform/linux-generic/pktio/loop.c b/platform/linux-generic/pktio/loop.c
index 27c9566d..e5803b39 100644
--- a/platform/linux-generic/pktio/loop.c
+++ b/platform/linux-generic/pktio/loop.c
@@ -85,6 +85,14 @@  static int loopback_recv(pktio_entry_t *pktio_entry, int index ODP_UNUSED,
 		pkt = packet_from_buf_hdr(hdr_tbl[i]);
 		pkt_len = odp_packet_len(pkt);
 
+		if (_odp_buffer_event_subtype(hdr_tbl[i]->handle.handle) ==
+		    ODP_EVENT_PACKET_IPSEC) {
+			odp_ipsec_packet_result_t result;
+
+			/* Possibly postprocessing packet */
+			odp_ipsec_result(&result, pkt);
+		}
+
 		/* Application can send arbitrary packets, but expects to
 		 * receive basic packets from PKTIO */
 		_odp_buffer_event_subtype_set(hdr_tbl[i]->handle.handle,
@@ -221,6 +229,8 @@  static int loopback_capability(pktio_entry_t *pktio_entry ODP_UNUSED,
 	odp_pktio_config_init(&capa->config);
 	capa->config.pktin.bit.ts_all = 1;
 	capa->config.pktin.bit.ts_ptp = 1;
+	capa->config.outbound_ipsec = 1;
+
 	return 0;
 }