Lines Matching defs:ifp

101 static void fddi_input(struct ifnet *ifp, struct mbuf *m);
110 * Assumes that ifp is actually pointer to arpcom structure.
113 fddi_output(struct ifnet *ifp, struct mbuf *m, const struct sockaddr *dst,
125 error = mac_ifnet_check_transmit(ifp, m);
130 if (ifp->if_flags & IFF_MONITOR)
132 if (!((ifp->if_flags & IFF_UP) &&
133 (ifp->if_drv_flags & IFF_DRV_RUNNING)))
135 getmicrotime(&ifp->if_lastchange);
144 error = arpresolve(ifp, rt0, m, dst, edst, &lle);
171 bcopy(ifp->if_broadcastaddr, edst, FDDI_ADDR_LEN);
180 error = nd6_storelladdr(ifp, m, dst, (u_char *)edst, &lle);
196 if (!aarpresolve(ifp, m, (const struct sockaddr_at *)dst, edst))
284 if_printf(ifp, "can't handle af%d\n", dst->sa_family);
319 bcopy(IF_LLADDR(ifp), (caddr_t)fh->fddi_shost,
331 if ((ifp->if_flags & IFF_SIMPLEX) && (loop_copy != -1)) {
335 (void) if_simloop(ifp, n, dst->sa_family,
339 (void) if_simloop(ifp, m, dst->sa_family,
345 error = (ifp->if_transmit)(ifp, m);
347 ifp->if_oerrors++;
352 ifp->if_oerrors++;
362 fddi_input(ifp, m)
363 struct ifnet *ifp;
375 if_printf(ifp, "discard frame w/o packet header\n");
376 ifp->if_ierrors++;
381 if_printf(ifp, "discard frame w/o interface pointer\n");
382 ifp->if_ierrors++;
389 ifp->if_ierrors++;
397 if (!((ifp->if_flags & IFF_UP) &&
398 (ifp->if_drv_flags & IFF_DRV_RUNNING)))
404 BPF_MTAP(ifp, m);
409 if (ifp->if_flags & IFF_MONITOR) {
415 mac_ifnet_create_mbuf(ifp, m);
421 ifp->if_ibytes += m->m_pkthdr.len;
422 getmicrotime(&ifp->if_lastchange);
428 if ((ifp->if_flags & IFF_PROMISC) && ((fh->fddi_dhost[0] & 1) == 0) &&
429 (bcmp(IF_LLADDR(ifp), (caddr_t)fh->fddi_dhost,
437 if (bcmp(ifp->if_broadcastaddr, fh->fddi_dhost,
442 ifp->if_imcasts++;
460 ifp->if_ierrors++;
471 ifp->if_noproto++;
494 ifp->if_noproto++;
510 if (ifp->if_flags & IFF_NOARP)
540 ifp->if_noproto++;
548 ifp->if_noproto++;
551 M_SETFIB(m, ifp->if_fib);
556 ifp->if_iqdrops++;
566 fddi_ifattach(ifp, lla, bpf)
567 struct ifnet *ifp;
574 ifp->if_type = IFT_FDDI;
575 ifp->if_addrlen = FDDI_ADDR_LEN;
576 ifp->if_hdrlen = 21;
578 if_attach(ifp); /* Must be called before additional assignments */
580 ifp->if_mtu = FDDIMTU;
581 ifp->if_output = fddi_output;
582 ifp->if_input = fddi_input;
583 ifp->if_resolvemulti = fddi_resolvemulti;
584 ifp->if_broadcastaddr = fddibroadcastaddr;
585 ifp->if_baudrate = 100000000;
587 ifp->if_flags |= IFF_NOTRAILERS;
589 ifa = ifp->if_addr;
594 sdl->sdl_alen = ifp->if_addrlen;
595 bcopy(lla, LLADDR(sdl), ifp->if_addrlen);
598 bpfattach(ifp, DLT_FDDI, FDDI_HDR_LEN);
604 fddi_ifdetach(ifp, bpf)
605 struct ifnet *ifp;
610 bpfdetach(ifp);
612 if_detach(ifp);
618 fddi_ioctl (ifp, command, data)
619 struct ifnet *ifp;
633 ifp->if_flags |= IFF_UP;
638 ifp->if_init(ifp->if_softc);
639 arp_ifinit(ifp, ifa);
653 IF_LLADDR(ifp);
656 (caddr_t) IF_LLADDR(ifp),
663 ifp->if_init(ifp->if_softc);
668 ifp->if_init(ifp->if_softc);
676 bcopy(IF_LLADDR(ifp),
688 ifp->if_mtu = ifr->ifr_mtu;
700 fddi_resolvemulti(ifp, llsa, sa)
701 struct ifnet *ifp;
737 sdl->sdl_index = ifp->if_index;
756 ifp->if_flags |= IFF_ALLMULTI;
768 sdl->sdl_index = ifp->if_index;