[SK_BUFF]: Introduce skb_transport_header(skb)
For the places where we need a pointer to the transport header, it is still legal to touch skb->h.raw directly if just adding to, subtracting from or setting it to another layer header. Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
a27ef749e7
commit
9c70220b73
@@ -1175,12 +1175,12 @@ int skb_checksum_help(struct sk_buff *skb)
|
||||
BUG_ON(offset > (int)skb->len);
|
||||
csum = skb_checksum(skb, offset, skb->len-offset, 0);
|
||||
|
||||
offset = skb->tail - skb->h.raw;
|
||||
offset = skb->tail - skb_transport_header(skb);
|
||||
BUG_ON(offset <= 0);
|
||||
BUG_ON(skb->csum_offset + 2 > offset);
|
||||
|
||||
*(__sum16*)(skb->h.raw + skb->csum_offset) = csum_fold(csum);
|
||||
|
||||
*(__sum16 *)(skb_transport_header(skb) +
|
||||
skb->csum_offset) = csum_fold(csum);
|
||||
out_set_summed:
|
||||
skb->ip_summed = CHECKSUM_NONE;
|
||||
out:
|
||||
|
Reference in New Issue
Block a user