Lines Matching refs:vifi
421 vifi_t vifi; in X_ip_mrouter_set() local
448 error = sooptcopyin(sopt, &vifi, sizeof vifi, sizeof vifi); in X_ip_mrouter_set()
451 error = del_vif(vifi); in X_ip_mrouter_set()
602 vifi_t vifi = req->vifi; in get_vif_cnt() local
605 if (vifi >= V_numvifs) { in get_vif_cnt()
610 mtx_lock_spin(&V_viftable[vifi].v_spin); in get_vif_cnt()
611 req->icount = V_viftable[vifi].v_pkt_in; in get_vif_cnt()
612 req->ocount = V_viftable[vifi].v_pkt_out; in get_vif_cnt()
613 req->ibytes = V_viftable[vifi].v_bytes_in; in get_vif_cnt()
614 req->obytes = V_viftable[vifi].v_bytes_out; in get_vif_cnt()
615 mtx_unlock_spin(&V_viftable[vifi].v_spin); in get_vif_cnt()
624 vifi_t vifi; in if_detached_event() local
644 for (vifi = 0; vifi < V_numvifs; vifi++) { in if_detached_event()
645 if (V_viftable[vifi].v_ifp != ifp) in if_detached_event()
651 if (rt->mfc_parent == vifi) { in if_detached_event()
656 del_vif_locked(vifi, &multi_leave, &free_ptr); in if_detached_event()
767 vifi_t vifi; in X_ip_mrouter_done() local
816 for (vifi = 0, nifp = 0; vifi < V_numvifs; vifi++) { in X_ip_mrouter_done()
817 if (!in_nullhost(V_viftable[vifi].v_lcl_addr) && in X_ip_mrouter_done()
818 !(V_viftable[vifi].v_flags & (VIFF_TUNNEL | VIFF_REGISTER))) { in X_ip_mrouter_done()
819 ifps[nifp++] = V_viftable[vifi].v_ifp; in X_ip_mrouter_done()
856 for (vifi = 0; vifi < nifp; vifi++) in X_ip_mrouter_done()
857 if_allmulti(ifps[vifi], 0); in X_ip_mrouter_done()
1028 del_vif_locked(vifi_t vifi, struct ifnet **ifp_multi_leave, struct ifnet **ifp_free) in del_vif_locked() argument
1037 if (vifi >= V_numvifs) { in del_vif_locked()
1040 vifp = &V_viftable[vifi]; in del_vif_locked()
1061 CTR2(KTR_IPMF, "%s: delete vif %d", __func__, (int)vifi); in del_vif_locked()
1064 for (vifi = V_numvifs; vifi > 0; vifi--) in del_vif_locked()
1065 if (!in_nullhost(V_viftable[vifi-1].v_lcl_addr)) in del_vif_locked()
1067 V_numvifs = vifi; in del_vif_locked()
1073 del_vif(vifi_t vifi) in del_vif() argument
1079 cc = del_vif_locked(vifi, &multi_leave, &free_ptr); in del_vif()
1326 vifi_t vifi; in X_ip_mforward() local
1355 if (imo && ((vifi = imo->imo_multicast_vif) < V_numvifs)) { in X_ip_mforward()
1358 error = ip_mdq(m, ifp, NULL, vifi); in X_ip_mforward()
1449 for (vifi = 0; vifi < V_numvifs && in X_ip_mforward()
1450 V_viftable[vifi].v_ifp != ifp; vifi++) in X_ip_mforward()
1452 if (vifi >= V_numvifs) /* vif not found, drop packet */ in X_ip_mforward()
1473 im->im_vif = vifi; in X_ip_mforward()
1582 vifi_t vifi; in ip_mdq() local
1605 vifi = rt->mfc_parent; in ip_mdq()
1606 if ((vifi >= V_numvifs) || (V_viftable[vifi].v_ifp != ifp)) { in ip_mdq()
1608 __func__, ifp, (int)vifi, V_viftable[vifi].v_ifp); in ip_mdq()
1619 if (V_pim_assert_enabled && (vifi < V_numvifs) && in ip_mdq()
1620 V_viftable[vifi].v_ifp) { in ip_mdq()
1625 for (vifi = 0; vifi < V_numvifs && V_viftable[vifi].v_ifp != ifp; vifi++) in ip_mdq()
1627 if (vifi >= V_numvifs) in ip_mdq()
1630 if (rt->mfc_flags[vifi] & MRT_MFC_FLAGS_DISABLE_WRONGVIF) in ip_mdq()
1647 im->im_vif = vifi; in ip_mdq()
1663 mtx_lock_spin(&V_viftable[vifi].v_spin); in ip_mdq()
1664 if (in_hosteq(ip->ip_src, V_viftable[vifi].v_lcl_addr)) { in ip_mdq()
1665 V_viftable[vifi].v_pkt_out++; in ip_mdq()
1666 V_viftable[vifi].v_bytes_out += plen; in ip_mdq()
1668 V_viftable[vifi].v_pkt_in++; in ip_mdq()
1669 V_viftable[vifi].v_bytes_in += plen; in ip_mdq()
1671 mtx_unlock_spin(&V_viftable[vifi].v_spin); in ip_mdq()
1682 for (vifi = 0; vifi < V_numvifs; vifi++) in ip_mdq()
1683 if ((rt->mfc_ttls[vifi] > 0) && (ip->ip_ttl > rt->mfc_ttls[vifi])) { in ip_mdq()
1684 V_viftable[vifi].v_pkt_out++; in ip_mdq()
1685 V_viftable[vifi].v_bytes_out += plen; in ip_mdq()
1686 if (V_viftable[vifi].v_flags & VIFF_REGISTER) in ip_mdq()
1687 pim_register_send(ip, V_viftable + vifi, m, rt); in ip_mdq()
1689 phyint_send(ip, V_viftable + vifi, m); in ip_mdq()
1746 X_ip_mcast_src(int vifi) in X_ip_mcast_src() argument
1751 if (vifi < 0) in X_ip_mcast_src()
1755 if (vifi < V_numvifs) in X_ip_mcast_src()
1756 addr = V_viftable[vifi].v_lcl_addr.s_addr; in X_ip_mcast_src()
2430 vifi_t vifi = rt->mfc_parent; in pim_register_send_rp() local
2434 if ((vifi >= V_numvifs) || in_nullhost(V_viftable[vifi].v_lcl_addr)) { in pim_register_send_rp()
2460 ip_outer->ip_src = V_viftable[vifi].v_lcl_addr; in pim_register_send_rp()
2474 if (rt->mfc_flags[vifi] & MRT_MFC_FLAGS_BORDER_VIF & V_mrt_api_config) in pim_register_send_rp()