.. | .. |
---|
62 | 62 | return false; |
---|
63 | 63 | |
---|
64 | 64 | if (offset + len > VLAN_ETH_HLEN + vlan_hlen) |
---|
65 | | - ethlen -= offset + len - VLAN_ETH_HLEN + vlan_hlen; |
---|
| 65 | + ethlen -= offset + len - VLAN_ETH_HLEN - vlan_hlen; |
---|
66 | 66 | |
---|
67 | 67 | memcpy(dst_u8, vlanh + offset - vlan_hlen, ethlen); |
---|
68 | 68 | |
---|
.. | .. |
---|
110 | 110 | case NFT_PAYLOAD_TRANSPORT_HEADER: |
---|
111 | 111 | if (!pkt->tprot_set) |
---|
112 | 112 | goto err; |
---|
113 | | - offset = pkt->xt.thoff; |
---|
| 113 | + offset = nft_thoff(pkt); |
---|
114 | 114 | break; |
---|
115 | 115 | default: |
---|
116 | 116 | BUG(); |
---|
.. | .. |
---|
510 | 510 | *l4csum_offset = offsetof(struct tcphdr, check); |
---|
511 | 511 | break; |
---|
512 | 512 | case IPPROTO_UDP: |
---|
513 | | - if (!nft_payload_udp_checksum(skb, pkt->xt.thoff)) |
---|
| 513 | + if (!nft_payload_udp_checksum(skb, nft_thoff(pkt))) |
---|
514 | 514 | return -1; |
---|
515 | 515 | fallthrough; |
---|
516 | 516 | case IPPROTO_UDPLITE: |
---|
.. | .. |
---|
523 | 523 | return -1; |
---|
524 | 524 | } |
---|
525 | 525 | |
---|
526 | | - *l4csum_offset += pkt->xt.thoff; |
---|
| 526 | + *l4csum_offset += nft_thoff(pkt); |
---|
527 | 527 | return 0; |
---|
528 | 528 | } |
---|
529 | 529 | |
---|
.. | .. |
---|
615 | 615 | case NFT_PAYLOAD_TRANSPORT_HEADER: |
---|
616 | 616 | if (!pkt->tprot_set) |
---|
617 | 617 | goto err; |
---|
618 | | - offset = pkt->xt.thoff; |
---|
| 618 | + offset = nft_thoff(pkt); |
---|
619 | 619 | break; |
---|
620 | 620 | default: |
---|
621 | 621 | BUG(); |
---|
.. | .. |
---|
646 | 646 | if (priv->csum_type == NFT_PAYLOAD_CSUM_SCTP && |
---|
647 | 647 | pkt->tprot == IPPROTO_SCTP && |
---|
648 | 648 | skb->ip_summed != CHECKSUM_PARTIAL) { |
---|
649 | | - if (nft_payload_csum_sctp(skb, pkt->xt.thoff)) |
---|
| 649 | + if (nft_payload_csum_sctp(skb, nft_thoff(pkt))) |
---|
650 | 650 | goto err; |
---|
651 | 651 | } |
---|
652 | 652 | |
---|