Lines Matching refs:ifp

28 	struct ifnet *ifp;
43 ifp = gDevices[i];
44 if_printf(ifp, "compat_open(0x%" B_PRIx32 ")\n", flags);
46 if (atomic_or(&ifp->open_count, 1)) {
51 ifp->if_init(ifp->if_softc);
54 ifp->if_flags &= ~IFF_UP;
55 ifp->if_ioctl(ifp, SIOCSIFFLAGS, NULL);
60 ifp->if_ioctl(ifp, SIOCSIFMEDIA, (caddr_t)&ifr);
62 ifp->if_flags |= IFF_UP;
63 ifp->if_ioctl(ifp, SIOCSIFFLAGS, NULL);
65 *cookie = ifp;
73 struct ifnet *ifp = cookie;
75 if_printf(ifp, "compat_close()\n");
77 atomic_or(&ifp->flags, DEVICE_CLOSED);
81 release_sem_etc(ifp->receive_sem, 1, B_RELEASE_ALL);
90 struct ifnet *ifp = cookie;
92 if_printf(ifp, "compat_free()\n");
96 atomic_and(&ifp->open_count, 0);
105 struct ifnet *ifp = cookie;
111 //if_printf(ifp, "compat_read(%lld, %p, [%lu])\n", position,
114 if (ifp->flags & DEVICE_CLOSED)
117 if (ifp->flags & DEVICE_NON_BLOCK)
121 status = acquire_sem_etc(ifp->receive_sem, 1, semFlags, 0);
122 if (ifp->flags & DEVICE_CLOSED)
131 IF_DEQUEUE(&ifp->receive_queue, mb);
156 struct ifnet *ifp = cookie;
159 //if_printf(ifp, "compat_write(%lld, %p, [%lu])\n", position,
170 // if we waited, check after if the ifp is still valid
175 return ifp->if_output(ifp, mb, NULL, NULL);
182 struct ifnet *ifp = cookie;
184 //if_printf(ifp, "compat_control(op %lu, %p, [%lu])\n", op,
192 return user_memcpy(arg, IF_LLADDR(ifp), ETHER_ADDR_LEN);
202 ifp->flags |= DEVICE_NON_BLOCK;
204 ifp->flags &= ~DEVICE_NON_BLOCK;
216 ifp->if_flags |= IFF_PROMISC;
218 ifp->if_flags &= ~IFF_PROMISC;
219 return ifp->if_ioctl(ifp, SIOCSIFFLAGS, NULL);
228 frameSize = ifp->if_mtu + ETHER_HDR_LEN;
237 if ((ifp->if_flags & IFF_MULTICAST) == 0)
245 return if_addmulti(ifp, (struct sockaddr *)&address, NULL);
247 return if_delmulti(ifp, (struct sockaddr *)&address);
260 status = ifp->if_ioctl(ifp, SIOCGIFMEDIA, (caddr_t)&mediareq);
279 if (user_memcpy(&ifp->link_state_sem, arg, sizeof(sem_id)) < B_OK) {
280 ifp->link_state_sem = -1;