Lines 2126-2135
icmp6_reflect(struct mbuf *m, size_t off)
Link Here
|
2126 |
ip6->ip6_nxt = IPPROTO_ICMPV6; |
2126 |
ip6->ip6_nxt = IPPROTO_ICMPV6; |
2127 |
ip6->ip6_hlim = hlim; |
2127 |
ip6->ip6_hlim = hlim; |
2128 |
|
2128 |
|
2129 |
/* XXX-MJ in6_cksum() does not yet handle unmapped mbufs */ |
|
|
2130 |
m = mb_unmapped_to_ext(m); |
2131 |
if (m == NULL) |
2132 |
goto bad; |
2133 |
icmp6->icmp6_cksum = 0; |
2129 |
icmp6->icmp6_cksum = 0; |
2134 |
icmp6->icmp6_cksum = in6_cksum(m, IPPROTO_ICMPV6, |
2130 |
icmp6->icmp6_cksum = in6_cksum(m, IPPROTO_ICMPV6, |
2135 |
sizeof(struct ip6_hdr), plen); |
2131 |
sizeof(struct ip6_hdr), plen); |
Lines 2625-2634
noredhdropt:;
Link Here
|
2625 |
|
2621 |
|
2626 |
ip6->ip6_plen = htons(m->m_pkthdr.len - sizeof(struct ip6_hdr)); |
2622 |
ip6->ip6_plen = htons(m->m_pkthdr.len - sizeof(struct ip6_hdr)); |
2627 |
|
2623 |
|
2628 |
/* XXX-MJ in6_cksum() does not yet handle unmapped mbufs */ |
|
|
2629 |
m = mb_unmapped_to_ext(m); |
2630 |
if (m == NULL) |
2631 |
goto fail; |
2632 |
nd_rd->nd_rd_cksum = 0; |
2624 |
nd_rd->nd_rd_cksum = 0; |
2633 |
nd_rd->nd_rd_cksum = in6_cksum(m, IPPROTO_ICMPV6, |
2625 |
nd_rd->nd_rd_cksum = in6_cksum(m, IPPROTO_ICMPV6, |
2634 |
sizeof(*ip6), ntohs(ip6->ip6_plen)); |
2626 |
sizeof(*ip6), ntohs(ip6->ip6_plen)); |