X-Git-Url: https://gerrit.fd.io/r/gitweb?p=deb_dpdk.git;a=blobdiff_plain;f=examples%2Ftep_termination%2Fvxlan.c;fp=examples%2Ftep_termination%2Fvxlan.c;h=9142c8d951a6b72b2c2a6acc665dff708f1bdb08;hp=5ee1f9566f0e2c42bf4dd68c9358344077bb3385;hb=32e04ea00cd159613e04acef75e52bfca6eeff2f;hpb=6cfa4f771efe39dbc944e799cbe465134c8931fa diff --git a/examples/tep_termination/vxlan.c b/examples/tep_termination/vxlan.c index 5ee1f956..9142c8d9 100644 --- a/examples/tep_termination/vxlan.c +++ b/examples/tep_termination/vxlan.c @@ -147,7 +147,7 @@ process_inner_cksums(struct ether_hdr *eth_hdr, union tunnel_offload_info *info) if (tso_segsz != 0) { ol_flags |= PKT_TX_TCP_SEG; info->tso_segsz = tso_segsz; - info->l4_len = sizeof(struct tcp_hdr); + info->l4_len = (tcp_hdr->data_off & 0xf0) >> 2; } } else if (l4_proto == IPPROTO_SCTP) { @@ -218,7 +218,7 @@ encapsulation(struct rte_mbuf *m, uint8_t queue_id) /* copy in IP header */ ip = rte_memcpy(ip, &app_ip_hdr[vport_id], sizeof(struct ipv4_hdr)); - ip->total_length = rte_cpu_to_be_16(m->data_len + ip->total_length = rte_cpu_to_be_16(m->pkt_len - sizeof(struct ether_hdr)); /* outer IP checksum */