Message ID | 20220525135912.181765-3-radu.nicolau@intel.com (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | akhil goyal |
Headers | show |
Series | [1/3] ipsec: fix NAT-T ports and length | expand |
Context | Check | Description |
---|---|---|
ci/iol-abi-testing | success | Testing PASS |
ci/iol-x86_64-compile-testing | success | Testing PASS |
ci/iol-x86_64-unit-testing | success | Testing PASS |
ci/iol-aarch64-compile-testing | success | Testing PASS |
ci/github-robot: build | success | github build: passed |
ci/iol-intel-Functional | success | Functional Testing PASS |
ci/iol-intel-Performance | success | Performance Testing PASS |
ci/iol-aarch64-unit-testing | success | Testing PASS |
ci/iol-mellanox-Performance | success | Performance Testing PASS |
ci/intel-Testing | success | Testing PASS |
ci/Intel-compilation | success | Compilation OK |
ci/checkpatch | success | coding style OK |
> -----Original Message----- > From: Radu Nicolau <radu.nicolau@intel.com> > Sent: Wednesday, May 25, 2022 2:59 PM > To: Wu, Jingjing <jingjing.wu@intel.com>; Xing, Beilei <beilei.xing@intel.com> > Cc: dev@dpdk.org; Buckley, Daniel M <daniel.m.buckley@intel.com>; Zhang, Qi > Z <qi.z.zhang@intel.com>; Nicolau, Radu <radu.nicolau@intel.com>; > stable@dpdk.org > Subject: [PATCH 3/3] net/iavf: fix NAT-T payload length > > Correct the length calculation used for NAT-T > > Fixes: 6bc987ecb860 ("net/iavf: support IPsec inline crypto") > Cc: stable@dpdk.org > > Signed-off-by: Radu Nicolau <radu.nicolau@intel.com> > --- Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
diff --git a/drivers/net/iavf/iavf_ipsec_crypto.c b/drivers/net/iavf/iavf_ipsec_crypto.c index b1949cee91..b398819096 100644 --- a/drivers/net/iavf/iavf_ipsec_crypto.c +++ b/drivers/net/iavf/iavf_ipsec_crypto.c @@ -1118,11 +1118,14 @@ iavf_ipsec_crypto_compute_l4_payload_length(struct rte_mbuf *m, * ipv4/6 hdr + ext hdrs */ - if (s->udp_encap.enabled) + if (s->udp_encap.enabled) { ol4_len = sizeof(struct rte_udp_hdr); - - l3_len = m->l3_len; - l4_len = m->l4_len; + l3_len = m->l3_len - ol4_len; + l4_len = l3_len; + } else { + l3_len = m->l3_len; + l4_len = m->l4_len; + } return rte_pktmbuf_pkt_len(m) - (ol2_len + ol3_len + ol4_len + esp_hlen + l3_len + l4_len + esp_tlen);
Correct the length calculation used for NAT-T Fixes: 6bc987ecb860 ("net/iavf: support IPsec inline crypto") Cc: stable@dpdk.org Signed-off-by: Radu Nicolau <radu.nicolau@intel.com> --- drivers/net/iavf/iavf_ipsec_crypto.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-)