diff options
Diffstat (limited to 'net/ipv6/mcast.c')
-rw-r--r-- | net/ipv6/mcast.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/net/ipv6/mcast.c b/net/ipv6/mcast.c index 4c45bcce75e8..6c2758951d60 100644 --- a/net/ipv6/mcast.c +++ b/net/ipv6/mcast.c | |||
@@ -1423,7 +1423,7 @@ static struct sk_buff *mld_newpack(struct net_device *dev, int size) | |||
1423 | 1423 | ||
1424 | memcpy(skb_put(skb, sizeof(ra)), ra, sizeof(ra)); | 1424 | memcpy(skb_put(skb, sizeof(ra)), ra, sizeof(ra)); |
1425 | 1425 | ||
1426 | skb_set_transport_header(skb, skb->tail - skb->data); | 1426 | skb_set_transport_header(skb, skb_tail_pointer(skb) - skb->data); |
1427 | skb_put(skb, sizeof(*pmr)); | 1427 | skb_put(skb, sizeof(*pmr)); |
1428 | pmr = (struct mld2_report *)skb_transport_header(skb); | 1428 | pmr = (struct mld2_report *)skb_transport_header(skb); |
1429 | pmr->type = ICMPV6_MLD2_REPORT; | 1429 | pmr->type = ICMPV6_MLD2_REPORT; |
@@ -1468,8 +1468,8 @@ static void mld_sendpack(struct sk_buff *skb) | |||
1468 | int err; | 1468 | int err; |
1469 | 1469 | ||
1470 | IP6_INC_STATS(idev, IPSTATS_MIB_OUTREQUESTS); | 1470 | IP6_INC_STATS(idev, IPSTATS_MIB_OUTREQUESTS); |
1471 | payload_len = skb->tail - skb_network_header(skb) - sizeof(*pip6); | 1471 | payload_len = (skb->tail - skb->network_header) - sizeof(*pip6); |
1472 | mldlen = skb->tail - skb_transport_header(skb); | 1472 | mldlen = skb->tail - skb->transport_header; |
1473 | pip6->payload_len = htons(payload_len); | 1473 | pip6->payload_len = htons(payload_len); |
1474 | 1474 | ||
1475 | pmr->csum = csum_ipv6_magic(&pip6->saddr, &pip6->daddr, mldlen, | 1475 | pmr->csum = csum_ipv6_magic(&pip6->saddr, &pip6->daddr, mldlen, |