Lines Matching refs:ill
1339 ill_t *ill = ira->ira_ill; in icmp_inbound_v4() local
1340 ip_stack_t *ipst = ill->ill_ipst; in icmp_inbound_v4()
1352 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInTruncatedPkts); in icmp_inbound_v4()
1353 ip_drop_input("ipIfStatsInTruncatedPkts", mp, ill); in icmp_inbound_v4()
1471 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in icmp_inbound_v4()
1473 mp, ill); in icmp_inbound_v4()
1531 BUMP_MIB(ill->ill_ip_mib, in icmp_inbound_v4()
1534 ill); in icmp_inbound_v4()
1562 ipif = ipif_lookup_addr(ipha->ipha_dst, ill, zoneid, ipst); in icmp_inbound_v4()
1565 ipif = ipif_lookup_remote(ill, ipha->ipha_src, zoneid); in icmp_inbound_v4()
1599 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in icmp_inbound_v4()
1600 ip_drop_input("ipIfStatsInDiscards - copymsg", mp, ill); in icmp_inbound_v4()
1615 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in icmp_inbound_v4()
1617 mp, ill); in icmp_inbound_v4()
1628 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in icmp_inbound_v4()
1629 ip_drop_input("ipIfStatsInDiscards - copymsg", mp, ill); in icmp_inbound_v4()
1676 ill_t *ill = ira->ira_ill; in icmp_send_reply_v4() local
1677 ip_stack_t *ipst = ill->ill_ipst; in icmp_send_reply_v4()
1716 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in icmp_send_reply_v4()
1752 ill_t *ill = ira->ira_ill; in icmp_inbound_verify_v4() local
1842 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in icmp_inbound_verify_v4()
1847 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInTruncatedPkts); in icmp_inbound_verify_v4()
1848 ip_drop_input("ipIfStatsInTruncatedPkts", mp, ill); in icmp_inbound_verify_v4()
1879 ill_t *ill = ira->ira_ill; in icmp_inbound_too_big_v4() local
1880 ip_stack_t *ipst = ill->ill_ipst; in icmp_inbound_too_big_v4()
1888 ASSERT(ill != NULL); in icmp_inbound_too_big_v4()
1915 old_mtu = ill->ill_mtu; in icmp_inbound_too_big_v4()
2080 ill_t *ill = ira->ira_ill; in icmp_inbound_error_fanout_v4() local
2081 ip_stack_t *ipst = ill->ill_ipst; in icmp_inbound_error_fanout_v4()
2139 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in icmp_inbound_error_fanout_v4()
2141 ip_drop_input("ipIfStatsInDiscards", mp, ill); in icmp_inbound_error_fanout_v4()
2158 ira->ira_ill = ill; in icmp_inbound_error_fanout_v4()
2309 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in icmp_inbound_error_fanout_v4()
2311 ip_drop_input("ipIfStatsInDiscards", mp, ill); in icmp_inbound_error_fanout_v4()
2317 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInTruncatedPkts); in icmp_inbound_error_fanout_v4()
2318 ip_drop_input("ipIfStatsInTruncatedPkts", mp, ill); in icmp_inbound_error_fanout_v4()
3376 ill_t *ill = NULL; in ip_set_destination_v4() local
3565 ill = ire_nexthop_ill(ire); in ip_set_destination_v4()
3568 if (ill == NULL) { in ip_set_destination_v4()
3573 error = ip_select_source_v4(ill, setsrc, dst_addr, in ip_set_destination_v4()
3652 if (ill != NULL) in ip_set_destination_v4()
3653 ill_refrele(ill); in ip_set_destination_v4()
3661 if (ill != NULL) in ip_set_destination_v4()
3662 ill_refrele(ill); in ip_set_destination_v4()
3685 ip_get_base_mtu(ill_t *ill, ire_t *ire) in ip_get_base_mtu() argument
3691 mtu = ill->ill_mc_mtu; in ip_get_base_mtu()
3693 mtu = ill->ill_mtu; in ip_get_base_mtu()
3989 ip_modclose(ill_t *ill) in ip_modclose() argument
3994 queue_t *q = ill->ill_rq; in ip_modclose()
3995 ip_stack_t *ipst = ill->ill_ipst; in ip_modclose()
3997 arl_ill_common_t *ai = ill->ill_common; in ip_modclose()
4004 success = ipsq_enter(ill, B_FALSE, NEW_OP); in ip_modclose()
4014 ipsq = ill->ill_phyint->phyint_ipsq; in ip_modclose()
4022 mutex_enter(&ill->ill_lock); in ip_modclose()
4023 ill->ill_state_flags |= ILL_CONDEMNED; in ip_modclose()
4024 for (ipif = ill->ill_ipif; ipif != NULL; in ip_modclose()
4032 cv_broadcast(&ill->ill_cv); in ip_modclose()
4033 mutex_exit(&ill->ill_lock); in ip_modclose()
4041 ill_dlpi_send_deferred(ill); in ip_modclose()
4048 (void) untimeout(ill->ill_frag_timer_id); in ip_modclose()
4049 (void) ill_frag_timeout(ill, 0); in ip_modclose()
4060 ill_delete(ill); in ip_modclose()
4061 mutex_enter(&ill->ill_lock); in ip_modclose()
4062 while (!ill_is_freeable(ill)) in ip_modclose()
4063 cv_wait(&ill->ill_cv, &ill->ill_lock); in ip_modclose()
4065 while (ill->ill_waiters) in ip_modclose()
4066 cv_wait(&ill->ill_cv, &ill->ill_lock); in ip_modclose()
4068 mutex_exit(&ill->ill_lock); in ip_modclose()
4078 ill_delete_tail(ill); in ip_modclose()
4083 arp_unbind_complete(ill); in ip_modclose()
4084 ASSERT(ill->ill_ipst == NULL); in ip_modclose()
4105 ASSERT(!ill->ill_isv6); in ip_modclose()
4118 mi_close_unlink(&ipst->ips_ip_g_head, (IDP)ill); in ip_modclose()
4125 if (ill->ill_credp != NULL) in ip_modclose()
4126 crfree(ill->ill_credp); in ip_modclose()
4128 mutex_destroy(&ill->ill_saved_ire_lock); in ip_modclose()
4129 mutex_destroy(&ill->ill_lock); in ip_modclose()
4130 rw_destroy(&ill->ill_mcast_lock); in ip_modclose()
4131 mutex_destroy(&ill->ill_mcast_serializer); in ip_modclose()
4132 list_destroy(&ill->ill_nce); in ip_modclose()
4140 mi_close_free((IDP)ill); in ip_modclose()
4830 ill_t *ill = ira->ira_ill; in ip_fanout_send_icmp_v4() local
4831 ip_stack_t *ipst = ill->ill_ipst; in ip_fanout_send_icmp_v4()
4854 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in ip_fanout_send_icmp_v4()
4855 ip_drop_input("ip_fanout_send_icmp_v4", mp, ill); in ip_fanout_send_icmp_v4()
4872 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInUnknownProtos); in ip_fanout_send_icmp_v4()
4873 ip_drop_input("ipIfStatsInUnknownProtos", mp, ill); in ip_fanout_send_icmp_v4()
4876 BUMP_MIB(ill->ill_ip_mib, udpIfStatsNoPorts); in ip_fanout_send_icmp_v4()
4877 ip_drop_input("ipIfStatsNoPorts", mp, ill); in ip_fanout_send_icmp_v4()
4926 ill_t *ill = ira->ira_ill; in ip_fanout_proto_conn() local
4927 ip_stack_t *ipst = ill->ill_ipst; in ip_fanout_proto_conn()
4940 BUMP_MIB(ill->ill_icmp6_mib, ipv6IfIcmpInOverflows); in ip_fanout_proto_conn()
4946 BUMP_MIB(ill->ill_ip_mib, rawipIfStatsInOverflows); in ip_fanout_proto_conn()
4962 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in ip_fanout_proto_conn()
4964 ip_drop_input("ipIfStatsInDiscards", mp, ill); in ip_fanout_proto_conn()
4974 BUMP_MIB(ill->ill_ip_mib, ipIfStatsHCInDelivers); in ip_fanout_proto_conn()
4978 ira->ira_ill = ill; in ip_fanout_proto_conn()
5019 ill_t *ill = ira->ira_ill; in ip_fanout_proto_v4() local
5020 ip_stack_t *ipst = ill->ill_ipst; in ip_fanout_proto_v4()
5074 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in ip_fanout_proto_v4()
5075 ip_drop_input("ipIfStatsInDiscards", mp, ill); in ip_fanout_proto_v4()
5206 ill_t *ill = ira->ira_ill; in ip_fanout_udp_conn() local
5207 ip_stack_t *ipst = ill->ill_ipst; in ip_fanout_udp_conn()
5216 BUMP_MIB(ill->ill_ip_mib, udpIfStatsInOverflows); in ip_fanout_udp_conn()
5228 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in ip_fanout_udp_conn()
5230 ip_drop_input("ipIfStatsInDiscards", mp, ill); in ip_fanout_udp_conn()
5244 BUMP_MIB(ill->ill_ip_mib, ipIfStatsHCInDelivers); in ip_fanout_udp_conn()
5248 ira->ira_ill = ill; in ip_fanout_udp_conn()
5281 ill_t *ill = ira->ira_ill; in ip_fanout_udp_multi_v4() local
5282 ip_stack_t *ipst = ill->ill_ipst; in ip_fanout_udp_multi_v4()
5337 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in ip_fanout_udp_multi_v4()
5338 ip_drop_input("ipIfStatsInDiscards", mp, ill); in ip_fanout_udp_multi_v4()
5414 BUMP_MIB(ill->ill_ip_mib, udpIfStatsNoPorts); in ip_fanout_udp_multi_v4()
5452 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in ip_fanout_udp_multi_v4()
5453 ip_drop_input("ipIfStatsInDiscards", mp, ill); in ip_fanout_udp_multi_v4()
5844 ip_wait_for_info_ack(ill_t *ill) in ip_wait_for_info_ack() argument
5848 mutex_enter(&ill->ill_lock); in ip_wait_for_info_ack()
5849 while (ill->ill_state_flags & ILL_LL_SUBNET_PENDING) { in ip_wait_for_info_ack()
5853 err = cv_wait_sig(&ill->ill_cv, &ill->ill_lock); in ip_wait_for_info_ack()
5855 mutex_exit(&ill->ill_lock); in ip_wait_for_info_ack()
5859 mutex_exit(&ill->ill_lock); in ip_wait_for_info_ack()
5864 return (ill->ill_error); in ip_wait_for_info_ack()
5875 ill_t *ill; in ip_modopen() local
5902 ill = (ill_t *)mi_open_alloc_sleep(sizeof (ill_t)); in ip_modopen()
5903 q->q_ptr = WR(q)->q_ptr = ill; in ip_modopen()
5904 ill->ill_ipst = ipst; in ip_modopen()
5905 ill->ill_zoneid = zoneid; in ip_modopen()
5911 err = ill_init(q, ill); in ip_modopen()
5914 mi_free(ill); in ip_modopen()
5927 ipsq_exit(ill->ill_phyint->phyint_ipsq); in ip_modopen()
5928 err = ip_wait_for_info_ack(ill); in ip_modopen()
5930 ill->ill_credp = credp; in ip_modopen()
6672 ip_reassemble(mblk_t *mp, ipf_t *ipf, uint_t start, boolean_t more, ill_t *ill, in ip_reassemble() argument
6844 BUMP_MIB(ill->ill_ip_mib, in ip_reassemble()
6870 BUMP_MIB(ill->ill_ip_mib, in ip_reassemble()
6899 BUMP_MIB(ill->ill_ip_mib, in ip_reassemble()
6909 BUMP_MIB(ill->ill_ip_mib, in ip_reassemble()
6946 BUMP_MIB(ill->ill_ip_mib, in ip_reassemble()
6977 BUMP_MIB(ill->ill_ip_mib, in ip_reassemble()
7037 ill_t *ill = ira->ira_ill; in ip_input_fragment() local
7038 ip_stack_t *ipst = ill->ill_ipst; in ip_input_fragment()
7141 if ((msg_len + sizeof (*ipf) + ill->ill_frag_count) >= in ip_input_fragment()
7144 uint_t, ill->ill_frag_count, in ip_input_fragment()
7146 ill_frag_prune(ill, in ip_input_fragment()
7152 ipfb = &ill->ill_frag_hash_tbl[ILL_FRAG_HASH(src, ident)]; in ip_input_fragment()
7173 ill_frag_free_pkts(ill, ipfb, ipf, 1); in ip_input_fragment()
7206 ill_frag_free_pkts(ill, ipfb, ipfb->ipfb_ipf, 1); in ip_input_fragment()
7212 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in ip_input_fragment()
7213 ip_drop_input("ipIfStatsInDiscards", mp, ill); in ip_input_fragment()
7220 BUMP_MIB(ill->ill_ip_mib, ipIfStatsReasmReqds); in ip_input_fragment()
7237 ipf->ipf_gen = ill->ill_ipf_gen++; in ip_input_fragment()
7295 (frag_offset_flags & IPH_MF), ill, msg_len); in ip_input_fragment()
7300 atomic_add_32(&ill->ill_frag_count, ipf->ipf_count); in ip_input_fragment()
7302 mutex_enter(&ill->ill_lock); in ip_input_fragment()
7303 ill_frag_timer_start(ill); in ip_input_fragment()
7304 mutex_exit(&ill->ill_lock); in ip_input_fragment()
7346 atomic_add_32(&ill->ill_frag_count, msg_len); in ip_input_fragment()
7364 (frag_offset_flags & IPH_MF), ill, msg_len); in ip_input_fragment()
7371 atomic_add_32(&ill->ill_frag_count, count); in ip_input_fragment()
7377 ill_frag_free_pkts(ill, ipfb, ipf, 1); in ip_input_fragment()
7395 BUMP_MIB(ill->ill_ip_mib, ipIfStatsReasmOKs); in ip_input_fragment()
7410 atomic_add_32(&ill->ill_frag_count, -count); in ip_input_fragment()
7423 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInHdrErrors); in ip_input_fragment()
7424 ip_drop_input("Reassembled packet too large", mp, ill); in ip_input_fragment()
7433 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in ip_input_fragment()
7434 ip_drop_input("ipIfStatsInDiscards", mp, ill); in ip_input_fragment()
7472 ill_t *ill = ira->ira_ill; in ip_pullup() local
7475 (void) mi_strlog(ill->ill_rq, 1, SL_ERROR|SL_TRACE, in ip_pullup()
7478 ill->ill_name, len, (void *)mp->b_rptr); in ip_pullup()
7496 ip_setl2src(mblk_t *mp, ip_recv_attr_t *ira, ill_t *ill) in ip_setl2src() argument
7504 ASSERT(ill != NULL); in ip_setl2src()
7505 alen = ill->ill_phys_addr_length; in ip_setl2src()
7511 (addr = ill->ill_phys_addr) != NULL) { in ip_setl2src()
7525 ill_t *ill = ira->ira_ill; in ip_check_and_align_header() local
7531 IP_STAT(ill->ill_ipst, ip_notaligned); in ip_check_and_align_header()
7533 IP_STAT(ill->ill_ipst, ip_recv_pullup); in ip_check_and_align_header()
7537 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInHdrErrors); in ip_check_and_align_header()
7538 ip_drop_input("ipIfStatsInHdrErrors", mp, ill); in ip_check_and_align_header()
7561 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInHdrErrors); in ip_check_and_align_header()
7562 ip_drop_input("ipIfStatsInHdrErrors", mp, ill); in ip_check_and_align_header()
7564 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in ip_check_and_align_header()
7565 ip_drop_input("ipIfStatsInDiscards", mp, ill); in ip_check_and_align_header()
7580 ill_t *ill = ira->ira_ill; in ip_check_length() local
7589 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInHdrErrors); in ip_check_length()
7590 ip_drop_input("ipIfStatsInHdrErrors", mp, ill); in ip_check_length()
7595 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInTruncatedPkts); in ip_check_length()
7596 ip_drop_input("ipIfStatsInTruncatedPkts", mp, ill); in ip_check_length()
7605 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInHdrErrors); in ip_check_length()
7606 ip_drop_input("ipIfStatsInHdrErrors", mp, ill); in ip_check_length()
7611 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInTruncatedPkts); in ip_check_length()
7612 ip_drop_input("ipIfStatsInTruncatedPkts", mp, ill); in ip_check_length()
7624 IP_STAT(ill->ill_ipst, ip_multimblk); in ip_check_length()
7637 ill_t *ill = ira->ira_ill; in ip_check_optlen() local
7642 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInHdrErrors); in ip_check_optlen()
7643 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInWrongIPVersion); in ip_check_optlen()
7644 ip_drop_input("IPvN packet on IPv4 ill", mp, ill); in ip_check_optlen()
7650 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInHdrErrors); in ip_check_optlen()
7651 ip_drop_input("ipIfStatsInHdrErrors", mp, ill); in ip_check_optlen()
7662 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInHdrErrors); in ip_check_optlen()
7663 ip_drop_input("ipIfStatsInHdrErrors", mp, ill); in ip_check_optlen()
7668 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in ip_check_optlen()
7669 ip_drop_input("ipIfStatsInDiscards", mp, ill); in ip_check_optlen()
7684 ip_check_multihome(void *addr, ire_t *ire, ill_t *ill) in ip_check_multihome() argument
7689 ip_stack_t *ipst = ill->ill_ipst; in ip_check_multihome()
7698 if (IS_IN_SAME_ILLGRP(ill, ire->ire_ill)) in ip_check_multihome()
7719 IRE_LOCAL, ill, ALL_ZONES, NULL, in ip_check_multihome()
7726 IRE_LOCAL, ill, ALL_ZONES, NULL, in ip_check_multihome()
7752 ifindex = ill->ill_usesrc_ifindex; in ip_check_multihome()
7770 if ((ill->ill_flags & ire->ire_ill->ill_flags & ILLF_ROUTER) != 0) { in ip_check_multihome()
7792 ip_dlur_to_mhi(ill_t *ill, mblk_t *mb, struct mac_header_info_s *mhip) in ip_dlur_to_mhi() argument
7802 if (ill->ill_sap_length < 0) in ip_dlur_to_mhi()
7805 extra_offset = ill->ill_sap_length; in ip_dlur_to_mhi()
7820 (bmp = ill->ill_bcast_mp) != NULL) { in ip_dlur_to_mhi()
7850 ip_mdata_to_mhi(ill_t *ill, mblk_t *mp, struct mac_header_info_s *mhip) in ip_mdata_to_mhi() argument
7867 if (ill->ill_type != IFT_ETHER) in ip_mdata_to_mhi()
7875 if (ill->ill_isv6) { in ip_mdata_to_mhi()
7895 if ((bmp = ill->ill_bcast_mp) != NULL) { in ip_mdata_to_mhi()
7902 if (ill->ill_sap_length < 0) { in ip_mdata_to_mhi()
7905 addrlen += ill->ill_sap_length; in ip_mdata_to_mhi()
7909 ill->ill_sap_length; in ip_mdata_to_mhi()
7910 addrlen -= ill->ill_sap_length; in ip_mdata_to_mhi()
7923 ip_rput_notdata(ill_t *ill, mblk_t *mp) in ip_rput_notdata() argument
7935 ip_rput_dlpi(ill, mp); in ip_rput_notdata()
7947 ip_dlur_to_mhi(ill, first_mp, &mhi); in ip_rput_notdata()
7948 if (ill->ill_isv6) in ip_rput_notdata()
7949 ip_input_v6(ill, NULL, mp, &mhi); in ip_rput_notdata()
7951 ip_input(ill, NULL, mp, &mhi); in ip_rput_notdata()
7961 ill_fastpath_ack(ill, mp); in ip_rput_notdata()
7964 putnext(ill->ill_rq, mp); in ip_rput_notdata()
7970 mutex_enter(&ill->ill_lock); in ip_rput_notdata()
7971 if (ill->ill_state_flags & ILL_CONDEMNED) { in ip_rput_notdata()
7972 mutex_exit(&ill->ill_lock); in ip_rput_notdata()
7976 ill_refhold_locked(ill); in ip_rput_notdata()
7977 mutex_exit(&ill->ill_lock); in ip_rput_notdata()
7978 qwriter_ip(ill, ill->ill_rq, mp, ip_rput_other, CUR_OP, in ip_rput_notdata()
7982 putnext(ill->ill_rq, mp); in ip_rput_notdata()
7989 ip_rput_other(NULL, ill->ill_rq, mp, NULL); in ip_rput_notdata()
7996 putnext(ill->ill_rq, mp); in ip_rput_notdata()
8005 ill_t *ill; in ip_rput() local
8008 ill = (ill_t *)q->q_ptr; in ip_rput()
8010 if (ill->ill_state_flags & (ILL_CONDEMNED | ILL_LL_SUBNET_PENDING)) { in ip_rput()
8027 ip_mdata_to_mhi(ill, mp, &mhi); in ip_rput()
8028 ip_input(ill, NULL, mp, &mhi); in ip_rput()
8030 ip_rput_notdata(ill, mp); in ip_rput()
8041 ill_t *ill = ira->ira_ill; in ip_fix_dbref() local
8042 ip_stack_t *ipst = ill->ill_ipst; in ip_fix_dbref()
8052 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in ip_fix_dbref()
8053 ip_drop_input("ipIfStatsInDiscards", mp, ill); in ip_fix_dbref()
8070 ip_dlpi_error(ill_t *ill, t_uscalar_t prim, t_uscalar_t dl_err, in ip_dlpi_error() argument
8074 (void) mi_strlog(ill->ill_rq, 1, SL_CONSOLE|SL_ERROR|SL_TRACE, in ip_dlpi_error()
8076 ill->ill_name, dl_primstr(prim), err); in ip_dlpi_error()
8080 (void) mi_strlog(ill->ill_rq, 1, SL_CONSOLE|SL_ERROR|SL_TRACE, in ip_dlpi_error()
8081 "%s: %s failed: %s\n", ill->ill_name, dl_primstr(prim), in ip_dlpi_error()
8092 ip_rput_dlpi(ill_t *ill, mblk_t *mp) in ip_rput_dlpi() argument
8096 queue_t *q = ill->ill_rq; in ip_rput_dlpi()
8101 char *, dl_primstr(prim), ill_t *, ill); in ip_rput_dlpi()
8112 "(0x%x), unix %u\n", ill->ill_name, dl_primstr(reqprim), in ip_rput_dlpi()
8138 !ill_dlpi_pending(ill, reqprim)) { in ip_rput_dlpi()
8153 mutex_enter(&ill->ill_lock); in ip_rput_dlpi()
8154 ill->ill_state_flags &= ~ILL_DL_UNBIND_IN_PROGRESS; in ip_rput_dlpi()
8155 cv_signal(&ill->ill_cv); in ip_rput_dlpi()
8156 mutex_exit(&ill->ill_lock); in ip_rput_dlpi()
8161 if (ill->ill_dlpi_multicast_state == IDS_INPROGRESS) in ip_rput_dlpi()
8162 ill->ill_dlpi_multicast_state = IDS_OK; in ip_rput_dlpi()
8178 ill_refhold(ill); in ip_rput_dlpi()
8180 qwriter_ip(ill, q, mp, ip_rput_dlpi_writer, NEW_OP, B_FALSE); in ip_rput_dlpi()
8182 qwriter_ip(ill, q, mp, ip_rput_dlpi_writer, CUR_OP, B_FALSE); in ip_rput_dlpi()
8198 ill_t *ill = (ill_t *)q->q_ptr; in ip_rput_dlpi_writer() local
8209 char *, dl_primstr(dloa->dl_primitive), ill_t *, ill); in ip_rput_dlpi_writer()
8212 ASSERT(ipsq->ipsq_xop == ill->ill_phyint->phyint_ipsq->ipsq_xop); in ip_rput_dlpi_writer()
8213 ASSERT(IAM_WRITER_ILL(ill)); in ip_rput_dlpi_writer()
8221 if (ipif != NULL && ipif->ipif_ill != ill) in ip_rput_dlpi_writer()
8231 ill_t *, ill); in ip_rput_dlpi_writer()
8235 ill_dlpi_done(ill, dlea->dl_error_primitive); in ip_rput_dlpi_writer()
8242 ill_dlpi_done(ill, dlea->dl_error_primitive); in ip_rput_dlpi_writer()
8245 ill_dlpi_done(ill, DL_NOTIFY_REQ); in ip_rput_dlpi_writer()
8262 paddrreq = ill->ill_phys_addr_pend; in ip_rput_dlpi_writer()
8263 ill_dlpi_done(ill, DL_PHYS_ADDR_REQ); in ip_rput_dlpi_writer()
8265 ill->ill_token_length = 0; in ip_rput_dlpi_writer()
8269 ill->ill_nd_lla_len = 0; in ip_rput_dlpi_writer()
8282 if (!ill->ill_ifname_pending) in ip_rput_dlpi_writer()
8284 ill->ill_ifname_pending = 0; in ip_rput_dlpi_writer()
8293 q = ill->ill_wq; in ip_rput_dlpi_writer()
8297 ill_dlpi_done(ill, DL_BIND_REQ); in ip_rput_dlpi_writer()
8298 if (ill->ill_ifname_pending) in ip_rput_dlpi_writer()
8300 mutex_enter(&ill->ill_lock); in ip_rput_dlpi_writer()
8301 ill->ill_state_flags &= ~ILL_DOWN_IN_PROGRESS; in ip_rput_dlpi_writer()
8302 mutex_exit(&ill->ill_lock); in ip_rput_dlpi_writer()
8324 ill_dlpi_done(ill, DL_ENABMULTI_REQ); in ip_rput_dlpi_writer()
8326 if (ill->ill_dlpi_multicast_state == IDS_INPROGRESS) in ip_rput_dlpi_writer()
8327 ill->ill_dlpi_multicast_state = IDS_FAILED; in ip_rput_dlpi_writer()
8328 if (ill->ill_dlpi_multicast_state == IDS_FAILED) { in ip_rput_dlpi_writer()
8333 dlea->dl_errno, ill->ill_name); in ip_rput_dlpi_writer()
8340 mutex_enter(&ill->ill_phyint->phyint_lock); in ip_rput_dlpi_writer()
8341 ill->ill_phyint->phyint_flags |= in ip_rput_dlpi_writer()
8343 mutex_exit(&ill->ill_phyint->phyint_lock); in ip_rput_dlpi_writer()
8351 if (ill->ill_dlpi_capab_state == IDCS_PROBE_SENT) in ip_rput_dlpi_writer()
8352 ill->ill_dlpi_capab_state = IDCS_FAILED; in ip_rput_dlpi_writer()
8353 ill_capability_done(ill); in ip_rput_dlpi_writer()
8370 if (ill->ill_ifname_pending_err != 0) { in ip_rput_dlpi_writer()
8371 err = ill->ill_ifname_pending_err; in ip_rput_dlpi_writer()
8372 ill->ill_ifname_pending_err = 0; in ip_rput_dlpi_writer()
8382 } else if (log && ill->ill_ifname_pending && in ip_rput_dlpi_writer()
8383 ill->ill_ifname_pending_err == 0) { in ip_rput_dlpi_writer()
8384 ill->ill_ifname_pending_err = dlea->dl_unix_errno ? in ip_rput_dlpi_writer()
8389 ip_dlpi_error(ill, dlea->dl_error_primitive, in ip_rput_dlpi_writer()
8393 ill_capability_ack(ill, mp); in ip_rput_dlpi_writer()
8403 ill_dlpi_done(ill, DL_INFO_REQ); in ip_rput_dlpi_writer()
8404 ip_ll_subnet_defaults(ill, mp); in ip_rput_dlpi_writer()
8405 ASSERT(!MUTEX_HELD(&ill->ill_phyint->phyint_ipsq->ipsq_lock)); in ip_rput_dlpi_writer()
8412 ill_dlpi_done(ill, DL_BIND_REQ); in ip_rput_dlpi_writer()
8414 if (ill->ill_ifname_pending) { in ip_rput_dlpi_writer()
8416 ill_t *, ill, mblk_t *, mp); in ip_rput_dlpi_writer()
8419 mutex_enter(&ill->ill_lock); in ip_rput_dlpi_writer()
8420 ill->ill_dl_up = 1; in ip_rput_dlpi_writer()
8421 ill->ill_state_flags &= ~ILL_DOWN_IN_PROGRESS; in ip_rput_dlpi_writer()
8422 mutex_exit(&ill->ill_lock); in ip_rput_dlpi_writer()
8427 DTRACE_PROBE1(ip__rput__dlpi__no__mblk, ill_t *, ill); in ip_rput_dlpi_writer()
8440 ip1dbg(("ip_rput_dlpi: bind_ack %s\n", ill->ill_name)); in ip_rput_dlpi_writer()
8441 DTRACE_PROBE1(ip__rput__dlpi__bind__ack, ill_t *, ill); in ip_rput_dlpi_writer()
8442 ill_nic_event_dispatch(ill, 0, NE_UP, NULL, 0); in ip_rput_dlpi_writer()
8450 if (ill->ill_isv6) { in ip_rput_dlpi_writer()
8460 } else if (ill->ill_net_type == IRE_IF_RESOLVER) { in ip_rput_dlpi_writer()
8468 mutex_enter(&ill->ill_lock); in ip_rput_dlpi_writer()
8470 mutex_exit(&ill->ill_lock); in ip_rput_dlpi_writer()
8492 if ((err == 0) && (ill->ill_up_ipifs)) { in ip_rput_dlpi_writer()
8493 err = ill_up_ipifs(ill, q, mp1); in ip_rput_dlpi_writer()
8506 if (ill->ill_move_ipif != NULL) { in ip_rput_dlpi_writer()
8508 ill->ill_move_ipif = NULL; in ip_rput_dlpi_writer()
8510 ipif = ill->ill_move_ipif; in ip_rput_dlpi_writer()
8511 ill->ill_move_ipif = NULL; in ip_rput_dlpi_writer()
8527 err = ill_set_phys_addr(ill, mp); in ip_rput_dlpi_writer()
8536 err = ill_replumb(ill, mp); in ip_rput_dlpi_writer()
8540 nce_flush(ill, B_FALSE); in ip_rput_dlpi_writer()
8553 mutex_enter(&ill->ill_lock); in ip_rput_dlpi_writer()
8554 orig_mtu = ill->ill_mtu; in ip_rput_dlpi_writer()
8555 orig_mc_mtu = ill->ill_mc_mtu; in ip_rput_dlpi_writer()
8558 ill->ill_current_frag = in ip_rput_dlpi_writer()
8560 ill->ill_mc_mtu = (uint_t)notify->dl_data; in ip_rput_dlpi_writer()
8563 ill->ill_current_frag = in ip_rput_dlpi_writer()
8565 ill->ill_mc_mtu = (uint_t)notify->dl_data2; in ip_rput_dlpi_writer()
8568 if (ill->ill_current_frag > ill->ill_max_frag) in ip_rput_dlpi_writer()
8569 ill->ill_max_frag = ill->ill_current_frag; in ip_rput_dlpi_writer()
8571 if (!(ill->ill_flags & ILLF_FIXEDMTU)) { in ip_rput_dlpi_writer()
8572 ill->ill_mtu = ill->ill_current_frag; in ip_rput_dlpi_writer()
8578 if (ill->ill_user_mtu != 0 && in ip_rput_dlpi_writer()
8579 ill->ill_user_mtu < ill->ill_mtu) in ip_rput_dlpi_writer()
8580 ill->ill_mtu = ill->ill_user_mtu; in ip_rput_dlpi_writer()
8582 if (ill->ill_user_mtu != 0 && in ip_rput_dlpi_writer()
8583 ill->ill_user_mtu < ill->ill_mc_mtu) in ip_rput_dlpi_writer()
8584 ill->ill_mc_mtu = ill->ill_user_mtu; in ip_rput_dlpi_writer()
8586 if (ill->ill_isv6) { in ip_rput_dlpi_writer()
8587 if (ill->ill_mtu < IPV6_MIN_MTU) in ip_rput_dlpi_writer()
8588 ill->ill_mtu = IPV6_MIN_MTU; in ip_rput_dlpi_writer()
8589 if (ill->ill_mc_mtu < IPV6_MIN_MTU) in ip_rput_dlpi_writer()
8590 ill->ill_mc_mtu = IPV6_MIN_MTU; in ip_rput_dlpi_writer()
8592 if (ill->ill_mtu < IP_MIN_MTU) in ip_rput_dlpi_writer()
8593 ill->ill_mtu = IP_MIN_MTU; in ip_rput_dlpi_writer()
8594 if (ill->ill_mc_mtu < IP_MIN_MTU) in ip_rput_dlpi_writer()
8595 ill->ill_mc_mtu = IP_MIN_MTU; in ip_rput_dlpi_writer()
8597 } else if (ill->ill_mc_mtu > ill->ill_mtu) { in ip_rput_dlpi_writer()
8598 ill->ill_mc_mtu = ill->ill_mtu; in ip_rput_dlpi_writer()
8601 mutex_exit(&ill->ill_lock); in ip_rput_dlpi_writer()
8606 if (orig_mtu != ill->ill_mtu || in ip_rput_dlpi_writer()
8607 orig_mc_mtu != ill->ill_mc_mtu) { in ip_rput_dlpi_writer()
8608 dce_increment_all_generations(ill->ill_isv6, in ip_rput_dlpi_writer()
8609 ill->ill_ipst); in ip_rput_dlpi_writer()
8615 if (IS_UNDER_IPMP(ill)) in ip_rput_dlpi_writer()
8616 ipmp_illgrp_refresh_mtu(ill->ill_grp); in ip_rput_dlpi_writer()
8625 phyint_t *phyint = ill->ill_phyint; in ip_rput_dlpi_writer()
8637 if (IS_IPMP(ill)) { in ip_rput_dlpi_writer()
8659 phyint_t *phyint = ill->ill_phyint; in ip_rput_dlpi_writer()
8667 phyint_t *phyint = ill->ill_phyint; in ip_rput_dlpi_writer()
8694 ipsq_current_start(ipsq, ill->ill_ipif, 0); in ip_rput_dlpi_writer()
8695 ill_capability_reset(ill, B_TRUE); in ip_rput_dlpi_writer()
8700 ill_set_allowed_ips(ill, mp); in ip_rput_dlpi_writer()
8719 ill->ill_note_link = 1; in ip_rput_dlpi_writer()
8720 ill_dlpi_done(ill, DL_NOTIFY_REQ); in ip_rput_dlpi_writer()
8738 paddrreq = ill->ill_phys_addr_pend; in ip_rput_dlpi_writer()
8743 ill_dlpi_done(ill, DL_PHYS_ADDR_REQ); in ip_rput_dlpi_writer()
8751 bcopy(addr, &ill->ill_token.s6_addr32[2], paddrlen); in ip_rput_dlpi_writer()
8752 ill->ill_token_length = paddrlen; in ip_rput_dlpi_writer()
8755 ASSERT(ill->ill_nd_lla_mp == NULL); in ip_rput_dlpi_writer()
8756 ill_set_ndmp(ill, mp, paddroff, paddrlen); in ip_rput_dlpi_writer()
8760 ASSERT(ill->ill_dest_addr_mp == NULL); in ip_rput_dlpi_writer()
8761 ill->ill_dest_addr_mp = mp; in ip_rput_dlpi_writer()
8762 ill->ill_dest_addr = addr; in ip_rput_dlpi_writer()
8764 if (ill->ill_isv6) { in ip_rput_dlpi_writer()
8765 ill_setdesttoken(ill); in ip_rput_dlpi_writer()
8766 ipif_setdestlinklocal(ill->ill_ipif); in ip_rput_dlpi_writer()
8772 ASSERT(ill->ill_phys_addr_mp == NULL); in ip_rput_dlpi_writer()
8773 if (!ill->ill_ifname_pending) in ip_rput_dlpi_writer()
8775 ill->ill_ifname_pending = 0; in ip_rput_dlpi_writer()
8780 q = ill->ill_wq; in ip_rput_dlpi_writer()
8787 if (ill->ill_ifname_pending_err != 0) { in ip_rput_dlpi_writer()
8788 err = ill->ill_ifname_pending_err; in ip_rput_dlpi_writer()
8789 ill->ill_ifname_pending_err = 0; in ip_rput_dlpi_writer()
8793 ill->ill_phys_addr_mp = mp; in ip_rput_dlpi_writer()
8794 ill->ill_phys_addr = (paddrlen == 0 ? NULL : addr); in ip_rput_dlpi_writer()
8805 if (paddrlen == 0 || ill->ill_phys_addr_length == 0) { in ip_rput_dlpi_writer()
8806 ill->ill_phys_addr = NULL; in ip_rput_dlpi_writer()
8807 } else if (paddrlen != ill->ill_phys_addr_length) { in ip_rput_dlpi_writer()
8809 paddrlen, ill->ill_phys_addr_length)); in ip_rput_dlpi_writer()
8814 if (ill->ill_nd_lla_mp == NULL) { in ip_rput_dlpi_writer()
8815 if ((mp_hw = copyb(ill->ill_phys_addr_mp)) == NULL) { in ip_rput_dlpi_writer()
8819 ill_set_ndmp(ill, mp_hw, paddroff, paddrlen); in ip_rput_dlpi_writer()
8822 if (ill->ill_isv6) { in ip_rput_dlpi_writer()
8823 ill_setdefaulttoken(ill); in ip_rput_dlpi_writer()
8824 ipif_setlinklocal(ill->ill_ipif); in ip_rput_dlpi_writer()
8834 ill_t *, ill); in ip_rput_dlpi_writer()
8839 ill_dlpi_done(ill, dloa->dl_correct_primitive); in ip_rput_dlpi_writer()
8845 ill_dlpi_done(ill, dloa->dl_correct_primitive); in ip_rput_dlpi_writer()
8865 int, ipsq->ipsq_xop->ipx_current_ioctl, ill_t *, ill, in ip_rput_dlpi_writer()
8875 ill_t *ill_other = ILL_OTHER(ill); in ip_rput_dlpi_writer()
8888 ipmp_grp_t *grp = ill->ill_phyint->phyint_grp; in ip_rput_dlpi_writer()
8891 illg = ill->ill_isv6 ? grp->gr_v6 : grp->gr_v4; in ip_rput_dlpi_writer()
8893 ipmp_phyint_leave_grp(ill->ill_phyint); in ip_rput_dlpi_writer()
8895 ipmp_ill_join_illgrp(ill, illg); in ip_rput_dlpi_writer()
8922 ill_t *ill = q->q_ptr; in ip_rput_other() local
8929 ill->ill_phyint->phyint_ipsq->ipsq_xop); in ip_rput_other()
8942 ill->ill_error = (int)(*mp->b_rptr & 0xFF); in ip_rput_other()
8943 if (ill->ill_error == 0) in ip_rput_other()
8944 ill->ill_error = ENXIO; in ip_rput_other()
8957 mutex_enter(&ill->ill_lock); in ip_rput_other()
8958 if (ill->ill_dlpi_fastpath_state == IDS_INPROGRESS) { in ip_rput_other()
8959 ill->ill_dlpi_fastpath_state = IDS_FAILED; in ip_rput_other()
8960 mutex_exit(&ill->ill_lock); in ip_rput_other()
8966 ill->ill_name)); in ip_rput_other()
8968 mutex_exit(&ill->ill_lock); in ip_rput_other()
9160 ill_t *ill = (ill_t *)arg; in ill_frag_timer() local
9162 ip_stack_t *ipst = ill->ill_ipst; in ill_frag_timer()
9165 mutex_enter(&ill->ill_lock); in ill_frag_timer()
9166 ASSERT(!ill->ill_fragtimer_executing); in ill_frag_timer()
9167 if (ill->ill_state_flags & ILL_CONDEMNED) { in ill_frag_timer()
9168 ill->ill_frag_timer_id = 0; in ill_frag_timer()
9169 mutex_exit(&ill->ill_lock); in ill_frag_timer()
9172 ill->ill_fragtimer_executing = 1; in ill_frag_timer()
9173 mutex_exit(&ill->ill_lock); in ill_frag_timer()
9175 timeout = (ill->ill_isv6 ? ipst->ips_ipv6_reassembly_timeout : in ill_frag_timer()
9178 frag_pending = ill_frag_timeout(ill, timeout); in ill_frag_timer()
9184 mutex_enter(&ill->ill_lock); in ill_frag_timer()
9185 ill->ill_fragtimer_executing = 0; in ill_frag_timer()
9186 ill->ill_frag_timer_id = 0; in ill_frag_timer()
9187 if (frag_pending || ill->ill_fragtimer_needrestart) in ill_frag_timer()
9188 ill_frag_timer_start(ill); in ill_frag_timer()
9189 mutex_exit(&ill->ill_lock); in ill_frag_timer()
9193 ill_frag_timer_start(ill_t *ill) in ill_frag_timer_start() argument
9195 ip_stack_t *ipst = ill->ill_ipst; in ill_frag_timer_start()
9198 ASSERT(MUTEX_HELD(&ill->ill_lock)); in ill_frag_timer_start()
9201 if (ill->ill_state_flags & ILL_CONDEMNED) in ill_frag_timer_start()
9204 if (ill->ill_fragtimer_executing) { in ill_frag_timer_start()
9211 ill->ill_fragtimer_needrestart = 1; in ill_frag_timer_start()
9215 if (ill->ill_frag_timer_id == 0) { in ill_frag_timer_start()
9216 timeo_ms = (ill->ill_isv6 ? ipst->ips_ipv6_reassembly_timeout : in ill_frag_timer_start()
9224 ill->ill_frag_timer_id = timeout(ill_frag_timer, ill, in ill_frag_timer_start()
9226 ill->ill_fragtimer_needrestart = 0; in ill_frag_timer_start()
9246 ill_t *ill = ira->ira_ill; in ip_input_local_options() local
9247 ip_stack_t *ipst = ill->ill_ipst; in ip_input_local_options()
9302 if (ip_select_source_v4(ill, INADDR_ANY, ipha->ipha_dst, in ip_input_local_options()
9353 if (ip_select_source_v4(ill, INADDR_ANY, in ip_input_local_options()
9380 ip_drop_input("ICMP_SOURCE_ROUTE_FAILED", mp, ill); in ip_input_local_options()
9833 ill_t *ill; in ip_snmp_get_mib2_ip_traffic_stats() local
9883 ill = ILL_START_WALK_V4(&ctx, ipst); in ip_snmp_get_mib2_ip_traffic_stats()
9884 for (; ill != NULL; ill = ill_next(&ctx, ill)) { in ip_snmp_get_mib2_ip_traffic_stats()
9885 ill->ill_ip_mib->ipIfStatsIfIndex = in ip_snmp_get_mib2_ip_traffic_stats()
9886 ill->ill_phyint->phyint_ifindex; in ip_snmp_get_mib2_ip_traffic_stats()
9887 SET_MIB(ill->ill_ip_mib->ipIfStatsForwarding, in ip_snmp_get_mib2_ip_traffic_stats()
9889 SET_MIB(ill->ill_ip_mib->ipIfStatsDefaultTTL, in ip_snmp_get_mib2_ip_traffic_stats()
9892 ip_mib2_add_ip_stats(&global_ip_mib, ill->ill_ip_mib); in ip_snmp_get_mib2_ip_traffic_stats()
9894 (char *)ill->ill_ip_mib, in ip_snmp_get_mib2_ip_traffic_stats()
9895 (int)sizeof (*ill->ill_ip_mib))) { in ip_snmp_get_mib2_ip_traffic_stats()
9898 (uint_t)sizeof (*ill->ill_ip_mib))); in ip_snmp_get_mib2_ip_traffic_stats()
10003 ill_t *ill; in ip_snmp_get_mib2_ip_addr() local
10027 ill = ILL_START_WALK_V4(&ctx, ipst); in ip_snmp_get_mib2_ip_addr()
10028 for (; ill != NULL; ill = ill_next(&ctx, ill)) { in ip_snmp_get_mib2_ip_addr()
10029 for (ipif = ill->ill_ipif; ipif != NULL; in ip_snmp_get_mib2_ip_addr()
10067 ill->ill_flags | ill->ill_phyint->phyint_flags; in ip_snmp_get_mib2_ip_addr()
10069 ill->ill_reachable_retrans_time; in ip_snmp_get_mib2_ip_addr()
10095 ill_t *ill; in ip_snmp_get_mib2_ip6_addr() local
10119 ill = ILL_START_WALK_V6(&ctx, ipst); in ip_snmp_get_mib2_ip6_addr()
10120 for (; ill != NULL; ill = ill_next(&ctx, ill)) { in ip_snmp_get_mib2_ip6_addr()
10121 for (ipif = ill->ill_ipif; ipif != NULL; in ip_snmp_get_mib2_ip6_addr()
10174 ill->ill_flags | ill->ill_phyint->phyint_flags; in ip_snmp_get_mib2_ip6_addr()
10176 mae6.ipv6AddrIdentifier = ill->ill_token; in ip_snmp_get_mib2_ip6_addr()
10177 mae6.ipv6AddrIdentifierLen = ill->ill_token_length; in ip_snmp_get_mib2_ip6_addr()
10178 mae6.ipv6AddrReachableTime = ill->ill_reachable_time; in ip_snmp_get_mib2_ip6_addr()
10180 ill->ill_reachable_retrans_time; in ip_snmp_get_mib2_ip6_addr()
10204 ill_t *ill; in ip_snmp_get_mib2_ip_group_mem() local
10225 ill = ILL_START_WALK_V4(&ctx, ipst); in ip_snmp_get_mib2_ip_group_mem()
10226 for (; ill != NULL; ill = ill_next(&ctx, ill)) { in ip_snmp_get_mib2_ip_group_mem()
10228 if (!ill_check_and_refhold(ill)) in ip_snmp_get_mib2_ip_group_mem()
10231 rw_enter(&ill->ill_mcast_lock, RW_READER); in ip_snmp_get_mib2_ip_group_mem()
10232 for (ilm = ill->ill_ilm; ilm; ilm = ilm->ilm_next) { in ip_snmp_get_mib2_ip_group_mem()
10238 for (ipif = ill->ill_ipif; ipif != NULL; in ip_snmp_get_mib2_ip_group_mem()
10250 ill_get_name(ill, in ip_snmp_get_mib2_ip_group_mem()
10267 rw_exit(&ill->ill_mcast_lock); in ip_snmp_get_mib2_ip_group_mem()
10268 ill_refrele(ill); in ip_snmp_get_mib2_ip_group_mem()
10285 ill_t *ill; in ip_snmp_get_mib2_ip6_group_mem() local
10304 ill = ILL_START_WALK_V6(&ctx, ipst); in ip_snmp_get_mib2_ip6_group_mem()
10305 for (; ill != NULL; ill = ill_next(&ctx, ill)) { in ip_snmp_get_mib2_ip6_group_mem()
10307 if (!ill_check_and_refhold(ill)) in ip_snmp_get_mib2_ip6_group_mem()
10314 rw_enter(&ill->ill_mcast_lock, RW_READER); in ip_snmp_get_mib2_ip6_group_mem()
10315 ipm6.ipv6GroupMemberIfIndex = ill->ill_phyint->phyint_ifindex; in ip_snmp_get_mib2_ip6_group_mem()
10316 for (ilm = ill->ill_ilm; ilm; ilm = ilm->ilm_next) { in ip_snmp_get_mib2_ip6_group_mem()
10331 rw_exit(&ill->ill_mcast_lock); in ip_snmp_get_mib2_ip6_group_mem()
10332 ill_refrele(ill); in ip_snmp_get_mib2_ip6_group_mem()
10350 ill_t *ill; in ip_snmp_get_mib2_ip_group_src() local
10373 ill = ILL_START_WALK_V4(&ctx, ipst); in ip_snmp_get_mib2_ip_group_src()
10374 for (; ill != NULL; ill = ill_next(&ctx, ill)) { in ip_snmp_get_mib2_ip_group_src()
10376 if (!ill_check_and_refhold(ill)) in ip_snmp_get_mib2_ip_group_src()
10379 rw_enter(&ill->ill_mcast_lock, RW_READER); in ip_snmp_get_mib2_ip_group_src()
10380 for (ilm = ill->ill_ilm; ilm; ilm = ilm->ilm_next) { in ip_snmp_get_mib2_ip_group_src()
10389 for (ipif = ill->ill_ipif; ipif != NULL; in ip_snmp_get_mib2_ip_group_src()
10401 ill_get_name(ill, in ip_snmp_get_mib2_ip_group_src()
10422 rw_exit(&ill->ill_mcast_lock); in ip_snmp_get_mib2_ip_group_src()
10423 ill_refrele(ill); in ip_snmp_get_mib2_ip_group_src()
10440 ill_t *ill; in ip_snmp_get_mib2_ip6_group_src() local
10461 ill = ILL_START_WALK_V6(&ctx, ipst); in ip_snmp_get_mib2_ip6_group_src()
10462 for (; ill != NULL; ill = ill_next(&ctx, ill)) { in ip_snmp_get_mib2_ip6_group_src()
10464 if (!ill_check_and_refhold(ill)) in ip_snmp_get_mib2_ip6_group_src()
10471 rw_enter(&ill->ill_mcast_lock, RW_READER); in ip_snmp_get_mib2_ip6_group_src()
10472 ips6.ipv6GroupSourceIfIndex = ill->ill_phyint->phyint_ifindex; in ip_snmp_get_mib2_ip6_group_src()
10473 for (ilm = ill->ill_ilm; ilm; ilm = ilm->ilm_next) { in ip_snmp_get_mib2_ip6_group_src()
10492 rw_exit(&ill->ill_mcast_lock); in ip_snmp_get_mib2_ip6_group_src()
10493 ill_refrele(ill); in ip_snmp_get_mib2_ip6_group_src()
10733 ill_t *ill; in ip_snmp_get_mib2_ip6() local
10809 ill = ILL_START_WALK_V6(&ctx, ipst); in ip_snmp_get_mib2_ip6()
10810 for (; ill != NULL; ill = ill_next(&ctx, ill)) { in ip_snmp_get_mib2_ip6()
10811 ill->ill_ip_mib->ipIfStatsIfIndex = in ip_snmp_get_mib2_ip6()
10812 ill->ill_phyint->phyint_ifindex; in ip_snmp_get_mib2_ip6()
10813 SET_MIB(ill->ill_ip_mib->ipIfStatsForwarding, in ip_snmp_get_mib2_ip6()
10815 SET_MIB(ill->ill_ip_mib->ipIfStatsDefaultHopLimit, in ip_snmp_get_mib2_ip6()
10816 ill->ill_max_hops); in ip_snmp_get_mib2_ip6()
10821 SYNC32_MIB(ill->ill_ip_mib, ipIfStatsInReceives, in ip_snmp_get_mib2_ip6()
10823 SYNC32_MIB(ill->ill_ip_mib, ipIfStatsInDelivers, in ip_snmp_get_mib2_ip6()
10825 SYNC32_MIB(ill->ill_ip_mib, ipIfStatsOutRequests, in ip_snmp_get_mib2_ip6()
10827 SYNC32_MIB(ill->ill_ip_mib, ipIfStatsOutForwDatagrams, in ip_snmp_get_mib2_ip6()
10829 SYNC32_MIB(ill->ill_ip_mib, ipIfStatsOutMcastPkts, in ip_snmp_get_mib2_ip6()
10831 SYNC32_MIB(ill->ill_ip_mib, ipIfStatsInMcastPkts, in ip_snmp_get_mib2_ip6()
10835 (char *)ill->ill_ip_mib, (int)ise_size)) { in ip_snmp_get_mib2_ip6()
10863 ill_t *ill; in ip_snmp_get_mib2_icmp6() local
10889 ill = ILL_START_WALK_V6(&ctx, ipst); in ip_snmp_get_mib2_icmp6()
10890 for (; ill != NULL; ill = ill_next(&ctx, ill)) { in ip_snmp_get_mib2_icmp6()
10891 ill->ill_icmp6_mib->ipv6IfIcmpIfIndex = in ip_snmp_get_mib2_icmp6()
10892 ill->ill_phyint->phyint_ifindex; in ip_snmp_get_mib2_icmp6()
10894 (char *)ill->ill_icmp6_mib, in ip_snmp_get_mib2_icmp6()
10895 (int)sizeof (*ill->ill_icmp6_mib))) { in ip_snmp_get_mib2_icmp6()
10898 (uint_t)sizeof (*ill->ill_icmp6_mib))); in ip_snmp_get_mib2_icmp6()
10917 ill_t *ill; in ip_snmp_get2_v4() local
10950 ill = ire->ire_ill; in ip_snmp_get2_v4()
10952 if (ill != NULL) { in ip_snmp_get2_v4()
10953 ill_get_name(ill, re->ipRouteIfIndex.o_bytes, OCTET_LENGTH); in ip_snmp_get2_v4()
11039 ill_t *ill; in ip_snmp_get2_v6_route() local
11075 ill = ire->ire_ill; in ip_snmp_get2_v6_route()
11076 if (ill != NULL) { in ip_snmp_get2_v6_route()
11077 ill_get_name(ill, re->ipv6RouteIfIndex.o_bytes, OCTET_LENGTH); in ip_snmp_get2_v6_route()
11165 ill_t *ill; in ip_snmp_get2_v6_media() local
11168 ill = ncec->ncec_ill; in ip_snmp_get2_v6_media()
11170 if (ill->ill_isv6 == B_FALSE || ill->ill_net_type == IRE_LOOPBACK) in ip_snmp_get2_v6_media()
11177 ntme.ipv6NetToMediaIfIndex = ill->ill_phyint->phyint_ifindex; in ip_snmp_get2_v6_media()
11179 ntme.ipv6NetToMediaPhysAddress.o_length = ill->ill_phys_addr_length; in ip_snmp_get2_v6_media()
11243 ill_t *ill; in ip_snmp_get2_v4_media() local
11248 ill = ncec->ncec_ill; in ip_snmp_get2_v4_media()
11249 if (ill->ill_isv6 || (ncec->ncec_flags & NCE_F_BCAST) || in ip_snmp_get2_v4_media()
11250 ill->ill_net_type == IRE_LOOPBACK) in ip_snmp_get2_v4_media()
11254 name = ill->ill_name; in ip_snmp_get2_v4_media()
11280 MIN(OCTET_LENGTH, ill->ill_phys_addr_length); in ip_snmp_get2_v4_media()
11635 ill_t *ill = nce->nce_ill; in ip_fragment_v4() local
11636 ip_stack_t *ipst = ill->ill_ipst; in ip_fragment_v4()
11642 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutFragReqds); in ip_fragment_v4()
11653 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutFragFails); in ip_fragment_v4()
11654 ip_drop_output("FragFails: zero max_frag", mp, ill); in ip_fragment_v4()
11673 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutFragFails); in ip_fragment_v4()
11674 ip_drop_output("FragFails: bad starting offset", mp, ill); in ip_fragment_v4()
11692 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutFragFails); in ip_fragment_v4()
11693 ip_drop_output("FragFails: no hdr_mp", mp, ill); in ip_fragment_v4()
11722 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutFragFails); in ip_fragment_v4()
11723 ip_drop_output("FragFails: could not carve mp", mp_orig, ill); in ip_fragment_v4()
11729 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutFragCreates); in ip_fragment_v4()
11735 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutFragFails); in ip_fragment_v4()
11736 ip_drop_output("FragFails: postfragfn failed", mp_orig, ill); in ip_fragment_v4()
11843 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutFragCreates); in ip_fragment_v4()
11849 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutFragOKs); in ip_fragment_v4()
11853 DTRACE_PROBE2(ip__xmit__frag__fail, ill_t *, ill, in ip_fragment_v4()
11863 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutFragFails); in ip_fragment_v4()
11864 ip_drop_output("FragFails: loop ended", NULL, ill); in ip_fragment_v4()
12103 ill_t *ill = nce->nce_ill; in ip_xmit_attach_llhdr() local
12105 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutDiscards); in ip_xmit_attach_llhdr()
12106 ip_drop_output("ipIfStatsOutDiscards", mp, ill); in ip_xmit_attach_llhdr()
12130 ill_t *ill = nce->nce_ill; in ip_xmit_attach_llhdr() local
12132 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutDiscards); in ip_xmit_attach_llhdr()
12133 ip_drop_output("ipIfStatsOutDiscards", mp, ill); in ip_xmit_attach_llhdr()
12365 ill_t *ill = ixa->ixa_nce->nce_ill; in ipsec_out_process() local
12378 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutDiscards); in ipsec_out_process()
12379 ip_drop_packet(mp, B_TRUE, ill, in ipsec_out_process()
12397 ip_drop_packet(mp, B_FALSE, ill, in ipsec_out_process()
12417 (void) mi_strlog(ill->ill_rq, 0, in ipsec_out_process()
12421 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutDiscards); in ipsec_out_process()
12422 ip_drop_output("ipIfStatsOutDiscards", mp, ill); in ipsec_out_process()
12517 ill_t *ill = q->q_ptr; in ip_reprocess_ioctl() local
12518 ipsq_current_start(ipsq, ill->ill_ipif, ipip->ipi_cmd); in ip_reprocess_ioctl()
12974 ip_output_options(mblk_t *mp, ipha_t *ipha, ip_xmit_attr_t *ixa, ill_t *ill) in ip_output_options() argument
13089 iras.ira_ill = iras.ira_rill = ill; in ip_output_options()
13090 iras.ira_ruifindex = ill->ill_phyint->phyint_ifindex; in ip_output_options()
13094 ip_drop_output("ip_output_options", mp, ill); in ip_output_options()
13101 iras.ira_ill = iras.ira_rill = ill; in ip_output_options()
13102 iras.ira_ruifindex = ill->ill_phyint->phyint_ifindex; in ip_output_options()
13106 ip_drop_input("ICMP_SOURCE_ROUTE_FAILED", mp, ill); in ip_output_options()
13351 ill_t *ill; in ip_wsrv() local
13353 ill = (ill_t *)q->q_ptr; in ip_wsrv()
13354 if (ill->ill_state_flags == 0) { in ip_wsrv()
13355 ip_stack_t *ipst = ill->ill_ipst; in ip_wsrv()
13366 enableok(ill->ill_wq); in ip_wsrv()
13385 ill_t *ill = (ill_t *)arg; in ill_flow_enable() local
13386 ip_stack_t *ipst = ill->ill_ipst; in ill_flow_enable()
13423 ill_t *ill = ira->ira_rill; in conn_wantpacket() local
13441 if (in_ifindex != 0 && in_ifindex != ill->ill_phyint->phyint_ifindex) { in conn_wantpacket()
13442 if (!IS_UNDER_IPMP(ill)) in conn_wantpacket()
13445 if (in_ifindex != ipmp_ill_get_ipmp_ifindex(ill)) in conn_wantpacket()
13649 ip_process(ip_proc_t proc, mblk_t *mp, ill_t *rill, ill_t *ill) in ip_process() argument
13694 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in ip_process()
13695 ip_drop_input("ip_process", mp, ill); in ip_process()
13697 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutDiscards); in ip_process()
13698 ip_drop_output("ip_process", mp, ill); in ip_process()
14075 ill_t *ill; in ip_kstat_update() local
14098 ill = ILL_START_WALK_V4(&ctx, ipst); in ip_kstat_update()
14099 for (; ill != NULL; ill = ill_next(&ctx, ill)) in ip_kstat_update()
14100 ip_mib2_add_ip_stats(&ipmib, ill->ill_ip_mib); in ip_kstat_update()
14298 ill_t *ill = ira->ira_ill; in ip_fanout_sctp_raw() local
14299 ip_stack_t *ipst = ill->ill_ipst; in ip_fanout_sctp_raw()
14321 ira->ira_ill = ill; in ip_fanout_sctp_raw()
14328 BUMP_MIB(ill->ill_ip_mib, rawipIfStatsInOverflows); in ip_fanout_sctp_raw()
14339 BUMP_MIB(ill->ill_ip_mib, ipIfStatsInDiscards); in ip_fanout_sctp_raw()
14341 ip_drop_input("ipIfStatsInDiscards", mp, ill); in ip_fanout_sctp_raw()
14352 BUMP_MIB(ill->ill_ip_mib, ipIfStatsHCInDelivers); in ip_fanout_sctp_raw()
14356 ira->ira_ill = ill; in ip_fanout_sctp_raw()
14367 ip_xmit_flowctl_drop(ill_t *ill, mblk_t *mp, boolean_t is_fp_mp, int fp_mp_len) in ip_xmit_flowctl_drop() argument
14372 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutDiscards); in ip_xmit_flowctl_drop()
14394 ip_drop_output("ipIfStatsOutDiscards - flow ctl", mp, ill); in ip_xmit_flowctl_drop()
14422 ill_t *ill = nce->nce_ill; in ip_xmit() local
14423 ip_stack_t *ipst = ill->ill_ipst; in ip_xmit()
14425 boolean_t isv6 = ill->ill_isv6; in ip_xmit()
14457 NULL, ill, ipha, mp, mp, 0, ipst, error); in ip_xmit()
14482 ill, ipst); in ip_xmit()
14485 void_ip_t *, ipha, __dtrace_ipsr_ill_t *, ill, in ip_xmit()
14499 NULL, ill, ip6h, mp, mp, 0, ipst, error); in ip_xmit()
14513 ill, ipst); in ip_xmit()
14516 void_ip_t *, ip6h, __dtrace_ipsr_ill_t *, ill, in ip_xmit()
14545 (ill->ill_capabilities & ILL_CAPAB_DLD_DIRECT)) { in ip_xmit()
14548 idd = &ill->ill_dld_capab->idc_direct; in ip_xmit()
14556 BUMP_MIB(ill->ill_ip_mib, ipIfStatsHCOutTransmits); in ip_xmit()
14557 UPDATE_MIB(ill->ill_ip_mib, ipIfStatsHCOutOctets, in ip_xmit()
14574 wq = ill->ill_wq; in ip_xmit()
14580 ip_xmit_flowctl_drop(ill, mp, fp_mp, in ip_xmit()
14585 BUMP_MIB(ill->ill_ip_mib, ipIfStatsHCOutTransmits); in ip_xmit()
14586 UPDATE_MIB(ill->ill_ip_mib, ipIfStatsHCOutOctets, in ip_xmit()
14632 ill->ill_reachable_time)); in ip_xmit()
14633 if (delta > (uint64_t)ill->ill_reachable_time) { in ip_xmit()
14731 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutDiscards); in ip_xmit()
14733 mp, ill); in ip_xmit()
14739 BUMP_MIB(ill->ill_ip_mib, ipIfStatsOutDiscards); in ip_xmit()
14741 mp, ill); in ip_xmit()
15119 ip_get_zoneid_v6(in6_addr_t *addr, mblk_t *mp, const ill_t *ill, in ip_get_zoneid_v6() argument
15136 ill, lookup_zoneid, NULL, ire_flags, 0, ipst, NULL); in ip_get_zoneid_v6()
15177 const ill_t *ill, ip_stack_t *ipst) in ipobs_hook() argument
15197 if (IS_UNDER_IPMP(ill)) in ipobs_hook()
15198 grifindex = ipmp_ill_get_ipmp_ifindex(ill); in ipobs_hook()
15205 hdr->hpo_ifindex = htonl(ill->ill_phyint->phyint_ifindex); in ipobs_hook()
15212 if (ill->ill_isv6) { in ipobs_hook()
15234 ipif_lookup_testaddr_v4(ill_t *ill, const in_addr_t *v4srcp, ipif_t **ipifp) in ipif_lookup_testaddr_v4() argument
15238 ipif = ipif_lookup_addr_exact(*v4srcp, ill, ill->ill_ipst); in ipif_lookup_testaddr_v4()