From b45be46dfd4548acd8f130841d02e97ab7bc7eb8 Mon Sep 17 00:00:00 2001 From: Konstantin Ananyev Date: Wed, 6 Jun 2018 13:04:01 +0100 Subject: [PATCH] examples/ipsec-secgw: fix IPv4 checksum at Tx For ESP transport and BYPASS mode the app might generate output packets with invalid IPv4 header checksum. At least such behavior was observed on few Intel NICs. The reason is that the app didn't set ipv4 header checksum to zero before passing it to the HW. Fixes: 906257e965b7 ("examples/ipsec-secgw: support IPv6") Cc: stable@dpdk.org Signed-off-by: Konstantin Ananyev Acked-by: Radu Nicolau --- examples/ipsec-secgw/ipsec-secgw.c | 1 + 1 file changed, 1 insertion(+) diff --git a/examples/ipsec-secgw/ipsec-secgw.c b/examples/ipsec-secgw/ipsec-secgw.c index ff576eb94d..a0faddfacf 100644 --- a/examples/ipsec-secgw/ipsec-secgw.c +++ b/examples/ipsec-secgw/ipsec-secgw.c @@ -330,6 +330,7 @@ prepare_tx_pkt(struct rte_mbuf *pkt, uint16_t port) pkt->l3_len = sizeof(struct ip); pkt->l2_len = ETHER_HDR_LEN; + ip->ip_sum = 0; ethhdr->ether_type = rte_cpu_to_be_16(ETHER_TYPE_IPv4); } else { pkt->ol_flags |= PKT_TX_IPV6; -- 2.20.1