summaryrefslogtreecommitdiffstats
path: root/net/ipv4/igmp.c
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@redhat.com>2007-03-15 01:05:37 +0100
committerDavid S. Miller <davem@sunset.davemloft.net>2007-04-26 07:26:01 +0200
commitd10ba34b001944a8d1c8adb5646140ef089c432b (patch)
treecba54f5d23021a2b0061f5f2891ac7fa8fca6d5a /net/ipv4/igmp.c
parent[IPV6]: Reset the network header in ip6_nd_hdr (diff)
downloadlinux-d10ba34b001944a8d1c8adb5646140ef089c432b.tar.xz
linux-d10ba34b001944a8d1c8adb5646140ef089c432b.zip
[SK_BUFF]: More skb_put related skb_reset_transport_header
This time we have to set it to skb->tail that is not anymore equal to skb->data, so we either add a new helper or just add the skb->tail - skb->data offset, for now do the later. Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/igmp.c')
-rw-r--r--net/ipv4/igmp.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/ipv4/igmp.c b/net/ipv4/igmp.c
index 8f0df7b4dfe7..b0efd279ddb4 100644
--- a/net/ipv4/igmp.c
+++ b/net/ipv4/igmp.c
@@ -333,7 +333,8 @@ static struct sk_buff *igmpv3_newpack(struct net_device *dev, int size)
((u8*)&pip[1])[2] = 0;
((u8*)&pip[1])[3] = 0;
- skb->h.raw = skb_put(skb, sizeof(*pig));
+ skb->h.raw = skb->nh.raw + sizeof(struct iphdr) + 4;
+ skb_put(skb, sizeof(*pig));
pig = igmpv3_report_hdr(skb);
pig->type = IGMPV3_HOST_MEMBERSHIP_REPORT;
pig->resv1 = 0;