Lines Matching refs:ip6h

198 	ip6_t		*ip6h;  in ip_input_common_v6()  local
295 ip6h = (ip6_t *)mp->b_rptr; in ip_input_common_v6()
296 if (!OK_32PTR(ip6h) || MBLKL(mp) < IPV6_HDR_LEN) { in ip_input_common_v6()
300 ip6h = (ip6_t *)mp->b_rptr; in ip_input_common_v6()
304 if (IPH_HDR_VERSION(ip6h) != IPV6_VERSION) { in ip_input_common_v6()
318 if (IN6_IS_ADDR_UNSPECIFIED(&ip6h->ip6_dst)) { in ip_input_common_v6()
346 iras.ira_pktlen = ntohs(ip6h->ip6_plen) + IPV6_HDR_LEN; in ip_input_common_v6()
349 iras.ira_ttl = ip6h->ip6_hlim; in ip_input_common_v6()
357 (*ill->ill_inputfn)(mp, ip6h, &ip6h->ip6_dst, &iras, &rtc); in ip_input_common_v6()
412 ip6_t *ip6h = (ip6_t *)iph_arg; in ill_input_full_v6() local
440 ip6h = (ip6_t *)mp->b_rptr; in ill_input_full_v6()
442 ill_input_short_v6(mp, ip6h, nexthop, ira, rtc); in ill_input_full_v6()
523 ip6_t *ip6h = (ip6_t *)iph_arg; in ill_input_short_v6() local
527 #define rptr ((uchar_t *)ip6h) in ill_input_short_v6()
535 if (ip6h->ip6_src.s6_addr32[0] == 0 && in ill_input_short_v6()
536 ip6h->ip6_src.s6_addr32[1] == 0) { in ill_input_short_v6()
537 if (ip6_bad_address(&ip6h->ip6_src, B_TRUE)) { in ill_input_short_v6()
545 if (ip6h->ip6_dst.s6_addr32[0] == 0 && in ill_input_short_v6()
546 ip6h->ip6_dst.s6_addr32[1] == 0) { in ill_input_short_v6()
547 if (ip6_bad_address(&ip6h->ip6_dst, B_FALSE)) { in ill_input_short_v6()
565 ip6h = (ip6_t *)mp->b_rptr; in ill_input_short_v6()
569 ip6h, __dtrace_ipsr_ill_t *, ill, ipha_t *, NULL, ip6_t *, ip6h, in ill_input_short_v6()
579 ip6_t *, ip6h, mblk_t *, mp); in ill_input_short_v6()
584 in6_addr_t orig_dst = ip6h->ip6_dst; in ill_input_short_v6()
593 ill, NULL, ip6h, mp, mp, ll_multicast, ipst, error); in ill_input_short_v6()
601 ip6h = (ip6_t *)mp->b_rptr; in ill_input_short_v6()
602 ira->ira_pktlen = ntohs(ip6h->ip6_plen) + IPV6_HDR_LEN; in ill_input_short_v6()
609 if (!IN6_ARE_ADDR_EQUAL(&orig_dst, &ip6h->ip6_dst)) in ill_input_short_v6()
610 nexthop = ip6h->ip6_dst; in ill_input_short_v6()
632 if ((ip6h->ip6_vcf & IPV6_VERS_AND_FLOW_MASK) != in ill_input_short_v6()
646 if ((ira->ira_protocol = ip6h->ip6_nxt) == IPPROTO_HOPOPTS) { in ill_input_short_v6()
659 ip6h = ip_pullup(mp, IPV6_HDR_LEN + MIN_EHDR_LEN, ira); in ill_input_short_v6()
660 if (ip6h == NULL) { in ill_input_short_v6()
667 hbhhdr = (ip6_hbh_t *)&ip6h[1]; in ill_input_short_v6()
678 ip6h = ip_pullup(mp, IPV6_HDR_LEN + ehdrlen, ira); in ill_input_short_v6()
679 if (ip6h == NULL) { in ill_input_short_v6()
685 hbhhdr = (ip6_hbh_t *)&ip6h[1]; in ill_input_short_v6()
696 switch (ip_process_options_v6(mp, ip6h, optptr, in ill_input_short_v6()
744 ip6h = (ip6_t *)mp->b_rptr; in ill_input_short_v6()
746 lb_ret = ilb_check_v6(ilbs, ill, mp, ip6h, ira->ira_protocol, in ill_input_short_v6()
747 (uint8_t *)ip6h + ira->ira_ip_hdr_length, &lb_dst); in ill_input_short_v6()
821 (*ire->ire_recvfn)(ire, mp, ip6h, ira); in ill_input_short_v6()
831 ip6_t *ip6h = (ip6_t *)iph_arg; in ire_recv_forward_v6() local
890 nce1 = ire_handle_condemned_nce(nce, ire, NULL, ip6h, B_FALSE); in ire_recv_forward_v6()
925 ire = ire_route_recursive_v6(&ip6h->ip6_dst, 0, NULL, in ire_recv_forward_v6()
930 (*ire->ire_recvfn)(ire, mp, ip6h, ira); in ire_recv_forward_v6()
956 ill_t *, ill, ill_t *, dst_ill, ip6_t *, ip6h, mblk_t *, mp); in ire_recv_forward_v6()
963 ill, dst_ill, ip6h, mp, mp, 0, ipst, error); in ire_recv_forward_v6()
978 ip6h = (ip6_t *)mp->b_rptr; in ire_recv_forward_v6()
979 ira->ira_pktlen = ntohs(ip6h->ip6_plen) + IPV6_HDR_LEN; in ire_recv_forward_v6()
997 if (IN6_IS_ADDR_UNSPECIFIED(&ip6h->ip6_src) || in ire_recv_forward_v6()
998 IN6_IS_ADDR_MULTICAST(&ip6h->ip6_src)) { in ire_recv_forward_v6()
1019 if (IN6_IS_ADDR_LINKLOCAL(&ip6h->ip6_dst) || in ire_recv_forward_v6()
1020 IN6_IS_ADDR_LINKLOCAL(&ip6h->ip6_src)) { in ire_recv_forward_v6()
1029 ip_send_potential_redirect_v6(mp, ip6h, ire, ira); in ire_recv_forward_v6()
1053 ip6h = (ip6_t *)mp->b_rptr; in ire_recv_forward_v6()
1054 ira->ira_pktlen = ntohs(ip6h->ip6_plen) + IPV6_HDR_LEN; in ire_recv_forward_v6()
1056 ira->ira_ttl = ip6h->ip6_hlim; in ire_recv_forward_v6()
1064 ip_forward_xmit_v6(nce, mp, ip6h, ira, mtu, added_tx_len); in ire_recv_forward_v6()
1075 ip_forward_xmit_v6(nce_t *nce, mblk_t *mp, ip6_t *ip6h, ip_recv_attr_t *ira, in ip_forward_xmit_v6() argument
1083 if (ip6h->ip6_hops-- <= 1) { in ip_forward_xmit_v6()
1149 ip6_t *ip6h = (ip6_t *)iph_arg; in ire_recv_noroute_v6() local
1178 ip_rts_change_v6(RTM_MISS, &ip6h->ip6_dst, 0, 0, 0, 0, 0, 0, RTA_DST, in ire_recv_noroute_v6()
1202 ip6_t *ip6h = (ip6_t *)iph_arg; in ire_recv_noaccept_v6() local
1207 if (ip6h->ip6_nxt != IPPROTO_ICMPV6) { in ire_recv_noaccept_v6()
1221 ip6h = ip_pullup(mp, ip_hdr_length + ICMP6_MINLEN, ira); in ire_recv_noaccept_v6()
1222 if (ip6h == NULL) { in ire_recv_noaccept_v6()
1237 ire_recv_local_v6(ire, mp, ip6h, ira); in ire_recv_noaccept_v6()
1247 ip6_t *ip6h = (ip6_t *)iph_arg; in ire_recv_multicast_v6() local
1355 if (!ill_hasmembers_v6(ill, &ip6h->ip6_dst)) { in ire_recv_multicast_v6()
1377 ip_input_local_v6(ire, mp, ip6h, ira); in ire_recv_multicast_v6()
1410 ip6_t *ip6h = (ip6_t *)iph_arg; in ire_recv_loopback_v6() local
1426 ip_input_local_v6(ire, mp, ip6h, ira); in ire_recv_loopback_v6()
1434 ip_input_local_v6(ire, mp, ip6h, ira); in ire_recv_loopback_v6()
1443 ip6_t *ip6h = (ip6_t *)iph_arg; in ire_recv_local_v6() local
1464 new_ire = ip_check_multihome(&ip6h->ip6_dst, ire, ill); in ire_recv_local_v6()
1486 ip_input_local_v6(new_ire, mp, ip6h, ira); in ire_recv_local_v6()
1498 ip_input_local_v6(ire, mp, ip6h, ira); in ire_recv_local_v6()
1506 ip_input_local_v6(ire_t *ire, mblk_t *mp, ip6_t *ip6h, ip_recv_attr_t *ira) in ip_input_local_v6() argument
1516 ip_input_multicast_v6(ire, mp, ip6h, ira); in ip_input_local_v6()
1519 ip_fanout_v6(mp, ip6h, ira); in ip_input_local_v6()
1536 ip_input_multicast_v6(ire_t *ire, mblk_t *mp, ip6_t *ip6h, ip_recv_attr_t *ira) in ip_input_multicast_v6() argument
1557 !ill_hasmembers_otherzones_v6(ill, &ip6h->ip6_dst, in ip_input_multicast_v6()
1568 ip_fanout_v6(mp, ip6h, ira); in ip_input_multicast_v6()
1580 zoneid = ill_hasmembers_nextzone_v6(ill, &ip6h->ip6_dst, ALL_ZONES); in ip_input_multicast_v6()
1582 zoneid = ill_hasmembers_nextzone_v6(ill, &ip6h->ip6_dst, zoneid)) { in ip_input_multicast_v6()
1622 ip_fanout_v6(mp, ip6h, ira); in ip_input_multicast_v6()
1632 ip_fanout_tx_v6(mblk_t *mp, ip6_t *ip6h, uint8_t protocol, uint_t ip_hdr_length, in ip_fanout_tx_v6() argument
1655 up = (uint16_t *)((uchar_t *)ip6h + ip_hdr_length); in ip_fanout_tx_v6()
1661 ASSERT(((uchar_t *)ip6h) + ip_hdr_length +4 <= mp->b_wptr); in ip_fanout_tx_v6()
1738 ip_input_cksum_pseudo_v6(ip6_t *ip6h, ip_recv_attr_t *ira) in ip_input_cksum_pseudo_v6() argument
1745 #define iphs ((uint16_t *)ip6h) in ip_input_cksum_pseudo_v6()
1763 udpha = (udpha_t *)((uchar_t *)ip6h + ip_hdr_length); in ip_input_cksum_pseudo_v6()
1800 ip_input_sw_cksum_v6(mblk_t *mp, ip6_t *ip6h, ip_recv_attr_t *ira) in ip_input_sw_cksum_v6() argument
1812 cksum = ip_input_cksum_pseudo_v6(ip6h, ira); in ip_input_sw_cksum_v6()
1828 ip_input_cksum_v6(iaflags_t iraflags, mblk_t *mp, ip6_t *ip6h, in ip_input_cksum_v6() argument
1848 udpha = (udpha_t *)((uchar_t *)ip6h + ip_hdr_length); in ip_input_cksum_v6()
1871 sctph = (sctp_hdr_t *)((uchar_t *)ip6h + ip_hdr_length); in ip_input_cksum_v6()
1906 return (ip_input_sw_cksum_v6(mp, ip6h, ira)); in ip_input_cksum_v6()
1945 cksum = ip_input_cksum_pseudo_v6(ip6h, ira); in ip_input_cksum_v6()
1947 cksum_start = ((uchar_t *)ip6h + DB_CKSUMSTART(mp)); in ip_input_cksum_v6()
1974 return (ip_input_sw_cksum_v6(mp, ip6h, ira)); in ip_input_cksum_v6()
1988 ip_fanout_v6(mblk_t *mp, ip6_t *ip6h, ip_recv_attr_t *ira) in ip_fanout_v6() argument
1995 #define rptr ((uchar_t *)ip6h) in ip_fanout_v6()
2004 ASSERT(ira->ira_pktlen == ntohs(ip6h->ip6_plen) + IPV6_HDR_LEN); in ip_fanout_v6()
2072 ip6h = ip_pullup(mp, ip_hdr_length + min_ulp_header_length, in ip_fanout_v6()
2074 if (ip6h == NULL) in ip_fanout_v6()
2085 ip_fanout_tx_v6(mp, ip6h, protocol, ip_hdr_length, ira); in ip_fanout_v6()
2092 if (!ip_input_cksum_v6(iraflags, mp, ip6h, ira)) { in ip_fanout_v6()
2111 offset = ((uchar_t *)ip6h)[ip_hdr_length + 12] >> 4; in ip_fanout_v6()
2127 ip6h = ip_pullup(mp, offset, ira); in ip_fanout_v6()
2128 if (ip6h == NULL) in ip_fanout_v6()
2160 NULL, ip6h, ira); in ip_fanout_v6()
2254 ip_fanout_sctp_raw(mp, NULL, ip6h, ports, ira); in ip_fanout_v6()
2257 connp = sctp_fanout(&ip6h->ip6_src, &ip6h->ip6_dst, ports, in ip_fanout_v6()
2261 ip_fanout_sctp_raw(mp, NULL, ip6h, ports, ira); in ip_fanout_v6()
2269 ip_fanout_sctp_raw(mp, NULL, ip6h, ports, ira); in ip_fanout_v6()
2275 sctp_input(connp, NULL, ip6h, mp, ira); in ip_fanout_v6()
2287 up = (uint16_t *)((uchar_t *)ip6h + ip_hdr_length); in ip_fanout_v6()
2289 ip_fanout_udp_multi_v6(mp, ip6h, up[1], up[0], ira); in ip_fanout_v6()
2300 ip_fanout_proto_v6(mp, ip6h, ira); in ip_fanout_v6()
2324 NULL, ip6h, ira); in ip_fanout_v6()
2377 NULL, ip6h, ira, ns); in ip_fanout_v6()
2421 ip6h = (ip6_t *)mp->b_rptr; in ip_fanout_v6()
2428 ip6h = ip_pullup(mp, ip_hdr_length + MIN_EHDR_LEN, ira); in ip_fanout_v6()
2429 if (ip6h == NULL) in ip_fanout_v6()
2438 ip6h = ip_pullup(mp, IPV6_HDR_LEN + ehdrlen, ira); in ip_fanout_v6()
2439 if (ip6h == NULL) in ip_fanout_v6()
2463 switch (ip_process_options_v6(mp, ip6h, optptr, in ip_fanout_v6()
2500 ip6h = ip_pullup(mp, in ip_fanout_v6()
2502 if (ip6h == NULL) in ip_fanout_v6()
2530 ip6h, fraghdr); in ip_fanout_v6()
2554 mp = ip_input_fragment_v6(mp, ip6h, fraghdr, in ip_fanout_v6()
2567 ip6h = (ip6_t *)mp->b_rptr; in ip_fanout_v6()
2595 ip6h = (ip6_t *)mp->b_rptr; in ip_fanout_v6()
2602 ip6h = ip_pullup(mp, ip_hdr_length + MIN_EHDR_LEN, ira); in ip_fanout_v6()
2603 if (ip6h == NULL) in ip_fanout_v6()
2613 ip6h = ip_pullup(mp, IPV6_HDR_LEN + ehdrlen, ira); in ip_fanout_v6()
2614 if (ip6h == NULL) in ip_fanout_v6()
2629 ip_process_rthdr(mp, ip6h, rthdr, ira); in ip_fanout_v6()
2734 ip6h = (ip6_t *)mp->b_rptr; in ip_fanout_v6()
2749 ip_fanout_proto_v6(mp, ip6h, ira); in ip_fanout_v6()