Lines Matching refs:iptap

123 SYSCTL_NODE(_net_link, OID_AUTO, iptap, CTLFLAG_RW | CTLFLAG_LOCKED, 0,
175 struct iptap_softc *iptap = NULL; in iptap_clone_create() local
178 iptap = if_clone_softc_allocate(&iptap_cloner); in iptap_clone_create()
179 iptap->iptap_unit = unit; in iptap_clone_create()
197 if_init.softc = iptap; in iptap_clone_create()
201 error = ifnet_allocate_extended(&if_init, &iptap->iptap_ifp); in iptap_clone_create()
207 ifnet_set_flags(iptap->iptap_ifp, IFF_UP, IFF_UP); in iptap_clone_create()
209 error = ifnet_attach(iptap->iptap_ifp, NULL); in iptap_clone_create()
212 ifnet_release(iptap->iptap_ifp); in iptap_clone_create()
220 bpf_attach(iptap->iptap_ifp, DLT_PKTAP, sizeof(struct pktap_header), NULL, in iptap_clone_create()
222 bpf_attach(iptap->iptap_ifp, DLT_RAW, 0, NULL, in iptap_clone_create()
226 ifnet_reference(iptap->iptap_ifp); in iptap_clone_create()
233 LIST_INSERT_HEAD(&iptap_list, iptap, iptap_link); in iptap_clone_create()
237 if (iptap != NULL) { in iptap_clone_create()
238 if_clone_softc_deallocate(&iptap_cloner, iptap); in iptap_clone_create()
263 struct iptap_softc *iptap; in iptap_tap_callback() local
265 iptap = ifp->if_softc; in iptap_tap_callback()
266 if (iptap == NULL) { in iptap_tap_callback()
274 if (iptap->iptap_dlt_raw_count > 0) { in iptap_tap_callback()
275 iptap->iptap_dlt_raw_count--; in iptap_tap_callback()
279 iptap->iptap_dlt_raw_count++; in iptap_tap_callback()
285 if (iptap->iptap_dlt_pkttap_count > 0) { in iptap_tap_callback()
286 iptap->iptap_dlt_pkttap_count--; in iptap_tap_callback()
290 iptap->iptap_dlt_pkttap_count++; in iptap_tap_callback()
351 struct iptap_softc *iptap; in iptap_getdrvspec() local
353 iptap = ifp->if_softc; in iptap_getdrvspec()
354 if (iptap == NULL) { in iptap_getdrvspec()
362 uint32_t tap_count = iptap->iptap_dlt_raw_count + iptap->iptap_dlt_pkttap_count; in iptap_getdrvspec()
430 struct iptap_softc *iptap = NULL; in iptap_detach() local
434 iptap = ifp->if_softc; in iptap_detach()
436 LIST_REMOVE(iptap, iptap_link); in iptap_detach()
446 if_clone_softc_deallocate(&iptap_cloner, iptap); in iptap_detach()
568 struct iptap_softc *iptap; in iptap_bpf_tap() local
591 LIST_FOREACH(iptap, &iptap_list, iptap_link) { in iptap_bpf_tap()
592 if (iptap->iptap_dlt_raw_count > 0) { in iptap_bpf_tap()
593 bpf_tap_func(iptap->iptap_ifp, DLT_RAW, m, in iptap_bpf_tap()
596 if (iptap->iptap_dlt_pkttap_count > 0) { in iptap_bpf_tap()
628 bpf_tap_func(iptap->iptap_ifp, DLT_PKTAP, m, hdr, hdr_size); in iptap_bpf_tap()