mcast.c (29a26a56803855a79dbd028cd61abee56237d6e5) | mcast.c (0c4b51f0054ce85c0ec578ab818f0631834573eb) |
---|---|
1/* 2 * Multicast support for IPv6 3 * Linux INET6 implementation 4 * 5 * Authors: 6 * Pedro Roque <roque@di.fc.ul.pt> 7 * 8 * Based on linux/ipv4/igmp.c and linux/ipv4/ip_sockglue.c --- 1632 unchanged lines hidden (view full) --- 1641 skb_dst_set(skb, dst); 1642 if (err) 1643 goto err_out; 1644 1645 payload_len = skb->len; 1646 1647 err = NF_HOOK(NFPROTO_IPV6, NF_INET_LOCAL_OUT, 1648 net, net->ipv6.igmp_sk, skb, NULL, skb->dev, | 1/* 2 * Multicast support for IPv6 3 * Linux INET6 implementation 4 * 5 * Authors: 6 * Pedro Roque <roque@di.fc.ul.pt> 7 * 8 * Based on linux/ipv4/igmp.c and linux/ipv4/ip_sockglue.c --- 1632 unchanged lines hidden (view full) --- 1641 skb_dst_set(skb, dst); 1642 if (err) 1643 goto err_out; 1644 1645 payload_len = skb->len; 1646 1647 err = NF_HOOK(NFPROTO_IPV6, NF_INET_LOCAL_OUT, 1648 net, net->ipv6.igmp_sk, skb, NULL, skb->dev, |
1649 dst_output); | 1649 dst_output_okfn); |
1650out: 1651 if (!err) { 1652 ICMP6MSGOUT_INC_STATS(net, idev, ICMPV6_MLD2_REPORT); 1653 ICMP6_INC_STATS(net, idev, ICMP6_MIB_OUTMSGS); 1654 IP6_UPD_PO_STATS(net, idev, IPSTATS_MIB_OUTMCAST, payload_len); 1655 } else { 1656 IP6_INC_STATS(net, idev, IPSTATS_MIB_OUTDISCARDS); 1657 } --- 347 unchanged lines hidden (view full) --- 2005 if (IS_ERR(dst)) { 2006 err = PTR_ERR(dst); 2007 goto err_out; 2008 } 2009 2010 skb_dst_set(skb, dst); 2011 err = NF_HOOK(NFPROTO_IPV6, NF_INET_LOCAL_OUT, 2012 net, sk, skb, NULL, skb->dev, | 1650out: 1651 if (!err) { 1652 ICMP6MSGOUT_INC_STATS(net, idev, ICMPV6_MLD2_REPORT); 1653 ICMP6_INC_STATS(net, idev, ICMP6_MIB_OUTMSGS); 1654 IP6_UPD_PO_STATS(net, idev, IPSTATS_MIB_OUTMCAST, payload_len); 1655 } else { 1656 IP6_INC_STATS(net, idev, IPSTATS_MIB_OUTDISCARDS); 1657 } --- 347 unchanged lines hidden (view full) --- 2005 if (IS_ERR(dst)) { 2006 err = PTR_ERR(dst); 2007 goto err_out; 2008 } 2009 2010 skb_dst_set(skb, dst); 2011 err = NF_HOOK(NFPROTO_IPV6, NF_INET_LOCAL_OUT, 2012 net, sk, skb, NULL, skb->dev, |
2013 dst_output); | 2013 dst_output_okfn); |
2014out: 2015 if (!err) { 2016 ICMP6MSGOUT_INC_STATS(net, idev, type); 2017 ICMP6_INC_STATS(net, idev, ICMP6_MIB_OUTMSGS); 2018 IP6_UPD_PO_STATS(net, idev, IPSTATS_MIB_OUTMCAST, full_len); 2019 } else 2020 IP6_INC_STATS(net, idev, IPSTATS_MIB_OUTDISCARDS); 2021 --- 931 unchanged lines hidden --- | 2014out: 2015 if (!err) { 2016 ICMP6MSGOUT_INC_STATS(net, idev, type); 2017 ICMP6_INC_STATS(net, idev, ICMP6_MIB_OUTMSGS); 2018 IP6_UPD_PO_STATS(net, idev, IPSTATS_MIB_OUTMCAST, full_len); 2019 } else 2020 IP6_INC_STATS(net, idev, IPSTATS_MIB_OUTDISCARDS); 2021 --- 931 unchanged lines hidden --- |