Lines Matching refs:icmph
1233 icmph_t icmph; in icmp_frag_needed() local
1240 bzero(&icmph, sizeof (icmph_t)); in icmp_frag_needed()
1241 icmph.icmph_type = ICMP_DEST_UNREACHABLE; in icmp_frag_needed()
1242 icmph.icmph_code = ICMP_FRAGMENTATION_NEEDED; in icmp_frag_needed()
1243 icmph.icmph_du_mtu = htons((uint16_t)mtu); in icmp_frag_needed()
1247 icmp_pkt(mp, &icmph, sizeof (icmph_t), ira); in icmp_frag_needed()
1331 icmph_t *icmph; in icmp_inbound_v4() local
1367 icmph = (icmph_t *)&mp->b_rptr[ip_hdr_length]; in icmp_inbound_v4()
1368 ip2dbg(("icmp_inbound_v4: type %d code %d\n", icmph->icmph_type, in icmp_inbound_v4()
1369 icmph->icmph_code)); in icmp_inbound_v4()
1376 switch (icmph->icmph_type) { in icmp_inbound_v4()
1381 if (icmph->icmph_code == ICMP_FRAGMENTATION_NEEDED) in icmp_inbound_v4()
1431 icmph = (icmph_t *)&mp->b_rptr[ip_hdr_length]; in icmp_inbound_v4()
1433 icmph->icmph_type = ICMP_ECHO_REPLY; in icmp_inbound_v4()
1435 icmp_send_reply_v4(mp, ipha, icmph, ira); in icmp_inbound_v4()
1478 icmph = (icmph_t *)&mp->b_rptr[ip_hdr_length]; in icmp_inbound_v4()
1493 icmph = (icmph_t *)&mp->b_rptr[ip_hdr_length]; in icmp_inbound_v4()
1495 icmph->icmph_type = ICMP_TIME_STAMP_REPLY; in icmp_inbound_v4()
1496 tsp = (uint32_t *)&icmph[1]; in icmp_inbound_v4()
1505 icmp_send_reply_v4(mp, ipha, icmph, ira); in icmp_inbound_v4()
1539 icmph = (icmph_t *)&mp->b_rptr[ip_hdr_length]; in icmp_inbound_v4()
1554 icmph = (icmph_t *)&mp->b_rptr[ip_hdr_length]; in icmp_inbound_v4()
1571 icmph->icmph_type = ICMP_ADDRESS_MASK_REPLY; in icmp_inbound_v4()
1572 bcopy(&ipif->ipif_net_mask, &icmph[1], IP_ADDR_LEN); in icmp_inbound_v4()
1575 icmp_send_reply_v4(mp, ipha, icmph, ira); in icmp_inbound_v4()
1642 icmph = (icmph_t *)&mp->b_rptr[ip_hdr_length]; in icmp_inbound_v4()
1643 if (!icmp_inbound_verify_v4(mp, icmph, ira)) { in icmp_inbound_v4()
1648 switch (icmph->icmph_type) { in icmp_inbound_v4()
1650 icmp_redirect_v4(mp, ipha, icmph, ira); in icmp_inbound_v4()
1653 if (icmph->icmph_code == ICMP_FRAGMENTATION_NEEDED) { in icmp_inbound_v4()
1655 icmp_inbound_too_big_v4(icmph, ira); in icmp_inbound_v4()
1659 icmp_inbound_error_fanout_v4(mp, icmph, ira); in icmp_inbound_v4()
1672 icmp_send_reply_v4(mblk_t *mp, ipha_t *ipha, icmph_t *icmph, in icmp_send_reply_v4() argument
1681 icmph->icmph_checksum = 0; in icmp_send_reply_v4()
1682 icmph->icmph_checksum = IP_CSUM(mp, ip_hdr_length, 0); in icmp_send_reply_v4()
1750 icmp_inbound_verify_v4(mblk_t *mp, icmph_t *icmph, ip_recv_attr_t *ira) in icmp_inbound_verify_v4() argument
1758 ipha = (ipha_t *)&icmph[1]; in icmp_inbound_verify_v4()
1776 if (icmph->icmph_type == ICMP_REDIRECT) in icmp_inbound_verify_v4()
1810 !connp->conn_verifyicmp(connp, tcpha, icmph, NULL, ira)) { in icmp_inbound_verify_v4()
1872 icmp_inbound_too_big_v4(icmph_t *icmph, ip_recv_attr_t *ira) in icmp_inbound_too_big_v4() argument
1885 ipha = (ipha_t *)&icmph[1]; in icmp_inbound_too_big_v4()
1886 ASSERT(icmph->icmph_type == ICMP_DEST_UNREACHABLE && in icmp_inbound_too_big_v4()
1887 icmph->icmph_code == ICMP_FRAGMENTATION_NEEDED); in icmp_inbound_too_big_v4()
1907 mtu = ntohs(icmph->icmph_du_mtu); in icmp_inbound_too_big_v4()
1917 if (icmph->icmph_du_zero != 0 || mtu < ipst->ips_ip_pmtu_min) { in icmp_inbound_too_big_v4()
1967 icmph->icmph_du_zero = 0; in icmp_inbound_too_big_v4()
1968 icmph->icmph_du_mtu = htons((uint16_t)dce->dce_pmtu); in icmp_inbound_too_big_v4()
1969 DTRACE_PROBE4(ip4__pmtu__change, icmph_t *, icmph, dce_t *, in icmp_inbound_too_big_v4()
2071 icmp_inbound_error_fanout_v4(mblk_t *mp, icmph_t *icmph, ip_recv_attr_t *ira) in icmp_inbound_error_fanout_v4() argument
2086 ipha = (ipha_t *)&icmph[1]; in icmp_inbound_error_fanout_v4()
2106 icmph->icmph_type, icmph->icmph_code)); in icmp_inbound_error_fanout_v4()
2208 icmph = (icmph_t *)&mp->b_rptr[hdr_length]; in icmp_inbound_error_fanout_v4()
2209 if (!icmp_inbound_verify_v4(mp, icmph, ira)) { in icmp_inbound_error_fanout_v4()
2214 icmp_inbound_error_fanout_v4(mp, icmph, ira); in icmp_inbound_error_fanout_v4()
2267 icmph = (icmph_t *)&mp->b_rptr[hdr_length]; in icmp_inbound_error_fanout_v4()
2268 if (!icmp_inbound_verify_v4(mp, icmph, ira)) { in icmp_inbound_error_fanout_v4()
2281 icmp_inbound_error_fanout_v4(mp, icmph, ira); in icmp_inbound_error_fanout_v4()
2627 icmp_redirect_v4(mblk_t *mp, ipha_t *ipha, icmph_t *icmph, ip_recv_attr_t *ira) in icmp_redirect_v4() argument
2636 inner_ipha = (ipha_t *)&icmph[1]; in icmp_redirect_v4()
2639 gateway = icmph->icmph_rd_gateway; in icmp_redirect_v4()
2678 switch (icmph->icmph_code) { in icmp_redirect_v4()
2752 icmph_t icmph; in icmp_param_problem() local
2759 bzero(&icmph, sizeof (icmph_t)); in icmp_param_problem()
2760 icmph.icmph_type = ICMP_PARAM_PROBLEM; in icmp_param_problem()
2761 icmph.icmph_pp_ptr = ptr; in icmp_param_problem()
2763 icmp_pkt(mp, &icmph, sizeof (icmph_t), ira); in icmp_param_problem()
2779 icmph_t *icmph; in icmp_pkt() local
2904 icmph = (icmph_t *)&ipha[1]; in icmp_pkt()
2905 bcopy(stuff, icmph, len); in icmp_pkt()
2906 icmph->icmph_checksum = 0; in icmp_pkt()
2907 icmph->icmph_checksum = IP_CSUM(mp, (int32_t)sizeof (ipha_t), 0); in icmp_pkt()
2978 icmph_t *icmph; in icmp_pkt_err_ok() local
3015 icmph = (icmph_t *) in icmp_pkt_err_ok()
3017 switch (icmph->icmph_type) { in icmp_pkt_err_ok()
3134 icmph_t icmph; in icmp_send_redirect() local
3141 bzero(&icmph, sizeof (icmph_t)); in icmp_send_redirect()
3142 icmph.icmph_type = ICMP_REDIRECT; in icmp_send_redirect()
3143 icmph.icmph_code = 1; in icmp_send_redirect()
3144 icmph.icmph_rd_gateway = gateway; in icmp_send_redirect()
3146 icmp_pkt(mp, &icmph, sizeof (icmph_t), ira); in icmp_send_redirect()
3155 icmph_t icmph; in icmp_time_exceeded() local
3162 bzero(&icmph, sizeof (icmph_t)); in icmp_time_exceeded()
3163 icmph.icmph_type = ICMP_TIME_EXCEEDED; in icmp_time_exceeded()
3164 icmph.icmph_code = code; in icmp_time_exceeded()
3166 icmp_pkt(mp, &icmph, sizeof (icmph_t), ira); in icmp_time_exceeded()
3177 icmph_t icmph; in icmp_unreachable() local
3184 bzero(&icmph, sizeof (icmph_t)); in icmp_unreachable()
3185 icmph.icmph_type = ICMP_DEST_UNREACHABLE; in icmp_unreachable()
3186 icmph.icmph_code = code; in icmp_unreachable()
3188 icmp_pkt(mp, &icmph, sizeof (icmph_t), ira); in icmp_unreachable()