diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2007-03-16 16:19:57 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-04-26 01:26:18 -0400 |
commit | bff9b61ce330df04c6830d823c30c04203543f01 (patch) | |
tree | 19525bb3d690a421ebd48efa578736ea1e4ca3e2 /net/ipv6 | |
parent | 514bca322cb9220308d22691ac1e74038bfabac3 (diff) |
[SK_BUFF]: Use the helpers to get the layer header pointer
Some more cases...
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6')
-rw-r--r-- | net/ipv6/exthdrs.c | 2 | ||||
-rw-r--r-- | net/ipv6/netfilter/nf_conntrack_reasm.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/net/ipv6/exthdrs.c b/net/ipv6/exthdrs.c index f25ee773f52e..f763409ea740 100644 --- a/net/ipv6/exthdrs.c +++ b/net/ipv6/exthdrs.c | |||
@@ -506,7 +506,7 @@ looped_back: | |||
506 | kfree_skb(skb); | 506 | kfree_skb(skb); |
507 | *skbp = skb = skb2; | 507 | *skbp = skb = skb2; |
508 | opt = IP6CB(skb2); | 508 | opt = IP6CB(skb2); |
509 | hdr = (struct ipv6_rt_hdr *) skb2->h.raw; | 509 | hdr = (struct ipv6_rt_hdr *)skb_transport_header(skb2); |
510 | } | 510 | } |
511 | 511 | ||
512 | if (skb->ip_summed == CHECKSUM_COMPLETE) | 512 | if (skb->ip_summed == CHECKSUM_COMPLETE) |
diff --git a/net/ipv6/netfilter/nf_conntrack_reasm.c b/net/ipv6/netfilter/nf_conntrack_reasm.c index 015950522c8b..84ce5b3c4b21 100644 --- a/net/ipv6/netfilter/nf_conntrack_reasm.c +++ b/net/ipv6/netfilter/nf_conntrack_reasm.c | |||
@@ -627,7 +627,7 @@ nf_ct_frag6_reasm(struct nf_ct_frag6_queue *fq, struct net_device *dev) | |||
627 | 627 | ||
628 | /* We have to remove fragment header from datagram and to relocate | 628 | /* We have to remove fragment header from datagram and to relocate |
629 | * header in order to calculate ICV correctly. */ | 629 | * header in order to calculate ICV correctly. */ |
630 | skb_network_header(head)[fq->nhoffset] = head->h.raw[0]; | 630 | skb_network_header(head)[fq->nhoffset] = skb_transport_header(head)[0]; |
631 | memmove(head->head + sizeof(struct frag_hdr), head->head, | 631 | memmove(head->head + sizeof(struct frag_hdr), head->head, |
632 | (head->data - head->head) - sizeof(struct frag_hdr)); | 632 | (head->data - head->head) - sizeof(struct frag_hdr)); |
633 | head->mac.raw += sizeof(struct frag_hdr); | 633 | head->mac.raw += sizeof(struct frag_hdr); |
@@ -787,7 +787,7 @@ struct sk_buff *nf_ct_frag6_gather(struct sk_buff *skb) | |||
787 | 787 | ||
788 | skb_set_transport_header(clone, fhoff); | 788 | skb_set_transport_header(clone, fhoff); |
789 | hdr = ipv6_hdr(clone); | 789 | hdr = ipv6_hdr(clone); |
790 | fhdr = (struct frag_hdr *)clone->h.raw; | 790 | fhdr = (struct frag_hdr *)skb_transport_header(clone); |
791 | 791 | ||
792 | if (!(fhdr->frag_off & htons(0xFFF9))) { | 792 | if (!(fhdr->frag_off & htons(0xFFF9))) { |
793 | DEBUGP("Invalid fragment offset\n"); | 793 | DEBUGP("Invalid fragment offset\n"); |