Lines Matching refs:ifp

94 int		looutput(struct ifnet *ifp, struct mbuf *m,
110 lo_clone_destroy(struct ifnet *ifp) in lo_clone_destroy() argument
115 KASSERT(V_loif != ifp, ("%s: destroying lo0", __func__)); in lo_clone_destroy()
118 bpfdetach(ifp); in lo_clone_destroy()
119 if_detach(ifp); in lo_clone_destroy()
120 if_free(ifp); in lo_clone_destroy()
126 struct ifnet *ifp; in lo_clone_create() local
128 ifp = if_alloc(IFT_LOOP); in lo_clone_create()
129 if (ifp == NULL) in lo_clone_create()
132 if_initname(ifp, loname, unit); in lo_clone_create()
133 ifp->if_mtu = LOMTU; in lo_clone_create()
134 ifp->if_flags = IFF_LOOPBACK | IFF_MULTICAST; in lo_clone_create()
135 ifp->if_ioctl = loioctl; in lo_clone_create()
136 ifp->if_output = looutput; in lo_clone_create()
137 ifp->if_snd.ifq_maxlen = ifqmaxlen; in lo_clone_create()
138 ifp->if_capabilities = ifp->if_capenable = in lo_clone_create()
140 ifp->if_hwassist = LO_CSUM_FEATURES | LO_CSUM_FEATURES6; in lo_clone_create()
141 if_attach(ifp); in lo_clone_create()
142 bpfattach(ifp, DLT_NULL, sizeof(u_int32_t)); in lo_clone_create()
144 V_loif = ifp; in lo_clone_create()
204 looutput(struct ifnet *ifp, struct mbuf *m, const struct sockaddr *dst, in looutput() argument
215 error = mac_ifnet_check_transmit(ifp, m); in looutput()
227 if_inc_counter(ifp, IFCOUNTER_OPACKETS, 1); in looutput()
228 if_inc_counter(ifp, IFCOUNTER_OBYTES, m->m_pkthdr.len); in looutput()
243 if (ifp->if_capenable & IFCAP_RXCSUM) { in looutput()
256 if (ifp->if_capenable & IFCAP_RXCSUM_IPV6) { in looutput()
272 return (if_simloop(ifp, m, af, 0)); in looutput()
286 if_simloop(struct ifnet *ifp, struct mbuf *m, int af, int hlen) in if_simloop() argument
292 m->m_pkthdr.rcvif = ifp; in if_simloop()
295 mac_ifnet_create_mbuf(ifp, m); in if_simloop()
309 if (bpf_peers_present(ifp->if_bpf)) { in if_simloop()
310 bpf_mtap(ifp->if_bpf, m); in if_simloop()
314 if ((m->m_flags & M_MCAST) == 0 || V_loif == ifp) { in if_simloop()
363 if_inc_counter(ifp, IFCOUNTER_IPACKETS, 1); in if_simloop()
364 if_inc_counter(ifp, IFCOUNTER_IBYTES, m->m_pkthdr.len); in if_simloop()
374 loioctl(struct ifnet *ifp, u_long cmd, caddr_t data) in loioctl() argument
381 ifp->if_flags |= IFF_UP; in loioctl()
382 ifp->if_drv_flags |= IFF_DRV_RUNNING; in loioctl()
383 if_link_state_change(ifp, LINK_STATE_UP); in loioctl()
412 ifp->if_mtu = ifr->ifr_mtu; in loioctl()
416 if_link_state_change(ifp, (ifp->if_flags & IFF_UP) ? in loioctl()
421 mask = ifp->if_capenable ^ ifr->ifr_reqcap; in loioctl()
423 ifp->if_capenable ^= IFCAP_RXCSUM; in loioctl()
425 ifp->if_capenable ^= IFCAP_TXCSUM; in loioctl()
428 ifp->if_capenable ^= IFCAP_RXCSUM_IPV6; in loioctl()
436 ifp->if_capenable ^= IFCAP_TXCSUM_IPV6; in loioctl()
442 ifp->if_hwassist = 0; in loioctl()
443 if (ifp->if_capenable & IFCAP_TXCSUM) in loioctl()
444 ifp->if_hwassist = LO_CSUM_FEATURES; in loioctl()
446 if (ifp->if_capenable & IFCAP_TXCSUM_IPV6) in loioctl()
447 ifp->if_hwassist |= LO_CSUM_FEATURES6; in loioctl()